View Javadoc

1   /**
2    * Copyright 2010 The Kuali Foundation Licensed under the
3    * Educational Community License, Version 2.0 (the "License"); you may
4    * not use this file except in compliance with the License. You may
5    * obtain a copy of the License at
6    *
7    * http://www.osedu.org/licenses/ECL-2.0
8    *
9    * Unless required by applicable law or agreed to in writing,
10   * software distributed under the License is distributed on an "AS IS"
11   * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12   * or implied. See the License for the specific language governing
13   * permissions and limitations under the License.
14   */
15  
16  package org.kuali.student.lum.lu.dao;
17  
18  import java.util.Date;
19  import java.util.List;
20  
21  import org.kuali.student.common.dao.CrudDao;
22  import org.kuali.student.common.dao.SearchableDao;
23  import org.kuali.student.common.versionmanagement.dto.VersionDisplayInfo;
24  import org.kuali.student.lum.lu.entity.Clu;
25  import org.kuali.student.lum.lu.entity.CluCluRelation;
26  import org.kuali.student.lum.lu.entity.CluLoRelation;
27  import org.kuali.student.lum.lu.entity.CluPublication;
28  import org.kuali.student.lum.lu.entity.CluResult;
29  import org.kuali.student.lum.lu.entity.CluResultType;
30  import org.kuali.student.lum.lu.entity.CluSet;
31  import org.kuali.student.lum.lu.entity.Lui;
32  import org.kuali.student.lum.lu.entity.LuiLuiRelation;
33  
34  public interface LuDao extends CrudDao, SearchableDao  {
35  	public List<Clu> getClusByIdList(List<String> cluIdList);
36  	public List<Clu> getClusByLuType(String luTypeKey, String luState);
37  	public List<Lui> getLuisByIdList(List<String> luiIds);
38  	public List<Lui> getLuisByRelationType(String luiId, String luLuRelationTypeId);
39  	public List<String> getLuiIdsByCluId(String cluId);
40  	public List<String> getLuiIdsInAtpByCluId(String cluId, String atpKey);
41      public List<CluSet> getCluSetInfoByIdList(List<String> cluSetIdList);
42      public Boolean isCluInCluSet(String cluId, String cluSetId);
43  	public List<LuiLuiRelation> getLuiLuiRelations(String luiId);
44  	public List<CluCluRelation> getCluCluRelationsByClu(String cluId);
45  	public List<Clu> getClusByRelation(String relatedCluId, String luLuRelationTypeKey);
46      public List<String> getCluIdsByLoId(String loId);
47  	public List<String> getRelatedCluIdsByCluId(String cluId,
48  			String luLuRelationTypeId);
49  	public List<String> getCluIdsByRelatedCluId(String cluId,
50  			String luLuRelationTypeId);
51  	public List<Clu> getRelatedClusByCluId(String cluId,
52  			String luLuRelationTypeId);
53  	public List<Lui> getRelatedLuisByLuiId(String luiId, String id);
54  	public List<String> getRelatedLuiIdsByLuiId(String luiId, String id);
55  	public List<String> getLuiIdsByRelationType(String relatedLuiId, String luLuRelationTypeId);
56  	public List<CluLoRelation> getCluLoRelationsByClu(String cluId);    
57  	public List<CluLoRelation> getCluLoRelationsByCludIdAndLoId(String cluId,
58  			String loId);
59  	public List<CluLoRelation> getCluLoRelationsByLo(String loId);
60  	public List<String> getAllowedCluLoRelationTypesForLuType(String luTypeId);
61  	public List<CluResultType> getAllowedCluResultTypesForLuType(String luTypeId);
62  	public List<String> getCluIdsByResultUsageType(String resultUsageTypeKey);
63  	public List<String> getCluIdsByResultComponentId(String resultComponentId);
64  	public List<String> getAllowedResultUsageTypesForLuType(String luTypeId);
65  	public List<String> getAllowedResultComponentTypesForResultUsageType(
66  			String resultUsageType);
67  	public List<String> getAllowedLuLuRelationTypesForLuType(
68  			String luTypeId, String relatedLuTypeId);
69  	public List<String> getAllowedLuLuRelationTypesByLuiId(String luiId,
70  			String relatedLuiId);
71  	public List<String> getAllowedLuLuRelationTypesByCluId(String cluId,
72  			String relatedCluId);
73  	public List<CluResult> getCluResultByClu(String cluId);
74  	
75  	public Clu getLatestCluVersion(String cluVersionIndId);
76  	public Clu getCurrentCluVersion(String cluVersionIndId);
77  	public VersionDisplayInfo getCurrentCluVersionInfo(String cluVersionIndId, String objectTypeURI);
78  	public List<VersionDisplayInfo> getVersionsInDateRange(String refObjectId,
79  			String refObjectTypeURI, Date from, Date to);
80  	public List<VersionDisplayInfo> getVersions(String refObjectId,
81  			String refObjectTypeURI);
82  	public VersionDisplayInfo getVersionBySequenceNumber(String refObjectId,
83  			String refObjectTypeURI, Long sequence);
84  	public VersionDisplayInfo getFirstVersion(String refObjectId,
85  			String refObjectTypeURI);
86  	public VersionDisplayInfo getLatestVersion(String refObjectId,
87  			String refObjectTypeURI);
88  	public VersionDisplayInfo getCurrentVersionOnDate(String refObjectId,
89  			String refObjectTypeURI, Date date);
90  	public List<CluPublication> getCluPublicationsByType(
91  			String luPublicationTypeKey);
92  	public List<CluPublication> getCluPublicationsByCluId(String cluId);
93  
94  }