This is an automated email from the git hooks/post-receive script. New commit to branch develop-5.x in repository observe. See https://gitlab.nuiton.org/codelutin/observe.git commit 1ef80d4fe8cdaa80a3ad9da27a1d4e15ef327f25 Author: Tony CHEMIT <dev@tchemit.fr> Date: Thu Jan 19 08:40:57 2017 +0100 Une exception apparait si on ouvre l'assistant de changement de connexion et qu'on annule (Fixes #8966) (la vrai correction...) --- .../swing/ui/tree/ObserveTreeHelper.java | 4 +-- .../ui/tree/node/AbstrctReferenceNodeSupport.java | 30 +++++----------------- .../ui/tree/node/DataReferenceNodeSupport.java | 18 +++---------- .../swing/ui/tree/node/ProgramLonglineNode.java | 2 -- .../tree/node/ReferentialReferenceNodeSupport.java | 22 +++------------- .../renderer/AbstractObserveTreeCellRenderer.java | 9 +++---- 6 files changed, 18 insertions(+), 67 deletions(-) diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/ObserveTreeHelper.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/ObserveTreeHelper.java index 193e249..4a20a1a 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/ObserveTreeHelper.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/ObserveTreeHelper.java @@ -561,7 +561,7 @@ public class ObserveTreeHelper extends NavTreeHelper<ObserveNode> { public void reloadSelectedNode(boolean refreshFromParent, boolean refreshChilds) { ObserveNode node = getSelectedNode(); - ((AbstrctReferenceNodeSupport) node).setReloadEntity(true); + ((AbstrctReferenceNodeSupport) node).setReloadEntity(); if (refreshFromParent) { node = node.getParent(); @@ -570,7 +570,7 @@ public class ObserveTreeHelper extends NavTreeHelper<ObserveNode> { } public void reloadNode(ObserveNode node, boolean refreshChilds) { - ((AbstrctReferenceNodeSupport) node).setReloadEntity(true); + ((AbstrctReferenceNodeSupport) node).setReloadEntity(); refreshNode(node, refreshChilds); } diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/AbstrctReferenceNodeSupport.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/AbstrctReferenceNodeSupport.java index 2e391c2..3bae57d 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/AbstrctReferenceNodeSupport.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/AbstrctReferenceNodeSupport.java @@ -22,10 +22,9 @@ package fr.ird.observe.application.swing.ui.tree.node; * #L% */ -import fr.ird.observe.application.swing.ui.tree.ObserveDataProvider; +import fr.ird.observe.application.swing.ui.tree.loadors.AbstractNodeChildLoador; import fr.ird.observe.services.dto.AbstractReference; import fr.ird.observe.services.dto.IdDto; -import fr.ird.observe.application.swing.ui.tree.loadors.AbstractNodeChildLoador; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -54,17 +53,13 @@ public abstract class AbstrctReferenceNodeSupport<E extends IdDto, R extends Abs protected abstract R fetchEntity(); - protected AbstrctReferenceNodeSupport(Class<E> internalClass, R entity) { - this(internalClass, entity, null); - } - protected AbstrctReferenceNodeSupport(Class<E> type, R entity, AbstractNodeChildLoador<?, ?> childLoador) { this(type, entity, null, childLoador); } protected AbstrctReferenceNodeSupport(Class<E> type, R entity, String context, AbstractNodeChildLoador<?, ?> childLoador) { super(type, entity.getId(), context, childLoador, false); - setEntity(entity); + this.entity = entity; } @Override @@ -81,21 +76,7 @@ public abstract class AbstrctReferenceNodeSupport<E extends IdDto, R extends Abs return entity; } - public void setEntity(R entity) { - this.entity = entity; - } - - - protected void loadEntity(ObserveDataProvider oProvider) { - - //FIXME -// if (oProvider.getSelectionModel() != null) { -// -// if (log.isDebugEnabled()) { -// log.debug("try to get entity from selectionModel " + internalClass + " : " + id); -// } -// entity = (ReferenceDto<E>) oProvider.getSelectionModel().getEntityCache(id); -// } + public R getOrLoadEntity() { if (entity == null) { @@ -107,10 +88,11 @@ public abstract class AbstrctReferenceNodeSupport<E extends IdDto, R extends Abs } + return entity; } - public void setReloadEntity(boolean reloadEntity) { - this.reloadEntity = reloadEntity; + public void setReloadEntity() { + this.reloadEntity = true; } } diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/DataReferenceNodeSupport.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/DataReferenceNodeSupport.java index acb70c2..f0aa320 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/DataReferenceNodeSupport.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/DataReferenceNodeSupport.java @@ -24,11 +24,10 @@ package fr.ird.observe.application.swing.ui.tree.node; import fr.ird.observe.application.swing.ObserveOpenDataManager; import fr.ird.observe.application.swing.ObserveSwingApplicationContext; -import fr.ird.observe.application.swing.ui.tree.ObserveDataProvider; +import fr.ird.observe.application.swing.ui.tree.loadors.AbstractNodeChildLoador; import fr.ird.observe.services.dto.DataDto; import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.OpenableDto; -import fr.ird.observe.application.swing.ui.tree.loadors.AbstractNodeChildLoador; import jaxx.runtime.swing.nav.NavBridge; import jaxx.runtime.swing.nav.NavDataProvider; import org.apache.commons.logging.Log; @@ -57,15 +56,8 @@ public abstract class DataReferenceNodeSupport<E extends DataDto> extends Abstrc super(type, entity, null, childLoador); } - protected DataReferenceNodeSupport(Class<E> type, DataReference<E> entity, String context, AbstractNodeChildLoador<?, ?> childLoador) { - super(type, entity, context, childLoador); - } - @Override - public void populateNode(NavBridge<DefaultTreeModel, ObserveNode> bridge, - NavDataProvider provider, - boolean populateChilds) { - + public void populateNode(NavBridge<DefaultTreeModel, ObserveNode> bridge, NavDataProvider provider, boolean populateChilds) { try { super.populateNode(bridge, provider, populateChilds); @@ -75,11 +67,7 @@ public abstract class DataReferenceNodeSupport<E extends DataDto> extends Abstrc if (provider != null && id != null) { - if (entity == null) { - - loadEntity((ObserveDataProvider) provider); - - } + getOrLoadEntity(); if (OpenableDto.class.isAssignableFrom(entity.getType())) { ObserveSwingApplicationContext applicationContext = ObserveSwingApplicationContext.get(); diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/ProgramLonglineNode.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/ProgramLonglineNode.java index 97300f8..0acfa2f 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/ProgramLonglineNode.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/ProgramLonglineNode.java @@ -50,8 +50,6 @@ public class ProgramLonglineNode extends ReferentialReferenceNodeSupport<Program entity, ((GearType) entity.getPropertyValue(ProgramDto.PROPERTY_GEAR_TYPE)).name(), ObserveTreeHelper.getChildLoador(ProgramLonglineNodeChildLoador.class)); - // FIXME kmorin 20151012 pkoi refaire un setEntity alors qu'il est fait dans le super ? - setEntity(entity); } @Override diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/ReferentialReferenceNodeSupport.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/ReferentialReferenceNodeSupport.java index b1d4c59..a856559 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/ReferentialReferenceNodeSupport.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/node/ReferentialReferenceNodeSupport.java @@ -22,10 +22,9 @@ package fr.ird.observe.application.swing.ui.tree.node; * #L% */ -import fr.ird.observe.application.swing.ui.tree.ObserveDataProvider; +import fr.ird.observe.application.swing.ui.tree.loadors.AbstractNodeChildLoador; import fr.ird.observe.services.dto.referential.ReferentialDto; import fr.ird.observe.services.dto.referential.ReferentialReference; -import fr.ird.observe.application.swing.ui.tree.loadors.AbstractNodeChildLoador; import jaxx.runtime.swing.nav.NavBridge; import jaxx.runtime.swing.nav.NavDataProvider; import org.apache.commons.logging.Log; @@ -46,23 +45,12 @@ public abstract class ReferentialReferenceNodeSupport<E extends ReferentialDto> private static final long serialVersionUID = 1L; - protected ReferentialReferenceNodeSupport(Class<E> internalClass, ReferentialReference<E> entity) { - super(internalClass, entity, null); - } - - protected ReferentialReferenceNodeSupport(Class<E> type, ReferentialReference<E> entity, AbstractNodeChildLoador<?, ?> childLoador) { - super(type, entity, null, childLoador); - } - protected ReferentialReferenceNodeSupport(Class<E> type, ReferentialReference<E> entity, String context, AbstractNodeChildLoador<?, ?> childLoador) { super(type, entity, context, childLoador); } @Override - public void populateNode(NavBridge<DefaultTreeModel, ObserveNode> bridge, - NavDataProvider provider, - boolean populateChilds) { - + public void populateNode(NavBridge<DefaultTreeModel, ObserveNode> bridge, NavDataProvider provider, boolean populateChilds) { try { super.populateNode(bridge, provider, populateChilds); @@ -72,11 +60,7 @@ public abstract class ReferentialReferenceNodeSupport<E extends ReferentialDto> if (provider != null && id != null) { - if (entity == null) { - - loadEntity((ObserveDataProvider) provider); - - } + getOrLoadEntity(); } diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/renderer/AbstractObserveTreeCellRenderer.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/renderer/AbstractObserveTreeCellRenderer.java index 6fd8a1c..9445ac9 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/renderer/AbstractObserveTreeCellRenderer.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/tree/renderer/AbstractObserveTreeCellRenderer.java @@ -254,7 +254,7 @@ public abstract class AbstractObserveTreeCellRenderer extends AbstractNavTreeCel return t(node.getId()); } - Class<?> beanType = node.getInternalClass(); + Class beanType = node.getInternalClass(); if (node.isReferentielNode()) { @@ -290,11 +290,10 @@ public abstract class AbstractObserveTreeCellRenderer extends AbstractNavTreeCel if (node instanceof DataReferenceNodeSupport) { DataReferenceNodeSupport<?> entityNodeSupport = (DataReferenceNodeSupport) node; - DataReference entity = entityNodeSupport.getEntity(); - + DataReference entity = entityNodeSupport.getOrLoadEntity(); Objects.requireNonNull(entity, "L'entité doit être chargée dans le noeud: " + node); - Decorator<?> decorator = getDecoratorService().getDataReferenceDecorator((Class) beanType); + Decorator<?> decorator = getDecoratorService().getDataReferenceDecorator(beanType); String result = decorator.toString(entity); if (node instanceof TripSeineNode) { @@ -310,7 +309,7 @@ public abstract class AbstractObserveTreeCellRenderer extends AbstractNavTreeCel Objects.requireNonNull(entity, "L'entité doit être chargée dans le noeud: " + node); - Decorator<?> decorator = getDecoratorService().getReferentialReferenceDecorator((Class) beanType); + Decorator<?> decorator = getDecoratorService().getReferentialReferenceDecorator(beanType); String result = decorator.toString(entity); if (node instanceof ProgramSeineNode || node instanceof ProgramLonglineNode) { -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.