Author: tchemit Date: 2014-05-05 15:13:22 +0200 (Mon, 05 May 2014) New Revision: 1745 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1745 Log: fixes #5033 Modified: branches/tutti-3.4.x/tutti-service/src/main/java/fr/ifremer/tutti/service/DecoratorService.java branches/tutti-3.4.x/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java Modified: branches/tutti-3.4.x/tutti-service/src/main/java/fr/ifremer/tutti/service/DecoratorService.java =================================================================== --- branches/tutti-3.4.x/tutti-service/src/main/java/fr/ifremer/tutti/service/DecoratorService.java 2014-05-05 12:47:09 UTC (rev 1744) +++ branches/tutti-3.4.x/tutti-service/src/main/java/fr/ifremer/tutti/service/DecoratorService.java 2014-05-05 13:13:22 UTC (rev 1745) @@ -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: branches/tutti-3.4.x/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java =================================================================== --- branches/tutti-3.4.x/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java 2014-05-05 12:47:09 UTC (rev 1744) +++ branches/tutti-3.4.x/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java 2014-05-05 13:13:22 UTC (rev 1745) @@ -414,7 +414,7 @@ String prefix, String suffix) { return buildReminderLabelTitle( - decorate(species), + decorate(species, DecoratorService.WITH_SURVEY_CODE), categories, prefix, suffix);