Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe Commits: c9e5dd41 by Tony Chemit at 2020-08-05T16:12:49+02:00 [UI] Correction des libellés des tables de référence du schéma observe.longline dans Observe - See #1584 - - - - - 22 changed files: - client-core/src/main/java/fr/ird/observe/client/db/ObserveSwingDataSource.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/AdminTabUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/content/ref/ContentReferenceUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/content/ref/ReferenceHomeUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/content/ref/ReferenceHomeUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDeleteUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDeleteUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDesactivateUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDesactivateUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDisplayUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDisplayUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageUIHandlerSupport.java - client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/referential/ReferentialNavigationTreeNode.java - client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/referential/ReferentialsNavigationTreeNodeSupport.java - client-core/src/main/java/fr/ird/observe/client/ui/tree/selection/nodes/ReferentialsSelectionTreeNode.java - common-dto/src/main/java/fr/ird/observe/dto/decoration/I18nDecoratorHelper.java - common-dto/src/main/java/fr/ird/observe/spi/map/ImmutableSetMap.java - dto/src/main/i18n/getters/eugene.getter - observe-i18n/src/main/i18n/translations/observe_en_GB.properties - observe-i18n/src/main/i18n/translations/observe_es_ES.properties - observe-i18n/src/main/i18n/translations/observe_fr_FR.properties - templates/src/main/java/fr/ird/observe/toolkit/eugene/templates/DtoReferenceTransformer.java Changes: ===================================== client-core/src/main/java/fr/ird/observe/client/db/ObserveSwingDataSource.java ===================================== @@ -552,12 +552,11 @@ public class ObserveSwingDataSource extends AbstractSerializableBean implements return ObserveServiceMainFactory.get().newService(observeServiceInitializer, serviceType); } - public ImmutableSetDtoMap<ReferentialDtoReference> getReferentialMap(ImmutableSetStringMap referentialIds) { - - ImmutableSetDtoMap.Builder<ReferentialDtoReference> result = ImmutableSetDtoMap.builder(); - for (Class<? extends ReferentialDtoReference> dtoType : referentialIds.referentialReferenceTypes()) { + public ImmutableSetDtoMap<ReferentialDtoReference<?, ?>> getReferentialMap(ImmutableSetStringMap referentialIds) { + ImmutableSetDtoMap.Builder<ReferentialDtoReference<?, ?>> result = ImmutableSetDtoMap.builder(); + for (Class<? extends ReferentialDtoReference<?, ?>> dtoType : referentialIds.referentialReferenceTypes()) { Set<String> ids = referentialIds.get(dtoType); - Set<ReferentialDtoReference> references = getReferentialReferenceSet(dtoType).toSet().stream() + Set<ReferentialDtoReference<?, ?>> references = getReferentialReferenceSet(dtoType).toSet().stream() .filter(r -> ids.contains(r.getId())) .collect(Collectors.toSet()); result.put(dtoType, references); ===================================== client-core/src/main/java/fr/ird/observe/client/ui/admin/AdminTabUIHandler.java ===================================== @@ -284,8 +284,8 @@ public class AdminTabUIHandler<U extends AdminTabUI> { String message = t("observe.message.show.usage.for.missingReferentials2", centralSourceLabel, targetSourceLabel); - ImmutableSetDtoMap<ReferentialDtoReference> usages = centralSource.getReferentialMap(missingReferentialResult.getMissingIds()); - UsageForDisplayUI usagesUI = UsageForDisplayUI.build(message, usages); + ImmutableSetDtoMap<ReferentialDtoReference<?,?>> usages = centralSource.getReferentialMap(missingReferentialResult.getMissingIds()); + UsageForDisplayUI<?> usagesUI = UsageForDisplayUI.build(message, usages); int response = UIHelper.askUser(null, t("observe.title.can.not.export.data2", targetSourceLabel), @@ -302,12 +302,12 @@ public class AdminTabUIHandler<U extends AdminTabUI> { log.info(String.format("Base «%s» - Insertion des référentiels manquants.", targetSourceLabel)); - for (Class<? extends ReferentialDtoReference> key : usages.referentialReferenceTypes()) { - Set<? extends ReferentialDtoReference> references = usages.get(key); - String type = t(ObserveI18nDecoratorHelper.getTypePluralI18nKey(key)); + for (Class<? extends ReferentialDtoReference<?,?>> key : usages.referentialReferenceTypes()) { + Set<? extends ReferentialDtoReference<?,?>> references = usages.get(key); + String type = t(ObserveI18nDecoratorHelper.getTypeI18nKey(key)); sendMessage(t("observe.actions.exportData.message.add.missing.referentials2", targetSourceLabel, references.size(), type)); - Decorator decorator = decoratorService.getReferenceDecorator(key); - for (DtoReference reference : references) { + Decorator<?> decorator = decoratorService.getReferenceDecorator(key); + for (DtoReference<?,?> reference : references) { sendMessage(t("observe.actions.exportData.message.add.missing.referential", decorator.toString(reference))); } } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/ref/ContentReferenceUI.jaxx ===================================== @@ -19,8 +19,8 @@ --> <fr.ird.observe.client.ui.content.ContentUI abstract='true' superGenericType='E, U' - title="{pluralTypeI18nKey}" - contentTitle='{t("observe.type.management", pluralTypeI18nKey)}' + title="{typeI18nKey}" + contentTitle='{t("observe.type.management", typeI18nKey)}' genericType='E extends ReferentialDto, R extends ReferentialDtoReference<E, R>, U extends ContentReferenceUI<E, R, U>'> <import> @@ -57,11 +57,9 @@ static io.ultreia.java4all.i18n.I18n.t </import> - <java.lang.String id='pluralTypeI18nKey' - initializer='t(ObserveI18nDecoratorHelper.getTypePluralI18nKey(bean.getClass()))'/> <java.lang.String id='typeI18nKey' initializer='t(ObserveI18nDecoratorHelper.getTypeI18nKey(bean.getClass()))'/> - <java.lang.String id='listText' initializer='t("observe.type.list", pluralTypeI18nKey)'/> + <java.lang.String id='listText' initializer='t("observe.type.list", typeI18nKey)'/> <java.lang.String id='createToolTip' initializer='t("observe.type.action.create", typeI18nKey)'/> <java.lang.String id='detailToolTip' initializer='t("observe.type.action.view", typeI18nKey)'/> <java.lang.String id='modifyToolTip' initializer='t("observe.type.action.edit", typeI18nKey)'/> ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/ref/ReferenceHomeUIHandler.java ===================================== @@ -92,7 +92,7 @@ public class ReferenceHomeUIHandler extends ContentUIHandler<ProgramDto, Referen for (Class<? extends ReferentialDto> type : ui.getModel().getTypes()) { - String text = t(ObserveI18nDecoratorHelper.getTypePluralI18nKey(type)); + String text = t(ObserveI18nDecoratorHelper.getTypeI18nKey(type)); JButton button = new JButton(text); button.addActionListener(e -> navigation.selectSafeNode(referentialNode.findChildByClass(type))); panel.add(button); ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/ref/ReferenceHomeUIModel.java ===================================== @@ -68,7 +68,7 @@ public abstract class ReferenceHomeUIModel extends ContentUIModel<ProgramDto> { protected ReferenceHomeUIModel(List<Class<? extends ReferentialDto>> types, String nodeName) { super(ProgramDto.class); - this.types = ImmutableList.copyOf(ObserveI18nDecoratorHelper.sortPluralTypes(types, ObserveSwingApplicationContext.get().getConfig().getLocale())); + this.types = ImmutableList.copyOf(ObserveI18nDecoratorHelper.sortTypes(types, ObserveSwingApplicationContext.get().getConfig().getLocale())); this.nodeName = nodeName; } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDeleteUI.jaxx ===================================== @@ -21,7 +21,7 @@ <!-- Interface graphique pour afficher la liste des usages d'une entitee donnee. --> -<JPanel layout='{new BorderLayout()}' genericType="R extends ReferentialDtoReference"> +<JPanel layout='{new BorderLayout()}' genericType="R extends ReferentialDtoReference< ?, R>"> <import> @@ -37,7 +37,7 @@ Interface graphique pour afficher la liste des usages d'une entitee donnee. <script><![CDATA[ -public static <R extends ReferentialDtoReference> UsageForDeleteUI<R> build(String message, ImmutableSetDtoMap<? extends DtoReference> usages, List references) { +public static <R extends ReferentialDtoReference<?, R>> UsageForDeleteUI<R> build(String message, ImmutableSetDtoMap<? extends DtoReference> usages, List references) { return new UsageForDeleteUI<>(new JAXXInitialContext().add(message).add(usages).add(references)); } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDeleteUIHandler.java ===================================== @@ -36,7 +36,7 @@ import javax.swing.JPanel; * @author Tony Chemit - dev@tchemit.fr * @since 5.1 */ -public class UsageForDeleteUIHandler<R extends ReferentialDtoReference> extends UsageUIHandlerSupport<R, UsageForDeleteUI<R>> { +public class UsageForDeleteUIHandler<R extends ReferentialDtoReference<?, R>> extends UsageUIHandlerSupport<R, UsageForDeleteUI<R>> { @Override protected JLabel getMessage() { ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDesactivateUI.jaxx ===================================== @@ -21,7 +21,7 @@ <!-- Interface graphique pour afficher la liste des usages d'une entitee donnee. --> -<JPanel layout='{new BorderLayout()}' genericType="R extends ReferentialDtoReference"> +<JPanel layout='{new BorderLayout()}' genericType="R extends ReferentialDtoReference< ?, R>"> <import> fr.ird.observe.dto.reference.DtoReference @@ -37,7 +37,7 @@ Interface graphique pour afficher la liste des usages d'une entitee donnee. <script><![CDATA[ -public static <R extends ReferentialDtoReference> UsageForDesactivateUI<R> build(String message, ImmutableSetDtoMap<? extends DtoReference> usages, List references) { +public static <R extends ReferentialDtoReference<?, R>> UsageForDesactivateUI<R> build(String message, ImmutableSetDtoMap<? extends DtoReference> usages, List references) { return new UsageForDesactivateUI<>(new JAXXInitialContext().add(message).add(usages).add(references)); } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDesactivateUIHandler.java ===================================== @@ -36,7 +36,7 @@ import javax.swing.JPanel; * @author Tony Chemit - dev@tchemit.fr * @since 5.1 */ -public class UsageForDesactivateUIHandler<R extends ReferentialDtoReference> extends UsageUIHandlerSupport<R, UsageForDesactivateUI<R>> { +public class UsageForDesactivateUIHandler<R extends ReferentialDtoReference<?, R>> extends UsageUIHandlerSupport<R, UsageForDesactivateUI<R>> { @Override protected JLabel getMessage() { ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDisplayUI.jaxx ===================================== @@ -21,7 +21,7 @@ <!-- Interface graphique pour afficher la liste des usages d'une entitee donnee. --> -<JPanel layout='{new BorderLayout()}' genericType="R extends ReferentialDtoReference"> +<JPanel layout='{new BorderLayout()}' genericType="R extends ReferentialDtoReference< ?, R>"> <import> @@ -35,7 +35,7 @@ Interface graphique pour afficher la liste des usages d'une entitee donnee. <script><![CDATA[ -public static <R extends ReferentialDtoReference> UsageForDisplayUI<R> build(String message, ImmutableSetDtoMap<? extends DtoReference> usages) { +public static <R extends ReferentialDtoReference<?, R>> UsageForDisplayUI<R> build(String message, ImmutableSetDtoMap<? extends DtoReference> usages) { return new UsageForDisplayUI<>(new JAXXInitialContext().add(message).add(usages)); } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageForDisplayUIHandler.java ===================================== @@ -34,7 +34,7 @@ import javax.swing.JPanel; * @author Tony Chemit - dev@tchemit.fr * @since 5.1 */ -public class UsageForDisplayUIHandler<R extends ReferentialDtoReference> extends UsageUIHandlerSupport<R, UsageForDisplayUI<R>> { +public class UsageForDisplayUIHandler<R extends ReferentialDtoReference<?, R>> extends UsageUIHandlerSupport<R, UsageForDisplayUI<R>> { @Override protected JLabel getMessage() { ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/ref/usage/UsageUIHandlerSupport.java ===================================== @@ -64,40 +64,60 @@ import static io.ultreia.java4all.i18n.I18n.t; * @author Tony Chemit - dev@tchemit.fr * @since 5.1 */ -public abstract class UsageUIHandlerSupport<R extends ReferentialDtoReference, U extends JAXXObject> implements UIHandler<U> { +public abstract class UsageUIHandlerSupport<R extends ReferentialDtoReference<?, R>, U extends JAXXObject> implements UIHandler<U> { U ui; + public static JButton findButton(Container c, String text) { + + for (Component component : c.getComponents()) { + if (component instanceof JButton) { + if (text.equals(((JButton) component).getText())) { + return (JButton) component; + } + continue; + } + if (component instanceof Container) { + JButton button = findButton((Container) component, text); + if (button != null) { + return button; + } + } + } + return null; + } + protected abstract JLabel getMessage(); protected abstract JPanel getUsages(); protected abstract JaxxComboBox<R> getReplace(); - @Override + @Override public void beforeInit(U ui) { this.ui = ui; } - @Override + @SuppressWarnings({"rawtypes", "unchecked"}) + @Override public void afterInit(U ui) { String message = ui.getContextValue(String.class); getMessage().setText(message); - ImmutableSetDtoMap<ReferentialDtoReference> usages = ui.getContextValue(ImmutableSetDtoMap.class); + ImmutableSetDtoMap<ReferentialDtoReference<?, ?>> usages = ui.getContextValue(ImmutableSetDtoMap.class); if (usages.isEmpty()) { getUsages().add(new JLabel(t("observe.message.no.usage.for.entity"))); } else { - for (Class<? extends ReferentialDtoReference> dtoType : usages.referentialReferenceTypes()) { + for (Class<? extends ReferentialDtoReference<?, ?>> dtoType : usages.referentialReferenceTypes()) { Set references = usages.get(dtoType); String typeTitle = t(ObserveI18nDecoratorHelper.getTypeI18nKey(dtoType)); - addReferentialReferenceUsages(dtoType, references, typeTitle); + addReferentialReferenceUsages((Class) dtoType, references, typeTitle); } - for (Class<? extends DataDtoReference> dtoType : usages.dataReferenceTypes()) { + for (Class<? extends DataDtoReference<?, ?>> dtoType : usages.dataReferenceTypes()) { Set references = usages.get(dtoType); String typeTitle = t(ObserveI18nDecoratorHelper.getTypeI18nKey(dtoType)); - addDataReferenceUsages(dtoType, references, typeTitle); + addDataReferenceUsages((Class) dtoType, references, typeTitle); } } @@ -124,9 +144,9 @@ public abstract class UsageUIHandlerSupport<R extends ReferentialDtoReference, U }); } - protected <D extends DataDto, R extends DataDtoReference<D, R>> void addDataReferenceUsages(Class<R> dtoType, - Set<R> references, - String typeTitle) { + protected <D extends DataDto, RR extends DataDtoReference<D, RR>> void addDataReferenceUsages(Class<RR> dtoType, + Set<RR> references, + String typeTitle) { String typetitle = n("observe.common.Dto.label.usage.data.title"); typetitle = t(typetitle, typeTitle, references.size()); @@ -137,10 +157,9 @@ public abstract class UsageUIHandlerSupport<R extends ReferentialDtoReference, U buildUsagePanel(decorator, references, typetitle); } - - protected <D extends ReferentialDto, R extends ReferentialDtoReference<D, R>> void addReferentialReferenceUsages(Class<R> referenceType, - Set<R> references, - String typeTitle) { + protected <D extends ReferentialDto, RR extends ReferentialDtoReference<D, RR>> void addReferentialReferenceUsages(Class<RR> referenceType, + Set<RR> references, + String typeTitle) { String title = n("observe.common.Dto.label.usage.referential.title"); title = t(title, typeTitle, references.size()); @@ -151,7 +170,7 @@ public abstract class UsageUIHandlerSupport<R extends ReferentialDtoReference, U buildUsagePanel(decorator, references, title); } - protected <D extends IdDto, R extends DtoReference<D, R>> void buildUsagePanel(Decorator<?> decorator, Set<R> references, String typetitle) { + protected <D extends IdDto, RR extends DtoReference<D, RR>> void buildUsagePanel(Decorator<?> decorator, Set<RR> references, String typeTitle) { List<String> data = new ArrayList<>(references.size()); data.addAll(references.stream().map(decorator::toString).collect(Collectors.toList())); @@ -163,12 +182,12 @@ public abstract class UsageUIHandlerSupport<R extends ReferentialDtoReference, U pane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); pane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); pane.setMinimumSize(new Dimension(300, 30)); - pane.setColumnHeaderView(new JLabel(typetitle)); + pane.setColumnHeaderView(new JLabel(typeTitle)); pane.setViewportView(l); getUsages().add(pane); } - private class DisabledItemSelectionModel extends DefaultListSelectionModel { + private static class DisabledItemSelectionModel extends DefaultListSelectionModel { private static final long serialVersionUID = 1L; @@ -183,23 +202,4 @@ public abstract class UsageUIHandlerSupport<R extends ReferentialDtoReference, U } - public static JButton findButton(Container c, String text) { - - for (Component component : c.getComponents()) { - if (component instanceof JButton) { - if (text.equals(((JButton) component).getText())) { - return (JButton) component; - } - continue; - } - if (component instanceof Container) { - JButton button = findButton((Container) component, text); - if (button != null) { - return button; - } - } - } - return null; - } - } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/referential/ReferentialNavigationTreeNode.java ===================================== @@ -40,9 +40,10 @@ import static io.ultreia.java4all.i18n.I18n.t; public class ReferentialNavigationTreeNode<D extends ReferentialDto> extends ClassNavigationTreeNode<D> { ReferentialNavigationTreeNode(Class<D> data) { - super(data, true, t(ObserveI18nDecoratorHelper.getTypePluralI18nKey(data))); + super(data, true, t(ObserveI18nDecoratorHelper.getTypeI18nKey(data))); } + @SuppressWarnings({"unchecked", "rawtypes"}) @Override public Class<? extends ContentUI<?, ?>> getContentClass() { String packageName = getData().getPackage().getName(); @@ -55,7 +56,7 @@ public class ReferentialNavigationTreeNode<D extends ReferentialDto> extends Cla } else { packagePrefix = "common."; } - //FIXME Use a ClassMaping + //FIXME Use a ClassMapping String className = String.format("fr.ird.observe.client.ui.content.ref.%s%sUI", packagePrefix, StringUtils.removeEnd(getData().getSimpleName(), "Dto")); try { return (Class) Class.forName(className); ===================================== client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/referential/ReferentialsNavigationTreeNodeSupport.java ===================================== @@ -38,8 +38,8 @@ public abstract class ReferentialsNavigationTreeNodeSupport extends StringNaviga ReferentialsNavigationTreeNodeSupport(String name, ImmutableSet<Class<? extends ReferentialDto>> types) { super(name, true); - for (Class<? extends ReferentialDto> aClass : ObserveI18nDecoratorHelper.sortPluralTypes(types, ObserveSwingApplicationContext.get().getConfig().getLocale())) { - ReferentialNavigationTreeNode child = new ReferentialNavigationTreeNode<>(aClass); + for (Class<? extends ReferentialDto> aClass : ObserveI18nDecoratorHelper.sortTypes(types, ObserveSwingApplicationContext.get().getConfig().getLocale())) { + ReferentialNavigationTreeNode<?> child = new ReferentialNavigationTreeNode<>(aClass); add(child); } } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/tree/selection/nodes/ReferentialsSelectionTreeNode.java ===================================== @@ -44,8 +44,8 @@ public class ReferentialsSelectionTreeNode extends SelectionTreeNodeSupport<Stri public static ReferentialsSelectionTreeNode of(String name, ImmutableSet<Class<? extends ReferentialDto>> types) { ReferentialsSelectionTreeNode result = new ReferentialsSelectionTreeNode(t(name)); - for (Class<? extends ReferentialDto> aClass : ObserveI18nDecoratorHelper.sortPluralTypes(types, ObserveSwingApplicationContext.get().getConfig().getLocale())) { - ReferentialSelectionTreeNode child = new ReferentialSelectionTreeNode<>(aClass); + for (Class<? extends ReferentialDto> aClass : ObserveI18nDecoratorHelper.sortTypes(types, ObserveSwingApplicationContext.get().getConfig().getLocale())) { + ReferentialSelectionTreeNode<?> child = new ReferentialSelectionTreeNode<>(aClass); result.add(child); } ===================================== common-dto/src/main/java/fr/ird/observe/dto/decoration/I18nDecoratorHelper.java ===================================== @@ -51,28 +51,20 @@ public abstract class I18nDecoratorHelper extends BeanPropertyI18nKeyProducerPro return ObserveUtil.sortTypes(types, klass -> t(getTypeI18nKey(klass)), locale); } - public static <C extends Class<?>> List<C> sortPluralTypes(Collection<C> types, Locale locale) { - return ObserveUtil.sortTypes(types, klass -> t(getTypePluralI18nKey(klass)), locale); - } - - public static String getPropertyName(Class key) { + public static String getPropertyName(Class<?> key) { String name = IdHelper.cleanId(key); return Introspector.decapitalize(name); } - public static String getTitle(Class key) { + public static String getTitle(Class<?> key) { return load(key) + ".title"; } - public static String getTypeI18nKey(Class key) { + public static String getTypeI18nKey(Class<?> key) { return load(key) + ".type"; } - public static String getTypePluralI18nKey(Class key) { - return load(key) + ".types"; - } - - public static String getPropertyI18nKey(Class type, String propertyName) { + public static String getPropertyI18nKey(Class<?> type, String propertyName) { I18nDecoratorHelper i18nDecoratorHelper = get(); return i18nDecoratorHelper.getDefaultLabelsBuilder().getI18nPropertyKey(type, propertyName); } @@ -118,7 +110,7 @@ public abstract class I18nDecoratorHelper extends BeanPropertyI18nKeyProducerPro result.append(String.format("%1$td/%1$tm/%1$tY", date)); } - private static String load(Class key) { + private static String load(Class<?> key) { I18nDecoratorHelper i18nDecoratorHelper = get(); return i18nDecoratorHelper.getCommonPrefix() + i18nDecoratorHelper.getDefaultLabelsBuilder().getI18nTypeKey(key); } ===================================== common-dto/src/main/java/fr/ird/observe/spi/map/ImmutableSetMap.java ===================================== @@ -77,12 +77,12 @@ public abstract class ImmutableSetMap<V> implements ObserveDto { } @SuppressWarnings("unchecked") - public Set<Class<? extends ReferentialDtoReference>> referentialReferenceTypes() { + public Set<Class<? extends ReferentialDtoReference<?, ?>>> referentialReferenceTypes() { return (Set) types.values().stream().filter(IdHelper::isReferential).collect(Collectors.toSet()); } @SuppressWarnings("unchecked") - public Set<Class<? extends DataDtoReference>> dataReferenceTypes() { + public Set<Class<? extends DataDtoReference<?,?>>> dataReferenceTypes() { return (Set) types.values().stream().filter(IdHelper::isData).collect(Collectors.toSet()); } ===================================== dto/src/main/i18n/getters/eugene.getter ===================================== @@ -1,231 +1,132 @@ observe.common.ActivityLonglineDto.title observe.common.ActivityLonglineDto.type -observe.common.ActivityLonglineDto.types observe.common.ActivitySeineDto.title observe.common.ActivitySeineDto.type -observe.common.ActivitySeineDto.types observe.common.BaitHaulingStatusDto.type -observe.common.BaitHaulingStatusDto.types observe.common.BaitSettingStatusDto.type -observe.common.BaitSettingStatusDto.types observe.common.BaitTypeDto.type -observe.common.BaitTypeDto.types observe.common.BaitsCompositionDto.title observe.common.BaitsCompositionDto.type -observe.common.BaitsCompositionDto.types observe.common.BasketDto.type -observe.common.BasketDto.types observe.common.BranchlineDto.title observe.common.BranchlineDto.type -observe.common.BranchlineDto.types observe.common.BranchlinesCompositionDto.title observe.common.BranchlinesCompositionDto.type -observe.common.BranchlinesCompositionDto.types observe.common.CatchFateLonglineDto.type -observe.common.CatchFateLonglineDto.types observe.common.CatchLonglineDto.title observe.common.CatchLonglineDto.type -observe.common.CatchLonglineDto.types observe.common.CountryDto.type -observe.common.CountryDto.types observe.common.DataQualityDto.type -observe.common.DataQualityDto.types observe.common.DetectionModeDto.type -observe.common.DetectionModeDto.types observe.common.EncounterDto.title observe.common.EncounterDto.type -observe.common.EncounterDto.types observe.common.EncounterTypeDto.type -observe.common.EncounterTypeDto.types observe.common.FloatingObjectDto.title observe.common.FloatingObjectDto.type -observe.common.FloatingObjectDto.types observe.common.FloatingObjectPartDto.title observe.common.FloatingObjectPartDto.type -observe.common.FloatingObjectPartDto.types observe.common.FloatlinesCompositionDto.title observe.common.FloatlinesCompositionDto.type -observe.common.FloatlinesCompositionDto.types observe.common.FpaZoneDto.type -observe.common.FpaZoneDto.types observe.common.GearCaracteristicDto.type -observe.common.GearCaracteristicDto.types observe.common.GearCaracteristicTypeDto.type -observe.common.GearCaracteristicTypeDto.types observe.common.GearDto.type -observe.common.GearDto.types observe.common.GearUseFeaturesLonglineDto.title observe.common.GearUseFeaturesLonglineDto.type -observe.common.GearUseFeaturesLonglineDto.types observe.common.GearUseFeaturesMeasurementLonglineDto.title observe.common.GearUseFeaturesMeasurementSeineDto.title observe.common.GearUseFeaturesSeineDto.title observe.common.GearUseFeaturesSeineDto.type -observe.common.GearUseFeaturesSeineDto.types observe.common.HarbourDto.type -observe.common.HarbourDto.types observe.common.HealthStatusDto.type -observe.common.HealthStatusDto.types observe.common.HookPositionDto.type -observe.common.HookPositionDto.types observe.common.HookSizeDto.type -observe.common.HookSizeDto.types observe.common.HookTypeDto.type -observe.common.HookTypeDto.types observe.common.HooksCompositionDto.title observe.common.HooksCompositionDto.type -observe.common.HooksCompositionDto.types observe.common.ItemHorizontalPositionDto.type -observe.common.ItemHorizontalPositionDto.types observe.common.ItemVerticalPositionDto.type -observe.common.ItemVerticalPositionDto.types observe.common.LengthLengthParameterDto.type -observe.common.LengthLengthParameterDto.types observe.common.LengthWeightParameterDto.type -observe.common.LengthWeightParameterDto.types observe.common.LightsticksColorDto.type -observe.common.LightsticksColorDto.types observe.common.LightsticksTypeDto.type -observe.common.LightsticksTypeDto.types observe.common.LineTypeDto.type -observe.common.LineTypeDto.types observe.common.MaturityStatusDto.type -observe.common.MaturityStatusDto.types observe.common.MitigationTypeDto.type -observe.common.MitigationTypeDto.types observe.common.NonTargetCatchDto.title observe.common.NonTargetCatchDto.type -observe.common.NonTargetCatchDto.types observe.common.NonTargetCatchReleaseConformityDto.type -observe.common.NonTargetCatchReleaseConformityDto.types observe.common.NonTargetCatchReleaseDto.title observe.common.NonTargetCatchReleaseDto.type -observe.common.NonTargetCatchReleaseDto.types observe.common.NonTargetCatchReleaseStatusDto.type -observe.common.NonTargetCatchReleaseStatusDto.types observe.common.NonTargetCatchReleasingTimeDto.type -observe.common.NonTargetCatchReleasingTimeDto.types observe.common.NonTargetLengthDto.title observe.common.NonTargetLengthDto.type -observe.common.NonTargetLengthDto.types observe.common.ObjectMaterialDto.type -observe.common.ObjectMaterialDto.types observe.common.ObjectMaterialTypeDto.type -observe.common.ObjectMaterialTypeDto.types observe.common.ObjectObservedSpeciesDto.title observe.common.ObjectObservedSpeciesDto.type -observe.common.ObjectObservedSpeciesDto.types observe.common.ObjectOperationDto.type -observe.common.ObjectOperationDto.types observe.common.ObjectSchoolEstimateDto.title observe.common.ObjectSchoolEstimateDto.type -observe.common.ObjectSchoolEstimateDto.types observe.common.ObservedSystemDto.type -observe.common.ObservedSystemDto.types observe.common.OceanDto.type -observe.common.OceanDto.types observe.common.OrganismDto.type -observe.common.OrganismDto.types observe.common.PersonDto.type -observe.common.PersonDto.types observe.common.ProgramDto.type -observe.common.ProgramDto.types observe.common.ReasonForDiscardDto.type -observe.common.ReasonForDiscardDto.types observe.common.ReasonForNoFishingDto.type -observe.common.ReasonForNoFishingDto.types observe.common.ReasonForNullSetDto.type -observe.common.ReasonForNullSetDto.types observe.common.RouteDto.type -observe.common.RouteDto.types observe.common.SchoolEstimateDto.title observe.common.SchoolEstimateDto.type -observe.common.SchoolEstimateDto.types observe.common.SectionDto.type -observe.common.SectionDto.types observe.common.SensorBrandDto.type -observe.common.SensorBrandDto.types observe.common.SensorDataFormatDto.type -observe.common.SensorDataFormatDto.types observe.common.SensorTypeDto.type -observe.common.SensorTypeDto.types observe.common.SensorUsedDto.title observe.common.SensorUsedDto.type -observe.common.SensorUsedDto.types observe.common.SetLonglineDto.title observe.common.SetLonglineDto.type -observe.common.SetLonglineDto.types observe.common.SetLonglineGlobalCompositionDto.title observe.common.SetSeineDto.title observe.common.SetSeineDto.type -observe.common.SetSeineDto.types observe.common.SettingShapeDto.type -observe.common.SettingShapeDto.types observe.common.SexDto.type -observe.common.SexDto.types observe.common.ShipOwnerDto.type -observe.common.ShipOwnerDto.types observe.common.SizeMeasureDto.title observe.common.SizeMeasureDto.type -observe.common.SizeMeasureDto.types observe.common.SizeMeasureTypeDto.type -observe.common.SizeMeasureTypeDto.types observe.common.SpeciesDto.type -observe.common.SpeciesDto.types observe.common.SpeciesFateDto.type -observe.common.SpeciesFateDto.types observe.common.SpeciesGroupDto.type -observe.common.SpeciesGroupDto.types observe.common.SpeciesGroupReleaseModeDto.type -observe.common.SpeciesGroupReleaseModeDto.types observe.common.SpeciesListDto.type -observe.common.SpeciesListDto.types observe.common.SpeciesStatusDto.type -observe.common.SpeciesStatusDto.types observe.common.StomachFullnessDto.type -observe.common.StomachFullnessDto.types observe.common.SurroundingActivityDto.type -observe.common.SurroundingActivityDto.types observe.common.TargetCatchDto.title observe.common.TargetCatchDto.type -observe.common.TargetCatchDto.types observe.common.TargetLengthDto.title observe.common.TargetLengthDto.type -observe.common.TargetLengthDto.types observe.common.TdrDto.title observe.common.TdrDto.type -observe.common.TdrDto.types observe.common.TransmittingBuoyDto.title observe.common.TransmittingBuoyDto.type -observe.common.TransmittingBuoyDto.types observe.common.TransmittingBuoyOperationDto.type -observe.common.TransmittingBuoyOperationDto.types observe.common.TransmittingBuoyTypeDto.type -observe.common.TransmittingBuoyTypeDto.types observe.common.TripLonglineDto.title observe.common.TripLonglineDto.type -observe.common.TripLonglineDto.types observe.common.TripSeineDto.title observe.common.TripSeineDto.type -observe.common.TripSeineDto.types observe.common.TripTypeDto.type -observe.common.TripTypeDto.types observe.common.VesselActivityLonglineDto.type -observe.common.VesselActivityLonglineDto.types observe.common.VesselActivitySeineDto.type -observe.common.VesselActivitySeineDto.types observe.common.VesselDto.type -observe.common.VesselDto.types observe.common.VesselSizeCategoryDto.type -observe.common.VesselSizeCategoryDto.types observe.common.VesselTypeDto.type -observe.common.VesselTypeDto.types observe.common.WeightCategoryDto.type -observe.common.WeightCategoryDto.types observe.common.WeightMeasureDto.title observe.common.WeightMeasureDto.type -observe.common.WeightMeasureDto.types observe.common.WeightMeasureTypeDto.type -observe.common.WeightMeasureTypeDto.types observe.common.WindDto.type -observe.common.WindDto.types ===================================== observe-i18n/src/main/i18n/translations/observe_en_GB.properties ===================================== @@ -2214,8 +2214,8 @@ observe.type.action.view=View selected %s observe.type.activityLongline.unsaved=New activity observe.type.activitySeine.unsaved=New activity observe.type.floatingObject.unsaved=New floating object (FOB) -observe.type.list=List of %s -observe.type.management=Management of %s +observe.type.list=List of referential of type `%s` +observe.type.management=Management of referential of type `%s` observe.type.reference.common=Common Referential observe.type.reference.longline=Longline Referential observe.type.reference.seine=Seine Referential ===================================== observe-i18n/src/main/i18n/translations/observe_es_ES.properties ===================================== @@ -2214,8 +2214,8 @@ observe.type.action.view=Ver los detalles del objeto de tipo '%s' seleccionado observe.type.activityLongline.unsaved=Nueva actividad observe.type.activitySeine.unsaved=Nueva actividad observe.type.floatingObject.unsaved=Nuevo FOB -observe.type.list=Lista de %s -observe.type.management=Gestión de %s +observe.type.list=Lista de Referencial of type `%s` #TODO +observe.type.management=Gestión de Referencial of type `%s` #TODO observe.type.reference.common=Referencial Común observe.type.reference.longline=Referencial de Palangre observe.type.reference.seine=Referencial de Cerco ===================================== observe-i18n/src/main/i18n/translations/observe_fr_FR.properties ===================================== @@ -2214,8 +2214,8 @@ observe.type.action.view=Voir les détails de l'objet de type '%s' sélectionné observe.type.activityLongline.unsaved=Nouvelle activité observe.type.activitySeine.unsaved=Nouvelle activité observe.type.floatingObject.unsaved=Nouvel objet flottant (FOB) -observe.type.list=Liste des %s -observe.type.management=Gestion des %s +observe.type.list=Liste des référentiels de type `%s` +observe.type.management=Gestion des référentiels de type `%s` observe.type.reference.common=Référentiel commun observe.type.reference.longline=Référentiel Palangre observe.type.reference.seine=Référentiel Senne ===================================== templates/src/main/java/fr/ird/observe/toolkit/eugene/templates/DtoReferenceTransformer.java ===================================== @@ -247,7 +247,6 @@ public class DtoReferenceTransformer extends ObjectModelTransformerToJava { String referenceName = beanClass.getName() + "Reference"; i18nGetterFile.addKey("observe.common." + dtoName + ".type"); - i18nGetterFile.addKey("observe.common." + dtoName + ".types"); StringBuilder body = new StringBuilder(); body.append("" /*{ <%=flushMethodName%>(<%=referenceName%>.DEFINITION);}*/); View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/c9e5dd41f3b3dce87565476522... -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/c9e5dd41f3b3dce87565476522... You're receiving this email because of your account on gitlab.com.