Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: defe4bce by Tony Chemit at 2023-12-07T17:58:18+01:00 [toolkit-api-report] Fix new json adapter (See #2599) - - - - - f7e26769 by Tony Chemit at 2023-12-07T17:58:23+01:00 Correction de la condition de création d'activités ficitives sur l'import avdth - - - - - 2551e5e5 by Tony Chemit at 2023-12-08T11:43:43+01:00 Add nice method in MojoRunnable in execute a simple Runnable - - - - - 04e62ee0 by Tony Chemit at 2023-12-08T11:43:47+01:00 add SuppressWarnings - - - - - d5392cdd by Tony Chemit at 2023-12-08T11:43:52+01:00 [core-persistence-report] fix ReportI18nKeys keys - See #2599 - - - - - 7 changed files: - core/persistence/avdth/src/main/java/fr/ird/observe/persistence/avdth/data/ImportDataContext.java - core/persistence/report/pom.xml - core/persistence/report/src/main/java/fr/ird/observe/persistence/report/ReportI18nKeys.java - toolkit/api-report/src/main/java/fr/ird/observe/report/json/ReportI18nItemArrayDefinitionAdapter.java - toolkit/api-report/src/main/java/fr/ird/observe/report/json/ReportI18nItemDefinitionAdapter.java - toolkit/api-report/src/main/java/fr/ird/observe/report/renderers/HighlightIfEquals18nReferentialValue.java - toolkit/plugin/src/main/java/fr/ird/observe/toolkit/maven/plugin/MojoRunnable.java Changes: ===================================== core/persistence/avdth/src/main/java/fr/ird/observe/persistence/avdth/data/ImportDataContext.java ===================================== @@ -143,6 +143,6 @@ public class ImportDataContext extends ImportReferentialContext { } public void computeCanCreateActivity() { - canCreateActivity = !trip.isLocalmarketFilled() && activityPkToId.isEmpty(); + canCreateActivity = activityPkToId.isEmpty(); } } ===================================== core/persistence/report/pom.xml ===================================== @@ -49,6 +49,10 @@ <artifactId>toolkit-persistence</artifactId> <version>${project.version}</version> </dependency> + <dependency> + <groupId>io.ultreia.java4all.i18n</groupId> + <artifactId>i18n-runtime</artifactId> + </dependency> <dependency> <groupId>io.ultreia.java4all</groupId> <artifactId>java-lang</artifactId> @@ -81,7 +85,7 @@ <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> - <scope>test</scope> + <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> ===================================== core/persistence/report/src/main/java/fr/ird/observe/persistence/report/ReportI18nKeys.java ===================================== @@ -42,21 +42,68 @@ public class ReportI18nKeys implements ReportI18nKeysProducer { public ReportI18nKeys() { Map<String, String> mapping = new TreeMap<>(); - mapping.put("yes", I18n.n("boolean.true")); - mapping.put("no", I18n.n("boolean.false")); - mapping.put("Null", I18n.n("boolean.null")); - mapping.put("unknown", I18n.n("observe.Common.unknown")); - mapping.put("notFilled", I18n.n("observe.Common.notFilled")); - mapping.put("undefined", I18n.n("observe.Common.undefined")); - mapping.put("all", I18n.n("observe.Common.all")); - mapping.put("noCode", I18n.n("observe.Common.no.code")); - mapping.put("count", I18n.n("observe.Common.count")); - mapping.put("totalWeight", I18n.n("observe.Common.totalWeightInTons")); - mapping.put("species", I18n.n("observe.Common.species")); - mapping.put("freeSchoolTypeTotal", I18n.n("observe.Common.freeSchoolTypeTotal")); - mapping.put("objectSchoolTypeTotal", I18n.n("observe.Common.objectSchoolTypeTotal")); - mapping.put("lengthClass", I18n.n("observe.Common.lengthClass")); + mapping.put("@yes@", I18n.n("boolean.true")); + mapping.put("@no@", I18n.n("boolean.false")); + mapping.put("@Null@", I18n.n("boolean.null")); + mapping.put("@unknown@", I18n.n("observe.Common.unknown")); + mapping.put("@notFilled@", I18n.n("observe.Common.notFilled")); + mapping.put("@undefined@", I18n.n("observe.Common.undefined")); + mapping.put("@all@", I18n.n("observe.Common.all")); + mapping.put("@noCode@", I18n.n("observe.Common.no.code")); + mapping.put("@count@", I18n.n("observe.Common.count")); + mapping.put("@totalWeight@", I18n.n("observe.Common.totalWeightInTons")); + mapping.put("@species@", I18n.n("observe.Common.species")); + mapping.put("@freeSchoolTypeTotal@", I18n.n("observe.Common.freeSchoolTypeTotal")); + mapping.put("@objectSchoolTypeTotal@", I18n.n("observe.Common.objectSchoolTypeTotal")); + mapping.put("@lengthClass@", I18n.n("observe.Common.lengthClass")); this.mapping = Collections.unmodifiableMap(mapping); + /* FIXME Use this in each report requires it +i18n.noCode=Aucun code +i18n.noCode.en=No code +i18n.noCode.es=No code ? +i18n.yes=Oui +i18n.yes.en=Yes +i18n.yes.es=Si +i18n.no=Non +i18n.no.en=No +i18n.no.es=No +i18n.Null=Indéterminé +i18n.Null.en=Undefined +i18n.Null.es=Indeterminado +i18n.unknown=Inconnu +i18n.unknown.en=Unknown +i18n.unknown.es=desconocido +i18n.notFilled=Non renseigné +i18n.notFilled.en=Not filled +i18n.notFilled.es= +i18n.undefined=Non défini +i18n.undefined.en=Undefined +i18n.undefined.es=indeterminado +i18n.all=Tous +i18n.all.en=All +i18n.all.es= +i18n.noCode=Aucun code +i18n.noCode.en=No code +i18n.noCode.es= +i18n.count=Effectif +i18n.count.en=Count +i18n.count.es= +i18n.totalWeight=Poids total (t) +i18n.totalWeight.en=Total weight (t) +i18n.totalWeight.es= +i18n.species=Espèce +i18n.species.en=Species +i18n.species.es=Especie +i18n.freeSchoolTypeTotal=Total BL +i18n.freeSchoolTypeTotal.en=Free school type total +i18n.freeSchoolTypeTotal.es= +i18n.objectSchoolTypeTotal=Total BO +i18n.objectSchoolTypeTotal.en=Object school type total +i18n.objectSchoolTypeTotal.es= +i18n.lengthClass=Classe de taille (cm) +i18n.lengthClass.en=Length class (cm) +i18n.lengthClass.es= + */ } public Map<String, String> mapping() { ===================================== toolkit/api-report/src/main/java/fr/ird/observe/report/json/ReportI18nItemArrayDefinitionAdapter.java ===================================== @@ -24,6 +24,7 @@ package fr.ird.observe.report.json; import com.google.auto.service.AutoService; import com.google.gson.JsonDeserializationContext; +import com.google.gson.JsonElement; import com.google.gson.JsonObject; import fr.ird.observe.report.definition.ReportI18nItemArrayDefinition; import fr.ird.observe.report.definition.ReportI18nItemDefinition; @@ -44,7 +45,8 @@ public class ReportI18nItemArrayDefinitionAdapter extends ReportI18nDefinitionSu @Override protected String[] deserialize(JsonDeserializationContext context, JsonObject jsonObject, String labelType) { - return context.deserialize(jsonObject.get(labelType), String[].class); + JsonElement jsonElement = jsonObject.get(labelType); + return jsonElement == null ? null : context.deserialize(jsonElement, String[].class); } @Override ===================================== toolkit/api-report/src/main/java/fr/ird/observe/report/json/ReportI18nItemDefinitionAdapter.java ===================================== @@ -24,6 +24,7 @@ package fr.ird.observe.report.json; import com.google.auto.service.AutoService; import com.google.gson.JsonDeserializationContext; +import com.google.gson.JsonElement; import com.google.gson.JsonObject; import fr.ird.observe.report.definition.ReportI18nItemDefinition; import io.ultreia.java4all.util.json.JsonAdapter; @@ -43,7 +44,8 @@ public class ReportI18nItemDefinitionAdapter extends ReportI18nDefinitionSupport @Override protected String deserialize(JsonDeserializationContext context, JsonObject jsonObject, String labelType) { - return jsonObject.get(labelType).getAsString(); + JsonElement jsonElement = jsonObject.get(labelType); + return jsonElement == null ? null : jsonElement.getAsString(); } @Override ===================================== toolkit/api-report/src/main/java/fr/ird/observe/report/renderers/HighlightIfEquals18nReferentialValue.java ===================================== @@ -43,6 +43,7 @@ import static fr.ird.observe.report.renderers.HighlightIfEquals18nReferentialVal * @author Tony Chemit - dev@tchemit.fr * @since 9.3.0 */ +@SuppressWarnings("rawtypes") @AutoService(ColumnRendererConsumer.class) public class HighlightIfEquals18nReferentialValue implements ColumnRendererConsumer<Parameters> { private final static SingletonSupplier<String> HTML_FUNCTION = ColumnRendererConsumer.htmlFunctions(HighlightIfEquals18nReferentialValue.class); ===================================== toolkit/plugin/src/main/java/fr/ird/observe/toolkit/maven/plugin/MojoRunnable.java ===================================== @@ -45,6 +45,15 @@ public abstract class MojoRunnable implements Runnable { private boolean verbose; private Path temporaryPath; + public static MojoRunnable of(Runnable runner) { + return new MojoRunnable() { + @Override + public void run() { + Objects.requireNonNull(runner).run(); + } + }; + } + public I18nKeySet getGetterFile() { return getterFile; } @@ -81,14 +90,14 @@ public abstract class MojoRunnable implements Runnable { Objects.requireNonNull(temporaryPath); } - public void setTemporaryPath(Path temporaryPath) { - this.temporaryPath = temporaryPath; - } - public Path getTemporaryPath() { return temporaryPath; } + public void setTemporaryPath(Path temporaryPath) { + this.temporaryPath = temporaryPath; + } + public void prepare(MojoRunnable parentRunner) { setLog(parentRunner.log); setGetterFile(parentRunner.getterFile); View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/22dcf3c7700c89fb0848ed80a... -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/22dcf3c7700c89fb0848ed80a... You're receiving this email because of your account on gitlab.com.