Author: fdesbois Date: 2010-02-09 01:04:19 +0000 (Tue, 09 Feb 2010) New Revision: 337 Modified: trunk/pom.xml trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/bean/ContactFilterImpl.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/bean/SamplingFilterImpl.java 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/ContactDAOImpl.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/ServiceReferentialImpl.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSynthesisImpl.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceUserImpl.java trunk/suiviobsmer-business/src/main/xmi/suiviobsmer.zargo Log: Use topia snapshot to test TopiaQuery refactor Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/pom.xml 2010-02-09 01:04:19 UTC (rev 337) @@ -222,7 +222,7 @@ <!-- libraries version --> <nuitonutils.version>1.1.3</nuitonutils.version> - <topia.version>2.3.0-beta-7</topia.version> + <topia.version>2.3.0-beta-8-SNAPSHOT</topia.version> <eugene.version>2.0.0-beta-4</eugene.version> <tapestry.version>5.1.0.5</tapestry.version> Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/bean/ContactFilterImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/bean/ContactFilterImpl.java 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/bean/ContactFilterImpl.java 2010-02-09 01:04:19 UTC (rev 337) @@ -24,6 +24,7 @@ import fr.ifremer.suiviobsmer.entity.Contact; import java.util.ArrayList; import java.util.List; +import org.nuiton.topia.TopiaException; import org.nuiton.topia.framework.TopiaQuery; import org.nuiton.topia.persistence.TopiaEntity; @@ -41,7 +42,7 @@ public class ContactFilterImpl extends ContactFilter { @Override - public TopiaQuery prepareQueryForContact(TopiaQuery query) { + public TopiaQuery prepareQueryForContact(TopiaQuery query) throws TopiaException { String contact = query.getMainAlias(); Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/bean/SamplingFilterImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/bean/SamplingFilterImpl.java 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/bean/SamplingFilterImpl.java 2010-02-09 01:04:19 UTC (rev 337) @@ -27,6 +27,7 @@ import java.util.Calendar; import java.util.GregorianCalendar; import org.apache.commons.lang.StringUtils; +import org.nuiton.topia.TopiaException; import org.nuiton.topia.framework.TopiaQuery; import org.nuiton.topia.framework.TopiaQuery.Op; @@ -44,19 +45,24 @@ public class SamplingFilterImpl extends SamplingFilter { @Override - public TopiaQuery prepareQueryForSampling(TopiaQuery query, String main) { + public TopiaQuery prepareQueryForSampling(TopiaQuery query, String main) + throws TopiaException { // SampleRow filter depends on SampleRow or sectorName or facadeName if (getSampleRow() != null) { query.add(main, getSampleRow()); } else if (StringUtils.isNotEmpty(getSectorName())) { - TopiaQuery<SampleRow> subquery = TopiaQuery.createQuery(SampleRow.class, "SR").addFrom(FishingZone.class.getName() + " F"); - subquery.add("F." + FishingZone.SECTOR_NAME, getSectorName()).add("F IN elements(SR." + SampleRow.FISHING_ZONE + ")"); + TopiaQuery subquery = new TopiaQuery(SampleRow.class, "SR"). + addFrom(FishingZone.class, "F"); + subquery.add("F." + FishingZone.SECTOR_NAME, getSectorName()). + add("F IN elements(SR." + SampleRow.FISHING_ZONE + ")"); + query.add(main + " IN (" + subquery.fullQuery() + ")").addParams(subquery.getParams()); } else if (StringUtils.isNotEmpty(getFacadeName())) { - TopiaQuery<SampleRow> subquery = TopiaQuery.createQuery(SampleRow.class, "SR").addFrom(FishingZone.class.getName() + " F"); + TopiaQuery subquery = new TopiaQuery(SampleRow.class, "SR"). + addFrom(FishingZone.class, "F"); subquery.add("F." + FishingZone.FACADE_NAME, getFacadeName()).add("F IN elements(SR." + SampleRow.FISHING_ZONE + ")"); query.add(main + " IN (" + subquery.fullQuery() + ")").addParams(subquery.getParams()); 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 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatImpl.java 2010-02-09 01:04:19 UTC (rev 337) @@ -70,7 +70,7 @@ transaction = SuiviObsmerContext.getTopiaRootContext().beginTransaction(); ContactDAO dao = SuiviObsmerModelDAOHelper.getContactDAO(transaction); - Contact contact = dao.createQueryLastContactForBoat(this, company).executeToEntity(); + Contact contact = dao.findByQuery(dao.createQueryLastContactForBoat(this, company)); if (contact != null) { ContactState state = ContactState.createContactStateEnum(contact.getState()); @@ -106,7 +106,7 @@ ContactDAO dao = SuiviObsmerModelDAOHelper.getContactDAO(transaction); - TopiaQuery<Contact> query = dao.createQueryDoneContactsFromDate(this, fromDate); + TopiaQuery query = dao.createQueryDoneContactsFromDate(this, fromDate); result = query.executeCount(transaction); transaction.closeContext(); 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 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatInfosImpl.java 2010-02-09 01:04:19 UTC (rev 337) @@ -66,7 +66,7 @@ ContactDAO dao = SuiviObsmerModelDAOHelper.getContactDAO(transaction); - TopiaQuery<Contact> query = dao.createQueryDoneContactsFromDate(getBoat(), fromDate); + TopiaQuery query = dao.createQueryDoneContactsFromDate(getBoat(), fromDate); query.add(Contact.OBSERVER + "." + WaoUser.COMPANY, getCompany()); result = query.executeCount(); Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ContactDAOImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ContactDAOImpl.java 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/ContactDAOImpl.java 2010-02-09 01:04:19 UTC (rev 337) @@ -49,13 +49,13 @@ * @return the TopiaQuery created */ @Override - public TopiaQuery<E> createQueryLastContactForBoat(Boat boat, Company company) { - TopiaQuery<E> query = createQuery("C1"). + public TopiaQuery createQueryLastContactForBoat(Boat boat, Company company) { + TopiaQuery query = createQuery("C1"). add("C1." + Contact.BOAT, boat). add("C1." + Contact.OBSERVER + "." + WaoUser.COMPANY + " = :company"). addParam("company", company); - TopiaQuery<E> subquery = createQuery("C2"). + TopiaQuery subquery = createQuery("C2"). setSelect("MAX(C2." + TopiaEntity.TOPIA_CREATE_DATE + ")"). add("C2." + Contact.BOAT + " = C1." + Contact.BOAT). add("C2." + Contact.OBSERVER + "." + WaoUser.COMPANY + " = :company"); @@ -75,8 +75,8 @@ * @return the TopiaQuery created */ @Override - public TopiaQuery<E> createQueryDoneContactsFromDate(Boat boat, Date fromDate) { - TopiaQuery<E> query = createQuery("C"). + public TopiaQuery createQueryDoneContactsFromDate(Boat boat, Date fromDate) { + TopiaQuery query = createQuery("C"). add("C." + Contact.STATE, ContactState.BOARDING_DONE.toString()). add("C." + Contact.VALIDATION_COMPANY, Boolean.TRUE). add("C." + Contact.VALIDATION_PROGRAM + " IS NULL OR " + "C." + Contact.VALIDATION_PROGRAM + " = :booleanTrue"). 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 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceBoatImpl.java 2010-02-09 01:04:19 UTC (rev 337) @@ -30,6 +30,7 @@ import fr.ifremer.suiviobsmer.SuiviObsmerContext; import fr.ifremer.suiviobsmer.SuiviObsmerException; import fr.ifremer.suiviobsmer.SuiviObsmerModelDAOHelper; +import org.nuiton.topia.TopiaException; import org.nuiton.topia.framework.TopiaQuery; import org.nuiton.topia.framework.TopiaQuery.Op; import fr.ifremer.suiviobsmer.bean.BoatFilter; @@ -85,7 +86,7 @@ transaction = rootContext.beginTransaction(); BoatDAO dao = SuiviObsmerModelDAOHelper.getBoatDAO(transaction); - TopiaQuery<Boat> query = dao.createQuery("B"); + TopiaQuery query = dao.createQuery("B"); query = createQueryForBoatFilter(query, filter); @@ -99,7 +100,7 @@ log.debug("Query : " + query); } - results = query.executeToEntityMap(Boat.IMMATRICULATION, Integer.class); + results = dao.findAllMappedByQuery(query, Boat.IMMATRICULATION, Integer.class); transaction.closeContext(); } catch (Exception eee) { @@ -116,7 +117,7 @@ transaction = rootContext.beginTransaction(); BoatDAO dao = SuiviObsmerModelDAOHelper.getBoatDAO(transaction); - TopiaQuery<Boat> query = dao.createQuery("B"); + TopiaQuery query = dao.createQuery("B"); query = createQueryForBoatFilter(query, filter); @@ -129,15 +130,15 @@ return result; } - protected TopiaQuery<Boat> createQueryForBoatFilter(TopiaQuery<Boat> query, BoatFilter filter) { + protected TopiaQuery createQueryForBoatFilter(TopiaQuery query, BoatFilter filter) throws TopiaException { String main = query.getMainAlias(); query = filter.prepareQueryForBoat(query, main).addDistinct(); // Sampling filter if (filter.isSamplingFiltered()) { // Add join for ElligibleBoat - String elligibleBoatClassName = ElligibleBoat.class.getName(); - query.addFrom(elligibleBoatClassName + " E").add("E." + ElligibleBoat.BOAT + " = " + main); + //String elligibleBoatClassName = ElligibleBoat.class.getName(); + query.addFrom(ElligibleBoat.class, "E").add("E." + ElligibleBoat.BOAT + " = " + main); query = filter.prepareQueryForSampling(query, "E." + ElligibleBoat.SAMPLE_ROW); // Company @@ -217,9 +218,10 @@ // Last contact ContactDAO contactDAO = SuiviObsmerModelDAOHelper.getContactDAO(transaction); - Contact contact = contactDAO.createQueryLastContactForBoat(boat, company). - addLoad(Contact.SAMPLE_ROW, Contact.OBSERVER). - executeToEntity(); + TopiaQuery query = contactDAO.createQueryLastContactForBoat(boat, company). + addLoad(Contact.SAMPLE_ROW, Contact.OBSERVER); + + Contact contact = contactDAO.findByQuery(query); if (contact != null) { result.setLastContact(contact); @@ -492,11 +494,12 @@ // Get boats from database filterd by filter in argument BoatDAO dao = SuiviObsmerModelDAOHelper.getBoatDAO(transaction); - TopiaQuery<Boat> query = dao.createQuery("B"); + TopiaQuery query = dao.createQuery("B"); query = filter.prepareQueryForBoat(query, "B"); // Reset limit : no pagination needed for results - List<Boat> boats = query.resetLimit().executeToEntityList(); + query.resetLimit(); + List<Boat> boats = dao.findAllByQuery(query); for (Boat boat : boats) { String[] record = new String[ImportHelper.BOAT_NB_HEADERS]; @@ -566,10 +569,10 @@ ActivityCalendarDAO dao = SuiviObsmerModelDAOHelper.getActivityCalendarDAO(transaction); - TopiaQuery<ActivityCalendar> query = dao.createQuery("A"). + TopiaQuery query = dao.createQuery("A"). add("A." + ActivityCalendar.BOAT, boat); - TopiaQuery<ActivityCalendar> subquery = dao.createQuery("B"). + TopiaQuery subquery = dao.createQuery("B"). setSelect("MAX(B." + ActivityCalendar.YEAR + ")"). add("B." + ActivityCalendar.BOAT + " = A." + ActivityCalendar.BOAT). addGroup("B." + ActivityCalendar.BOAT); @@ -577,7 +580,7 @@ query.add("A." + ActivityCalendar.YEAR + " = (" + subquery.fullQuery() + ")"); query.addLoad(ActivityCalendar.BOAT); - result = query.executeToEntity(transaction); + result = dao.findByQuery(query); // 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 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceContactImpl.java 2010-02-09 01:04:19 UTC (rev 337) @@ -102,7 +102,7 @@ ContactDAO dao = SuiviObsmerModelDAOHelper.getContactDAO(transaction); - TopiaQuery<Contact> query = dao.createQuery("C").addDistinct(); + TopiaQuery query = dao.createQuery("C").addDistinct(); query = filter.prepareQueryForContact(query); @@ -112,7 +112,7 @@ log.debug("Query : " + query); } - results = query.executeToEntityMap(); + results = dao.findAllMappedByQuery(query); transaction.closeContext(); } catch (Exception eee) { @@ -130,7 +130,7 @@ transaction = rootContext.beginTransaction(); ContactDAO dao = SuiviObsmerModelDAOHelper.getContactDAO(transaction); - TopiaQuery<Contact> query = dao.createQuery("C"); + TopiaQuery query = dao.createQuery("C"); query = filter.prepareQueryForContact(query); result = query.executeCount(); @@ -211,7 +211,7 @@ // Get contacts from database ContactDAO dao = SuiviObsmerModelDAOHelper.getContactDAO(transaction); - TopiaQuery<Contact> query = dao.createQuery("C"); + TopiaQuery query = dao.createQuery("C"); // No page limit in this case query = filter.prepareQueryForContact(query).resetLimit(); @@ -220,7 +220,7 @@ log.debug("Exec query : " + query); } - List<Contact> contacts = query.executeToEntityList(); + List<Contact> contacts = dao.findAllByQuery(query); for (Contact contact : contacts) { String[] record = new String[ImportHelper.CONTACT_NB_HEADERS]; @@ -395,12 +395,12 @@ if (/*!StringUtils.isEmpty(contactCode) && */StringUtils.isNotEmpty(createDateString)) { // Get entity from database - contact = dao.createQuery(). + TopiaQuery query = dao.createQuery(). add(TopiaEntity.TOPIA_CREATE_DATE, createDate). add(Contact.OBSERVER + "." + WaoUser.COMPANY, company). add(Contact.BOAT, boat). - add(Contact.SAMPLE_ROW, row). - executeToEntity(); + add(Contact.SAMPLE_ROW, row); + contact = dao.findByQuery(query); } if (contact != null && contact.getValidationCompany() != null) { Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceReferentialImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceReferentialImpl.java 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceReferentialImpl.java 2010-02-09 01:04:19 UTC (rev 337) @@ -40,6 +40,7 @@ import java.util.List; import org.apache.commons.lang.StringUtils; import org.nuiton.topia.TopiaContext; +import org.nuiton.topia.TopiaException; import org.nuiton.topia.framework.TopiaQuery; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -73,7 +74,7 @@ transaction = rootContext.beginTransaction(); FishingZoneDAO dao = SuiviObsmerModelDAOHelper.getFishingZoneDAO(transaction); - TopiaQuery<FishingZone> query = dao.createQuery("F"); + TopiaQuery query = dao.createQuery("F"); query = prepareQueryForFishingZoneFilter(query, filter); @@ -94,7 +95,7 @@ transaction = rootContext.beginTransaction(); FishingZoneDAO dao = SuiviObsmerModelDAOHelper.getFishingZoneDAO(transaction); - TopiaQuery<FishingZone> query = dao.createQuery("F"); + TopiaQuery query = dao.createQuery("F"); query = prepareQueryForFishingZoneFilter(query, filter); @@ -111,7 +112,7 @@ return results; } - protected TopiaQuery<FishingZone> prepareQueryForFishingZoneFilter(TopiaQuery<FishingZone> query, SamplingFilter filter) { + protected TopiaQuery prepareQueryForFishingZoneFilter(TopiaQuery query, SamplingFilter filter) throws TopiaException { if (filter.getCompany() != null || StringUtils.isNotEmpty(filter.getProgramName())) { query.addFrom(SampleRow.class.getName() + " S"). add("S IN elements(F." + FishingZone.SAMPLE_ROW + ")"); 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 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java 2010-02-09 01:04:19 UTC (rev 337) @@ -284,8 +284,9 @@ SampleRowDAO dao = SuiviObsmerModelDAOHelper.getSampleRowDAO(transaction); - TopiaQuery<SampleRow> query = dao.createQuery("S").addDistinct(). - addFrom(FishingZone.class.getName() + " F").add("S IN elements(F." + FishingZone.SAMPLE_ROW + ")"); + TopiaQuery query = dao.createQuery("S").addDistinct(). + addFrom(FishingZone.class.getName() + " F"). + add("S IN elements(F." + FishingZone.SAMPLE_ROW + ")"); if (company != null) { query.add("S." + SampleRow.COMPANY, company); @@ -306,7 +307,7 @@ log.debug("Query : " + query); } - List<SampleRow> results = query.executeToEntityList(); + List<SampleRow> results = dao.findAllByQuery(query); for (SampleRow row : results) { // use FacadeRow to complete ordering using maps @@ -329,7 +330,7 @@ transaction = rootContext.beginTransaction(); SampleRowDAO dao = SuiviObsmerModelDAOHelper.getSampleRowDAO(transaction); - TopiaQuery<SampleRow> query = dao.createQuery(); + TopiaQuery query = dao.createQuery(); if (company != null) { query.add(SampleRow.COMPANY, company); @@ -354,7 +355,7 @@ SampleRowDAO dao = SuiviObsmerModelDAOHelper.getSampleRowDAO(transaction); - TopiaQuery<SampleRow> query = dao.createQuery("S").addDistinct().addOrder("S." + SampleRow.CODE); + TopiaQuery query = dao.createQuery("S").addDistinct().addOrder("S." + SampleRow.CODE); query = filter.prepareQueryForSampling(query, "S"); @@ -372,7 +373,7 @@ // query.add("S." + SampleRow.COMPANY, filter.getCompany()); // } - results = query.executeToEntityList(); + results = dao.findAllByQuery(query); transaction.closeContext(); } catch (Exception eee) { @@ -438,7 +439,7 @@ int year = begin.get(Calendar.YEAR); SampleRowDAO dao = SuiviObsmerModelDAOHelper.getSampleRowDAO(transaction); - TopiaQuery<SampleRow> query = dao.createQuery().add(SampleRow.CODE, Op.LIKE, year + "_%"); + TopiaQuery query = dao.createQuery().add(SampleRow.CODE, Op.LIKE, year + "_%"); String maxCode = query.executeToString("MAX(" + SampleRow.CODE + ")"); Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSynthesisImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSynthesisImpl.java 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSynthesisImpl.java 2010-02-09 01:04:19 UTC (rev 337) @@ -103,7 +103,7 @@ SampleMonthDAO dao = SuiviObsmerModelDAOHelper.getSampleMonthDAO(transaction); String periodDate = "M." + SampleMonth.PERIOD_DATE; - TopiaQuery<SampleMonth> query = dao.createQuery("M"). + TopiaQuery query = dao.createQuery("M"). setSelect(periodDate). addSelect("SUM(M." + SampleMonth.REAL_TIDES_VALUE + ")"). addSelect("SUM(M." + SampleMonth.EXPECTED_TIDES_VALUE + ")"). @@ -179,7 +179,7 @@ // The number of boardings is the number of finished contacts // Use fromDate to filter contacts finished from this date // No need to use boat filter for this method - TopiaQuery<Contact> query = + TopiaQuery query = dao.createQueryDoneContactsFromDate(null, fromDate); String contact = query.getMainAlias(); @@ -252,7 +252,7 @@ ContactDAO dao = SuiviObsmerModelDAOHelper.getContactDAO(transaction); // Only for done contacts with no constraint - TopiaQuery<Contact> query = + TopiaQuery query = dao.createQueryDoneContactsFromDate(null, null); String contactKey = query.getMainAlias(); @@ -268,12 +268,10 @@ } // Prepare results - query.setSelect(companyKey). - addSelect("COUNT(*)"). - addGroup(companyKey); + query.setSelect(companyKey, "COUNT(*)").addGroup(companyKey); - if (log.isTraceEnabled()) { - log.trace("Exec query for total : " + query); + if (log.isDebugEnabled()) { + log.debug("Exec query for total : " + query); } List<Object[]> totalResults = query.execute(); @@ -283,8 +281,8 @@ query.add(contactKey + "." + Contact.NB_OBSERVANTS + " < " + sampleRowKey + "." + SampleRow.NB_OBSERVANTS); - if (log.isTraceEnabled()) { - log.trace("Exec query for result : " + query); + if (log.isDebugEnabled()) { + log.debug("Exec query for result : " + query); } List<Object[]> diffResults = query.execute(); @@ -293,8 +291,8 @@ for (Object[] row : diffResults) { Company rowCompany = (Company)row[0]; Long rowCount = (Long)row[1]; - if (log.isTraceEnabled()) { - log.trace("result row : " + rowCompany.getName() + " = " + rowCount); + if (log.isDebugEnabled()) { + log.debug("result row : " + rowCompany.getName() + " = " + rowCount); } results.put(rowCompany, rowCount.doubleValue()); } @@ -305,8 +303,8 @@ for (Object[] row : totalResults) { Company rowCompany = (Company)row[0]; Long rowCount = (Long)row[1]; - if (log.isTraceEnabled()) { - log.trace("total row : " + rowCompany.getName() + " = " + rowCount); + if (log.isDebugEnabled()) { + log.debug("total row : " + rowCompany.getName() + " = " + rowCount); } Double value = results.get(rowCompany); if (value == null) { @@ -341,7 +339,7 @@ // Only for contacts not refused by the program String contactKey = "C"; String validationProgramKey = contactKey + "." + Contact.VALIDATION_PROGRAM; - TopiaQuery<Contact> query = dao.createQuery(contactKey). + TopiaQuery query = dao.createQuery(contactKey). add(validationProgramKey + " IS NULL " + "OR " + validationProgramKey + " = :booleanTrue"). addParam("booleanTrue", Boolean.TRUE); @@ -366,9 +364,9 @@ } String stateKey = contactKey + "." + Contact.STATE; - query.addGroup(companyKey).addGroup(stateKey). + query.addGroup(companyKey, stateKey). addOrder(companyKey). - setSelect(companyKey).addSelect(stateKey).addSelect("COUNT(*)"); + setSelect(companyKey, stateKey, "COUNT(*)"); if (log.isDebugEnabled()) { log.debug("Exec query : " + query); Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceUserImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceUserImpl.java 2010-02-08 14:45:59 UTC (rev 336) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceUserImpl.java 2010-02-09 01:04:19 UTC (rev 337) @@ -309,13 +309,13 @@ transaction = rootContext.beginTransaction(); WaoUserDAO dao = SuiviObsmerModelDAOHelper.getWaoUserDAO(transaction); - TopiaQuery<WaoUser> query = dao.createQuery().add(WaoUser.ADMIN, Boolean.FALSE); + TopiaQuery query = dao.createQuery().add(WaoUser.ADMIN, Boolean.FALSE); if (activeOnly) { query.add(WaoUser.ACTIVE, Boolean.TRUE); } - results = query.executeToEntityList(); + results = dao.findAllByQuery(query); transaction.closeContext(); } catch (Exception eee) { Modified: trunk/suiviobsmer-business/src/main/xmi/suiviobsmer.zargo =================================================================== (Binary files differ)