# HG changeset patch # User Torsten Irländer # Date 1366297341 -7200 # Node ID de959fc71eda77b703b46e806a223fd391b5589c # Parent 246998056e9bb03686bf67ea825a2b81c34f6298 Added class to handle getting values from the database for the LProben model. diff -r 246998056e9b -r de959fc71eda src/main/java/de/intevation/data/LProbeRepository.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/de/intevation/data/LProbeRepository.java Thu Apr 18 17:02:21 2013 +0200 @@ -0,0 +1,61 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2012, Red Hat, Inc. and/or its affiliates, and individual + * contributors by the @authors tag. See the copyright.txt in the + * distribution for a full listing of individual contributors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package de.intevation.data; + +import javax.enterprise.context.ApplicationScoped; +import javax.inject.Inject; +import javax.persistence.EntityManager; +import javax.persistence.criteria.CriteriaBuilder; +import javax.persistence.criteria.CriteriaQuery; +import javax.persistence.criteria.Root; +import java.util.List; + +import de.intevation.model.LProbe; + +@ApplicationScoped +public class LProbeRepository { + + @Inject + private EntityManager em; + + public LProbe findById(Long id) { + return em.find(LProbe.class, id); + } + + //public LProbe findByEmail(String email) { + // CriteriaBuilder cb = em.getCriteriaBuilder(); + // CriteriaQuery criteria = cb.createQuery(LProbe.class); + // Root member = criteria.from(LProbe.class); + // // Swap criteria statements if you would like to try out type-safe criteria queries, a new + // // feature in JPA 2.0 + // // criteria.select(member).where(cb.equal(member.get(LProbe_.name), email)); + // criteria.select(member).where(cb.equal(member.get("email"), email)); + // return em.createQuery(criteria).getSingleResult(); + //} + + public List findAll() { + CriteriaBuilder cb = em.getCriteriaBuilder(); + CriteriaQuery criteria = cb.createQuery(LProbe.class); + Root member = criteria.from(LProbe.class); + // Swap criteria statements if you would like to try out type-safe criteria queries, a new + // feature in JPA 2.0 + // criteria.select(member).orderBy(cb.asc(member.get(LProbe_.name))); + //criteria.select(member).orderBy(cb.asc(member.get("name"))); + criteria.select(member); + return em.createQuery(criteria).getResultList(); + } +}