Author: tchemit Date: 2014-05-05 16:01:03 +0200 (Mon, 05 May 2014) New Revision: 1751 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1751 Log: merge from refs #5032 (version 3.4.1) Modified: trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/DecoratorService.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java Modified: trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/DecoratorService.java =================================================================== --- trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/DecoratorService.java 2014-05-05 13:39:18 UTC (rev 1750) +++ trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/DecoratorService.java 2014-05-05 14:01:03 UTC (rev 1751) @@ -63,6 +63,7 @@ public static final String CARACTERISTIC_PARAMETER_ONLY = "parameterOnly"; + public static final String WITH_SURVEY_CODE = "withSurveyCode"; public static final String FROM_PROTOCOL = "fromProtocol"; public static final String GEAR_WITH_RANK_ORDER = "gearWithrankOrder"; @@ -141,6 +142,7 @@ registerTuttiDecorator(Program.class, ONLY_NAME, "${name}$s", SEPARATOR, " - "); registerDecorator(new SpeciesDecorator()); + registerDecorator(WITH_SURVEY_CODE, new SpeciesDecoratorWithSurveyCode()); registerDecorator(FROM_PROTOCOL, new SpeciesFromProtocolDecorator()); registerDecorator(CARACTERISTIC_WITH_UNIT, new SimpleCaracteristicDecorator("${parameterName}$s#${matrixName}$s#${fractionName}$s#${methodName}$s")); @@ -217,6 +219,31 @@ } } + public static class SpeciesDecoratorWithSurveyCode extends TuttiDecorator<Species> implements Cloneable { + + private static final long serialVersionUID = 1L; + + public SpeciesDecoratorWithSurveyCode() throws IllegalArgumentException, NullPointerException { + super(Species.class, "${surveyCode}$s#${name}$s", DecoratorService.SEPARATOR, " - "); + } + + @Override + protected Object onNullValue(Species bean, String token) { + Object result = null; + if (Species.PROPERTY_SURVEY_CODE.equals(token)) { + + // try with refTaxCode + result = bean.getRefTaxCode(); + + if (result ==null) { + + result = t("tutti.propety.no.species.speciesCode"); + } + } + return result; + } + } + public static class SimpleCaracteristicDecorator extends TuttiDecorator<Caracteristic> implements Cloneable { private static final long serialVersionUID = 1L; Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java 2014-05-05 13:39:18 UTC (rev 1750) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java 2014-05-05 14:01:03 UTC (rev 1751) @@ -414,7 +414,7 @@ String prefix, String suffix) { return buildReminderLabelTitle( - decorate(species), + decorate(species, DecoratorService.WITH_SURVEY_CODE), categories, prefix, suffix);