ViewRiksdagenCommitteeDAOImpl.java

  1. /*
  2.  * Copyright 2010 James Pether Sörling
  3.  *
  4.  * Licensed under the Apache License, Version 2.0 (the "License");
  5.  * you may not use this file except in compliance with the License.
  6.  * You may obtain a copy of the License at
  7.  *
  8.  *   http://www.apache.org/licenses/LICENSE-2.0
  9.  *
  10.  * Unless required by applicable law or agreed to in writing, software
  11.  * distributed under the License is distributed on an "AS IS" BASIS,
  12.  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13.  * See the License for the specific language governing permissions and
  14.  * limitations under the License.
  15.  *
  16.  *  $Id$
  17.  *  $HeadURL$
  18. */
  19. package com.hack23.cia.service.data.impl;

  20. import java.util.List;

  21. import javax.persistence.criteria.CriteriaQuery;
  22. import javax.persistence.criteria.Root;

  23. import org.springframework.stereotype.Repository;

  24. import com.hack23.cia.model.internal.application.data.committee.impl.RiksdagenCommitteeEmbeddedId;
  25. import com.hack23.cia.model.internal.application.data.committee.impl.ViewRiksdagenCommittee;
  26. import com.hack23.cia.model.internal.application.data.committee.impl.ViewRiksdagenCommittee_;
  27. import com.hack23.cia.service.data.api.ViewRiksdagenCommitteeDAO;

  28. /**
  29.  * The Class ViewRiksdagenCommitteeDAOImpl.
  30.  */
  31. @Repository("ViewRiksdagenCommitteeDAO")
  32. final class ViewRiksdagenCommitteeDAOImpl
  33.         extends
  34.         AbstractGenericDAOImpl<ViewRiksdagenCommittee, RiksdagenCommitteeEmbeddedId>
  35.         implements ViewRiksdagenCommitteeDAO {

  36.     /**
  37.      * Instantiates a new view riksdagen committee dao impl.
  38.      */
  39.     public ViewRiksdagenCommitteeDAOImpl() {
  40.         super(ViewRiksdagenCommittee.class);
  41.     }

  42.     @Override
  43.     public List<RiksdagenCommitteeEmbeddedId> getIdList() {
  44.         final CriteriaQuery<RiksdagenCommitteeEmbeddedId> criteria = getCriteriaBuilder()
  45.                 .createQuery(RiksdagenCommitteeEmbeddedId.class);
  46.         final Root<ViewRiksdagenCommittee> root = criteria
  47.                 .from(ViewRiksdagenCommittee.class);
  48.         criteria.select(getCriteriaBuilder().construct(
  49.                 RiksdagenCommitteeEmbeddedId.class,
  50.                 root.get(ViewRiksdagenCommittee_.embeddedId)));
  51.         return getEntityManager().createQuery(criteria).getResultList();
  52.     }

  53. }