View Javadoc

1   /**
2    * Copyright 2012 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   * Created by Charles on 4/25/12
16   */
17  
18  package org.kuali.student.enrollment.class2.courseoffering.dao;
19  
20  import org.kuali.student.enrollment.class2.courseoffering.model.ActivityOfferingClusterEntity;
21  import org.kuali.student.r2.common.dao.GenericEntityDao;
22  
23  import java.util.List;
24  
25  /**
26   * This class provides data accessor methods for ActivityOfferingCluster entities
27   *
28   * @author Kuali Student Team
29   */
30  public class ActivityOfferingClusterDao
31          extends GenericEntityDao<ActivityOfferingClusterEntity>
32          implements ActivityOfferingClusterDaoApi {
33  
34      @Override
35      public List<ActivityOfferingClusterEntity> getByFormatOffering(String formatOfferingId) {
36          return em.createQuery("from ActivityOfferingClusterEntity a where a.formatOfferingId=:formatOfferingId").setParameter("formatOfferingId", formatOfferingId)
37                  .getResultList();
38      }
39  
40      @Override
41      public List<String> getActivityOfferingIdsByClusterId(String activityOfferingClusterId) {
42          return em.createQuery("SELECT ids from ActivityOfferingClusterEntity a, IN(a.aoSets) aosets, IN(aosets.aoIds) ids where a.id=:activityOfferingClusterId").setParameter("activityOfferingClusterId", activityOfferingClusterId)
43                  .getResultList();
44      }
45  
46      /**
47       * Returns all ActivityOfferingClusterEntities that map back to a single course offering
48       *
49       * @param courseOfferingId
50       * @return
51       */
52      @Override
53      public List<ActivityOfferingClusterEntity> getByCourseOffering(String courseOfferingId) {
54          return (List<ActivityOfferingClusterEntity>) em.createNamedQuery("ActivityOfferingClusterENR.getAOCsByCourseOfferingId").setParameter("coId", courseOfferingId).getResultList();
55      }
56  
57      /**
58       * Returns all ActivityOfferingClusterEntities that map back to a single course offering
59       *
60       * @param activityOfferingId
61       * @return
62       */
63      @Override
64      public ActivityOfferingClusterEntity getByActivityOffering(String activityOfferingId) {
65          return ( ActivityOfferingClusterEntity) em.createNamedQuery("ActivityOfferingClusterENR.getAOCsByActivityOfferingId").setParameter("aoId", activityOfferingId).getSingleResult();
66      }
67  }