r494 - in trunk: sammoa-persistence/src/main/java/fr/ulr/sammoa/persistence sammoa-ui-swing/src/main/java/fr/ulr/sammoa/ui/swing/flight
Author: fdesbois Date: 2012-08-30 15:27:15 +0200 (Thu, 30 Aug 2012) New Revision: 494 Url: http://forge.codelutin.com/repositories/revision/sammoa/494 Log: fixes #1432 : change strate order Modified: trunk/sammoa-persistence/src/main/java/fr/ulr/sammoa/persistence/StrateDAOImpl.java trunk/sammoa-persistence/src/main/java/fr/ulr/sammoa/persistence/Strates.java trunk/sammoa-ui-swing/src/main/java/fr/ulr/sammoa/ui/swing/flight/FlightUIHandler.java trunk/sammoa-ui-swing/src/main/java/fr/ulr/sammoa/ui/swing/flight/StrateModel.java Modified: trunk/sammoa-persistence/src/main/java/fr/ulr/sammoa/persistence/StrateDAOImpl.java =================================================================== --- trunk/sammoa-persistence/src/main/java/fr/ulr/sammoa/persistence/StrateDAOImpl.java 2012-08-29 15:37:14 UTC (rev 493) +++ trunk/sammoa-persistence/src/main/java/fr/ulr/sammoa/persistence/StrateDAOImpl.java 2012-08-30 13:27:15 UTC (rev 494) @@ -32,14 +32,10 @@ public List<E> findAllByCampaignOrderedByCode(Campaign campaign) { + String ql = "FROM StrateImpl " + + "WHERE sector.campaign = :campaign " + + "ORDER BY sector.sectorNumber, code"; - String ql = String.format("FROM %1$s WHERE %2$s.%3$s = :campaign ORDER BY %4$s", - StrateImpl.class.getSimpleName(), - Strate.PROPERTY_SECTOR, - Sector.PROPERTY_CAMPAIGN, - Strate.PROPERTY_CODE - ); - try { List<E> result = findAllByQuery(ql, "campaign", campaign); return result; Modified: trunk/sammoa-persistence/src/main/java/fr/ulr/sammoa/persistence/Strates.java =================================================================== --- trunk/sammoa-persistence/src/main/java/fr/ulr/sammoa/persistence/Strates.java 2012-08-29 15:37:14 UTC (rev 493) +++ trunk/sammoa-persistence/src/main/java/fr/ulr/sammoa/persistence/Strates.java 2012-08-30 13:27:15 UTC (rev 494) @@ -25,8 +25,7 @@ import com.google.common.base.Function; import com.google.common.base.Preconditions; -import com.google.common.base.Predicate; -import com.google.common.collect.Ordering; +import com.google.common.collect.ComparisonChain; import java.util.Comparator; @@ -42,19 +41,19 @@ } public static String getCode(Strate strate) { - Preconditions.checkArgument(strate != null, - "Can't retrieve code from null strate"); + Preconditions.checkNotNull(strate, + "Can't retrieve code from null strate"); String result; if (strate.getCode() == null) { StrateType strateType = strate.getStrateType(); - Preconditions.checkArgument(strateType != null, - "Can't retrieve code if strateType is null"); + Preconditions.checkNotNull(strateType, + "Can't retrieve code if strateType is null"); Sector sector = strate.getSector(); - Preconditions.checkArgument(sector != null, - "Can't retrieve code if sector is null"); + Preconditions.checkNotNull(sector, + "Can't retrieve code if sector is null"); result = "" + strateType.getCode() + sector.getSectorNumber(); } else { @@ -67,15 +66,19 @@ public static Function<Strate, String> toCode() { return TO_CODE_FUNCTION; } +// +// public static Predicate<Strate> withCode(String code) { +// return new StrateWithCodePredicate(code); +// } +// +// public static Comparator<Strate> orderByCode() { +// return ORDER_BY_CODE_COMPARATOR; +// } - public static Predicate<Strate> withCode(String code) { - return new StrateWithCodePredicate(code); + public static Comparator<Strate> orderBySector() { + return ORDER_BY_SECTOR_COMPARATOR; } - public static Comparator<Strate> onCode() { - return ON_CODE_COMPARATOR; - } - protected static Function<Strate, String> TO_CODE_FUNCTION = new Function<Strate, String>() { @@ -84,32 +87,46 @@ return input.getCode(); } }; +// +// protected static Comparator<Strate> ORDER_BY_CODE_COMPARATOR = +// new Comparator<Strate>() { +// +// @Override +// public int compare(Strate o1, Strate o2) { +// int result = Ordering.natural() +// .nullsFirst() +// .compare(o1.getCode(), o2.getCode()); +// return result; +// } +// }; - protected static Comparator<Strate> ON_CODE_COMPARATOR = + protected static Comparator<Strate> ORDER_BY_SECTOR_COMPARATOR = new Comparator<Strate>() { @Override public int compare(Strate o1, Strate o2) { - int result = Ordering.natural() - .nullsFirst() - .compare(o1.getCode(), o2.getCode()); + int result = ComparisonChain + .start() + .compare(o1.getSector().getSectorNumber(), o2.getSector().getSectorNumber()) + .compare(o1.getStrateType(), o2.getStrateType()) + .result(); return result; } }; +// +// protected static class StrateWithCodePredicate +// implements Predicate<Strate> { +// +// protected String code; +// +// public StrateWithCodePredicate(String code) { +// this.code = code; +// } +// +// @Override +// public boolean apply(Strate input) { +// return code.equals(input.getCode()); +// } +// } - protected static class StrateWithCodePredicate - implements Predicate<Strate> { - - protected String code; - - public StrateWithCodePredicate(String code) { - this.code = code; - } - - @Override - public boolean apply(Strate input) { - return code.equals(input.getCode()); - } - } - } Modified: trunk/sammoa-ui-swing/src/main/java/fr/ulr/sammoa/ui/swing/flight/FlightUIHandler.java =================================================================== --- trunk/sammoa-ui-swing/src/main/java/fr/ulr/sammoa/ui/swing/flight/FlightUIHandler.java 2012-08-29 15:37:14 UTC (rev 493) +++ trunk/sammoa-ui-swing/src/main/java/fr/ulr/sammoa/ui/swing/flight/FlightUIHandler.java 2012-08-30 13:27:15 UTC (rev 494) @@ -630,19 +630,15 @@ public void showNewTransect() { - // The first strate contains all transect and doesn't have any strate, we remove it because we don't need it - // in TransectUI + // The first strate contains all transect and doesn't have any strate, + // we remove it because we don't need it in TransectUI StrateModel allStrate = getModel().getStrates().get(0); List<StrateModel> referential = Lists.newArrayList(getModel().getStrates()); referential.remove(allStrate); - // We keep currentStrate only if there is a defined source strate - StrateModel currentStrate; - if (getModel().getCurrentStrate().getSource() != null) { - currentStrate = getModel().getCurrentStrate(); - - } else { + StrateModel currentStrate = getModel().getCurrentStrate(); + if (allStrate.equals(currentStrate)) { currentStrate = null; } Modified: trunk/sammoa-ui-swing/src/main/java/fr/ulr/sammoa/ui/swing/flight/StrateModel.java =================================================================== --- trunk/sammoa-ui-swing/src/main/java/fr/ulr/sammoa/ui/swing/flight/StrateModel.java 2012-08-29 15:37:14 UTC (rev 493) +++ trunk/sammoa-ui-swing/src/main/java/fr/ulr/sammoa/ui/swing/flight/StrateModel.java 2012-08-30 13:27:15 UTC (rev 494) @@ -25,6 +25,7 @@ import com.google.common.base.Predicate; import com.google.common.collect.Lists; +import com.google.common.collect.Ordering; import fr.ulr.sammoa.persistence.Strate; import fr.ulr.sammoa.persistence.Strates; import org.jdesktop.beans.AbstractSerializableBean; @@ -77,7 +78,10 @@ @Override public int compareTo(StrateModel o) { - int result = Strates.onCode().compare(getSource(), o.getSource()); + int result = Ordering + .from(Strates.orderBySector()) + .nullsFirst() + .compare(getSource(), o.getSource()); return result; }
participants (1)
-
fdesbois@users.forge.codelutin.com