[Suiviobsmer-commits] r162 - in trunk/suiviobsmer-business/src/main: java/fr/ifremer/suiviobsmer java/fr/ifremer/suiviobsmer/entity java/fr/ifremer/suiviobsmer/impl xmi
Author: fdesbois Date: 2010-01-04 11:24:57 +0000 (Mon, 04 Jan 2010) New Revision: 162 Added: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ContactDAOImpl.java Removed: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/QueryBuilder.java Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatImpl.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatInfosImpl.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ProgramImpl.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ActivityCalendarImport.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceBoatImpl.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceContactImpl.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java trunk/suiviobsmer-business/src/main/xmi/suiviobsmer.zargo Log: - Improve TopiaQuery usage from Topia - Move queries from QueryBuilder to ContactDAOImpl Deleted: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/QueryBuilder.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/QueryBuilder.java 2009-12-29 12:17:31 UTC (rev 161) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/QueryBuilder.java 2010-01-04 11:24:57 UTC (rev 162) @@ -1,105 +0,0 @@ -/* - * *##% - * SuiviObsmer :: Business - * Copyright (C) 2009 Ifremer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Lesser Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program. If not, see - * <http://www.gnu.org/licenses/gpl-3.0.html>. - * ##%* - */ - -package fr.ifremer.suiviobsmer; - -import org.nuiton.topia.TopiaException; -import org.nuiton.topia.framework.TopiaQuery.Op; -import fr.ifremer.suiviobsmer.bean.ContactState; -import fr.ifremer.suiviobsmer.entity.Boat; -import fr.ifremer.suiviobsmer.entity.BoatImpl; -import fr.ifremer.suiviobsmer.entity.Company; -import fr.ifremer.suiviobsmer.entity.Contact; -import java.util.Date; -import org.hibernate.SQLQuery; -import org.nuiton.topia.TopiaContext; -import org.nuiton.topia.framework.TopiaContextImplementor; -import org.nuiton.topia.framework.TopiaQuery; - -/** - * QueryBuilder - * - * Created: 21 déc. 2009 - * - * @author fdesbois - * @version $Revision$ - * - * Mise a jour: $Date$ - * par : $Author$ - */ -public class QueryBuilder { - - /** - * Create the query for the last contact of the boat and company. - * - * @param boat the boat concerned by the contact - * @param company the company concerned by the user who create the contact - * @return the TopiaQuery created - */ - public static TopiaQuery createQueryLastContactForBoat(Boat boat, Company company) { - String contactClassName = Contact.class.getName(); - TopiaQuery query = new TopiaQuery(contactClassName + " C1"). - add("C1.boat", boat). - add("C1.user.company = :company"). - addParam("company", company); - - TopiaQuery subquery = new TopiaQuery(contactClassName + " C2"). - addSelect("MAX(C2.topiaCreateDate)"). - add("C2.boat = C1.boat"). - add("C2.user.company = :company"); - - query.add("C1.topiaCreateDate = (" + subquery.fullQuery() + ")"); - return query; - } - - /** - * Create the query for contacts linked with a boat with BoardingDone state since the fromDate. - * This query is used to get all boarding dones with the boat for all companies. - * Only the validate contacts by company will be count. The param fromDate can be null, - * in this case, all contacts will be given (no matter which date then started). - * - * @param boat the boat concerned by the contact - * @param fromDate the date to start - * @return the TopiaQuery created - */ - public static TopiaQuery createQueryDoneContactsFromDate(Boat boat, Date fromDate) { - TopiaQuery query = new TopiaQuery(Contact.class). - add("boat", boat). - add("state", ContactState.BOARDING_DONE.toString()). - add("validationCompany", Boolean.TRUE). - add("validationProgram IS NULL OR validationProgram = :booleanTrue"). - addParam("booleanTrue", Boolean.TRUE); - - if (fromDate != null) { - query.add("tideBeginDate", Op.GE, fromDate); - } - return query; - } - -// public static Boat getBoatByImmatriculation(TopiaContext transaction, int immatriculation) throws TopiaException { -// TopiaContextImplementor topia = (TopiaContextImplementor)transaction; -// SQLQuery query = topia.getHibernate().createSQLQuery( -// "SELECT * FROM boat WHERE immatriculation = " + immatriculation); -// -// return (Boat)query.addEntity(BoatImpl.class).uniqueResult(); -// } - -} Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatImpl.java 2009-12-29 12:17:31 UTC (rev 161) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatImpl.java 2010-01-04 11:24:57 UTC (rev 162) @@ -21,10 +21,9 @@ package fr.ifremer.suiviobsmer.entity; -import fr.ifremer.suiviobsmer.QueryBuilder; import fr.ifremer.suiviobsmer.SuiviObsmerException; import fr.ifremer.suiviobsmer.SuiviObsmerContext; -import org.nuiton.topia.framework.TopiaQuery; +import fr.ifremer.suiviobsmer.SuiviObsmerModelDAOHelper; import fr.ifremer.suiviobsmer.bean.ContactState; import java.io.Serializable; import org.nuiton.topia.TopiaContext; @@ -63,8 +62,8 @@ try { transaction = SuiviObsmerContext.getTopiaRootContext().beginTransaction(); - TopiaQuery query = QueryBuilder.createQueryLastContactForBoat(this, company); - Contact contact = query.executeToEntity(transaction, Contact.class); + ContactDAO dao = SuiviObsmerModelDAOHelper.getContactDAO(transaction); + Contact contact = dao.createQueryLastContactForBoat(this, company).executeToEntity(); if (contact != null) { //boolean validation = contact.getValidationProgram() != null || BooleanUtils.isFalse(contact.getValidationCompany()); ContactState state = ContactState.createContactStateEnum(contact.getState()); Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatInfosImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatInfosImpl.java 2009-12-29 12:17:31 UTC (rev 161) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatInfosImpl.java 2010-01-04 11:24:57 UTC (rev 162) @@ -21,9 +21,9 @@ package fr.ifremer.suiviobsmer.entity; -import fr.ifremer.suiviobsmer.QueryBuilder; import fr.ifremer.suiviobsmer.SuiviObsmerContext; import fr.ifremer.suiviobsmer.SuiviObsmerException; +import fr.ifremer.suiviobsmer.SuiviObsmerModelDAOHelper; import org.nuiton.topia.framework.TopiaQuery; import java.io.Serializable; import org.nuiton.topia.TopiaContext; @@ -66,7 +66,9 @@ try { transaction = SuiviObsmerContext.getTopiaRootContext().beginTransaction(); - TopiaQuery query = QueryBuilder.createQueryDoneContactsFromDate(getBoat(), fromDate); + ContactDAO dao = SuiviObsmerModelDAOHelper.getContactDAO(transaction); + + TopiaQuery<Contact> query = dao.createQueryDoneContactsFromDate(getBoat(), fromDate); result = query.executeCount(transaction); transaction.closeContext(); @@ -94,12 +96,13 @@ try { transaction = SuiviObsmerContext.getTopiaRootContext().beginTransaction(); - TopiaQuery query = QueryBuilder. - createQueryDoneContactsFromDate(getBoat(), fromDate). - add("user.company", getCompany()); + ContactDAO dao = SuiviObsmerModelDAOHelper.getContactDAO(transaction); - result = query.executeCount(transaction); + TopiaQuery<Contact> query = dao.createQueryDoneContactsFromDate(getBoat(), fromDate); + query.add("user.company", getCompany()); + result = query.executeCount(); + transaction.closeContext(); } catch (Exception eee) { SuiviObsmerContext.serviceException(transaction, Added: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ContactDAOImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ContactDAOImpl.java (rev 0) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ContactDAOImpl.java 2010-01-04 11:24:57 UTC (rev 162) @@ -0,0 +1,71 @@ +package fr.ifremer.suiviobsmer.entity; + +import fr.ifremer.suiviobsmer.bean.ContactState; +import java.util.Date; +import org.nuiton.topia.framework.TopiaQuery; +import org.nuiton.topia.framework.TopiaQuery.Op; + + +/** + * ContactDAOImpl + * + * Created: 21 déc. 2009 + * + * @param <E> + * @author fdesbois + * @version $Revision$ + * + * Mise a jour: $Date$ + * par : $Author$ + */ +public class ContactDAOImpl<E extends Contact> extends ContactDAOAbstract<E> { + + /** + * Create the query for the last contact of the boat and company. + * + * @param boat the boat concerned by the contact + * @param company the company concerned by the user who create the contact + * @return the TopiaQuery created + */ + @Override + public TopiaQuery<E> createQueryLastContactForBoat(Boat boat, Company company) { + TopiaQuery<E> query = createQuery("C1"). + add("C1.boat", boat). + add("C1.user.company = :company"). + addParam("company", company); + + TopiaQuery<E> subquery = createQuery("C2"). + addSelect("MAX(C2.topiaCreateDate)"). + add("C2.boat = C1.boat"). + add("C2.user.company = :company"); + + query.add("C1.topiaCreateDate = (" + subquery.fullQuery() + ")"); + return query; + } + + /** + * Create the query for contacts linked with a boat with BoardingDone state since the fromDate. + * This query is used to get all boarding dones with the boat for all companies. + * Only the validate contacts by company will be count. The param fromDate can be null, + * in this case, all contacts will be given (no matter which date then started). + * + * @param boat the boat concerned by the contact + * @param fromDate the date to start + * @return the TopiaQuery created + */ + @Override + public TopiaQuery<E> createQueryDoneContactsFromDate(Boat boat, Date fromDate) { + TopiaQuery<E> query = createQuery(). + add("boat", boat). + add("state", ContactState.BOARDING_DONE.toString()). + add("validationCompany", Boolean.TRUE). + add("validationProgram IS NULL OR validationProgram = :booleanTrue"). + addParam("booleanTrue", Boolean.TRUE); + + if (fromDate != null) { + query.add("tideBeginDate", Op.GE, fromDate); + } + return query; + } + +} //ContactDAOImpl<E extends Contact> Property changes on: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ContactDAOImpl.java ___________________________________________________________________ Added: svn:keywords + "Author Date Id Revision HeadURL" Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ProgramImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ProgramImpl.java 2009-12-29 12:17:31 UTC (rev 161) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ProgramImpl.java 2010-01-04 11:24:57 UTC (rev 162) @@ -23,10 +23,10 @@ import fr.ifremer.suiviobsmer.SuiviObsmerContext; import fr.ifremer.suiviobsmer.SuiviObsmerException; +import fr.ifremer.suiviobsmer.SuiviObsmerModelDAOHelper; import org.nuiton.topia.framework.TopiaQuery; import org.nuiton.topia.framework.TopiaQuery.Op; import java.io.Serializable; -import java.text.NumberFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; @@ -124,12 +124,12 @@ Calendar begin = getCalendarBegin(); int year = begin.get(Calendar.YEAR); - - TopiaQuery query = new TopiaQuery(SampleRow.class). - add(SampleRow.CODE, Op.LIKE, year + "_%"); - String maxCode = query.executeToString(transaction, "MAX(" + SampleRow.CODE + ")"); + SampleRowDAO dao = SuiviObsmerModelDAOHelper.getSampleRowDAO(transaction); + TopiaQuery<SampleRow> query = dao.createQuery().add(SampleRow.CODE, Op.LIKE, year + "_%"); + String maxCode = query.executeToString("MAX(" + SampleRow.CODE + ")"); + if (log.isDebugEnabled()) { log.debug("Max code found : " + maxCode); } Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ActivityCalendarImport.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ActivityCalendarImport.java 2009-12-29 12:17:31 UTC (rev 161) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ActivityCalendarImport.java 2010-01-04 11:24:57 UTC (rev 162) @@ -25,7 +25,6 @@ import com.csvreader.CsvReader; import fr.ifremer.suiviobsmer.entity.ActivityCalendar; import fr.ifremer.suiviobsmer.entity.ActivityCalendarDAO; -import fr.ifremer.suiviobsmer.entity.ActivityCalendarImpl; import fr.ifremer.suiviobsmer.entity.ActivityMonth; import fr.ifremer.suiviobsmer.entity.ActivityMonthDAO; import fr.ifremer.suiviobsmer.entity.ActivityProfession; @@ -33,6 +32,7 @@ import fr.ifremer.suiviobsmer.entity.ActivityZone; import fr.ifremer.suiviobsmer.entity.ActivityZoneDAO; import fr.ifremer.suiviobsmer.entity.Boat; +import fr.ifremer.suiviobsmer.entity.BoatDAO; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; @@ -49,10 +49,7 @@ import java.util.Map; import org.apache.commons.io.IOUtils; import org.apache.commons.lang.time.DurationFormatUtils; -import org.hibernate.SQLQuery; import org.nuiton.topia.TopiaContext; -import org.nuiton.topia.framework.TopiaContextImplementor; -import org.nuiton.topia.framework.TopiaQuery; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -159,7 +156,7 @@ Map<ActivityCalendarKey, ActivityCalendar> availableCalendars = new HashMap<ActivityCalendarKey, ActivityCalendar>(); - //BoatDAO boatDAO = SuiviObsmerModelDAOHelper.getBoatDAO(transaction); + BoatDAO boatDAO = SuiviObsmerModelDAOHelper.getBoatDAO(transaction); ActivityCalendarDAO calendarDAO = SuiviObsmerModelDAOHelper.getActivityCalendarDAO(transaction); ActivityMonthDAO monthDAO = SuiviObsmerModelDAOHelper.getActivityMonthDAO(transaction); ActivityProfessionDAO professionDAO = SuiviObsmerModelDAOHelper.getActivityProfessionDAO(transaction); @@ -179,7 +176,7 @@ // "SELECT * FROM boat WHERE immatriculation = " + boatImmatriculation); // // Boat boat = (Boat)query.addEntity(BoatImpl.class).uniqueResult(); - Boat boat = new TopiaQuery(Boat.class).add(Boat.IMMATRICULATION, boatImmatriculation).executeToEntity(transaction); + Boat boat = boatDAO.findByImmatriculation(boatImmatriculation); //.add(Boat.IMMATRICULATION, boatImmatriculation).executeToEntity(transaction); // long tic2 = System.currentTimeMillis(); // log.info("findByImmatriculation : " + (tic2 - tic1)); @@ -201,10 +198,9 @@ // // calendar = (ActivityCalendar)query.addEntity(ActivityCalendarImpl.class).uniqueResult(); - calendar = new TopiaQuery(ActivityCalendar.class). - add(ActivityCalendar.BOAT, boat). - add(ActivityCalendar.YEAR, year). - executeToEntity(transaction); + calendar = calendarDAO.findByProperties( + ActivityCalendar.BOAT, boat, + ActivityCalendar.YEAR, year); // Create it if not exist in Database if (calendar == null) { Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceBoatImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceBoatImpl.java 2009-12-29 12:17:31 UTC (rev 161) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceBoatImpl.java 2010-01-04 11:24:57 UTC (rev 162) @@ -22,7 +22,6 @@ package fr.ifremer.suiviobsmer.impl; import com.csvreader.CsvReader; -import fr.ifremer.suiviobsmer.QueryBuilder; import fr.ifremer.suiviobsmer.SuiviObsmerBusinessException; import fr.ifremer.suiviobsmer.SuiviObsmerBusinessException.Type; import fr.ifremer.suiviobsmer.SuiviObsmerContext; @@ -83,7 +82,8 @@ try { transaction = rootContext.beginTransaction(); - TopiaQuery query = new TopiaQuery(Boat.class.getName() + " B").addSelect("B"); + BoatDAO dao = SuiviObsmerModelDAOHelper.getBoatDAO(transaction); + TopiaQuery<Boat> query = dao.createQuery("B"); // Immatriculation if (filter.getBoatImmatriculation() != null) { @@ -108,7 +108,7 @@ // Add join for ElligibleBoat if (sampleRowFiltered) { String elligibleBoatClassName = ElligibleBoat.class.getName(); - query.addFrom(elligibleBoatClassName + " E").add("E.boat = B"); + query.addSelect("B").addFrom(elligibleBoatClassName + " E").add("E.boat = B"); } // SampleRowCode if (sampleRowCodeFiltered) { @@ -128,7 +128,7 @@ addParam("booleanTrue", Boolean.TRUE); } - results = query.executeToEntityMap(transaction, Boat.class, Boat.IMMATRICULATION, Integer.class); + results = query.executeToEntityMap(Boat.IMMATRICULATION, Integer.class); transaction.closeContext(); } catch (Exception eee) { @@ -197,9 +197,10 @@ } // Last contact - TopiaQuery query = QueryBuilder.createQueryLastContactForBoat(boat, company). - addLoad(Contact.SAMPLE_ROW, Contact.USER); - Contact contact = query.executeToEntity(transaction, Contact.class); + ContactDAO contactDAO = SuiviObsmerModelDAOHelper.getContactDAO(transaction); + Contact contact = contactDAO.createQueryLastContactForBoat(boat, company). + addLoad(Contact.SAMPLE_ROW, Contact.USER). + executeToEntity(); if (contact != null) { result.setLastContact(contact); @@ -377,7 +378,7 @@ // // long tic1 = System.currentTimeMillis(); -// boatDAO.findByImmatriculation(immatriculation); + Boat boat = boatDAO.findByImmatriculation(immatriculation); // long tic2 = System.currentTimeMillis(); // if (log.isDebugEnabled()) { // log.debug("findByImmatriculation : " + (tic2 - tic1)); @@ -391,7 +392,7 @@ // } // tic1 = System.currentTimeMillis(); - Boat boat = new TopiaQuery(Boat.class).add(Boat.IMMATRICULATION, immatriculation).executeToEntity(transaction); + //Boat boat = new TopiaQuery(Boat.class).add(Boat.IMMATRICULATION, immatriculation).executeToEntity(transaction); // tic2 = System.currentTimeMillis(); // if (log.isDebugEnabled()) { // log.debug("findByImmatriculation TopiaQuery : " + (tic2 - tic1)); @@ -414,7 +415,8 @@ // If not available, select it from database if (shipOwner == null) { - shipOwner = new TopiaQuery(ShipOwner.class).add(ShipOwner.CODE, shipOwnerCode).executeToEntity(transaction); + //shipOwner = new TopiaQuery(ShipOwner.class).add(ShipOwner.CODE, shipOwnerCode).executeToEntity(transaction); + shipOwner = shipOwnerDAO.findByCode(shipOwnerCode); // If not exist yet, create it if (shipOwner == null) { @@ -488,11 +490,12 @@ try { transaction = rootContext.beginTransaction(); - String activityCalendarClassName = ActivityCalendar.class.getName(); - TopiaQuery query = new TopiaQuery(activityCalendarClassName + " A"). + ActivityCalendarDAO dao = SuiviObsmerModelDAOHelper.getActivityCalendarDAO(transaction); + + TopiaQuery<ActivityCalendar> query = dao.createQuery("A"). add("A.boat", boat); - TopiaQuery subquery = new TopiaQuery(activityCalendarClassName + " B"). + TopiaQuery<ActivityCalendar> subquery = dao.createQuery("B"). addSelect("MAX(B.year)"). add("B.boat = A.boat"). addGroup("B.boat"); @@ -500,7 +503,7 @@ query.add("A.year = (" + subquery.fullQuery() + ")"); query.addLoad(ActivityCalendar.BOAT); - result = query.executeToEntity(transaction, ActivityCalendar.class); + result = query.executeToEntity(transaction); // load other complex data from collections List<ActivityMonth> months = result.getActivityMonth(); Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceContactImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceContactImpl.java 2009-12-29 12:17:31 UTC (rev 161) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceContactImpl.java 2010-01-04 11:24:57 UTC (rev 162) @@ -70,14 +70,15 @@ try { transaction = rootContext.beginTransaction(); - TopiaQuery query = new TopiaQuery(Contact.class).addOrderDesc(TopiaEntity.TOPIA_CREATE_DATE); + ContactDAO dao = SuiviObsmerModelDAOHelper.getContactDAO(transaction); + TopiaQuery<Contact> query = dao.createQuery().addOrderDesc(TopiaEntity.TOPIA_CREATE_DATE); if (company != null) { query.add("user.company", company); } query.addLoad("user.company", "sampleRow.program", "sampleRow.profession", "sampleRow.company"); - results = query.executeToEntityMap(transaction, Contact.class); + results = query.executeToEntityMap(); transaction.closeContext(); } catch (Exception eee) { Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java 2009-12-29 12:17:31 UTC (rev 161) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java 2010-01-04 11:24:57 UTC (rev 162) @@ -237,14 +237,15 @@ Date current = SuiviObsmerContext.getCurrentDate(); + SampleRowDAO dao = SuiviObsmerModelDAOHelper.getSampleRowDAO(transaction); // Only rows which are not finished will be kept - TopiaQuery query = new TopiaQuery(SampleRow.class).add("program.periodEnd", Op.GE, current); + TopiaQuery<SampleRow> query = dao.createQuery().add("program.periodEnd", Op.GE, current); if (!user.getAdmin()) { query.add(SampleRow.COMPANY, user.getCompany()); } - results = query.executeToEntityList(transaction, SampleRow.class); + results = query.executeToEntityList(); // SampleRowDAO dao = SuiviObsmerModelDAOHelper.getSampleRowDAO(transaction); // Modified: trunk/suiviobsmer-business/src/main/xmi/suiviobsmer.zargo =================================================================== (Binary files differ)
participants (1)
-
fdesbois@users.labs.libre-entreprise.org