branch feature/7610-2 created (now 437751b)
This is an automated email from the git hooks/post-receive script. New change to branch feature/7610-2 in repository observe. See http://git.codelutin.com/observe.git at 437751b chargement des données des combo et listes dans les écrans de référentiel (refs #7610) This branch includes the following new commits: new 437751b chargement des données des combo et listes dans les écrans de référentiel (refs #7610) The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 437751b3f573876eb15ba9b167c5cc2a7fbc1310 Author: Kevin Morin <morin@codelutin.com> Date: Fri Oct 16 16:32:58 2015 +0200 chargement des données des combo et listes dans les écrans de référentiel (refs #7610) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7610-2 in repository observe. See http://git.codelutin.com/observe.git commit 437751b3f573876eb15ba9b167c5cc2a7fbc1310 Author: Kevin Morin <morin@codelutin.com> Date: Fri Oct 16 16:32:58 2015 +0200 chargement des données des combo et listes dans les écrans de référentiel (refs #7610) --- .../ui/content/ref/ContentReferenceUIHandler.java | 15 +-- .../ref/ReferentialContentUIInitializer.java | 104 +++++++++++++++++++++ 2 files changed, 105 insertions(+), 14 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java index a007745..693bc2e 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java @@ -439,7 +439,7 @@ public class ContentReferenceUIHandler<E extends ReferentialDto> extends Content } }); - fillListWithReferentials(); + uiInitializer.referentialDataUpdated(); // UIHelper.getLayer(ui.getEditKeyTable()).setUI(ui.getEditKeyTableLayerUI()); } @@ -871,19 +871,6 @@ public class ContentReferenceUIHandler<E extends ReferentialDto> extends Content ContentReferenceUI.LIST_VIEW; } - protected void fillListWithReferentials() { - ReferenceSetDto referentialReferenceSet = getReferentialService().getReferentialReferenceSet(getBeanType()); - List<ReferenceDto> data = new ArrayList<>(referentialReferenceSet.getReference()); - - Decorator<ReferenceDto> decorator = ObserveSwingApplicationContext.get().getDecorator(ReferenceDto.class, - getBeanType().getSimpleName()); - DecoratorUtil.sort((JXPathDecorator<ReferenceDto>) decorator, data, 0); - - BeanListHeader list = getUi().getListHeader(); - list.setData(data); - list.putClientProperty("data", data); - } - protected ReferentialService getReferentialService() { return ObserveSwingApplicationContext.get().newService(ReferentialService.class); } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ReferentialContentUIInitializer.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ReferentialContentUIInitializer.java index e56f645..a601fbb 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ReferentialContentUIInitializer.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ReferentialContentUIInitializer.java @@ -22,10 +22,27 @@ package fr.ird.observe.ui.content.ref; * #L% */ +import fr.ird.observe.ObserveSwingApplicationContext; +import fr.ird.observe.services.dto.IdDto; +import fr.ird.observe.services.dto.ReferenceDto; +import fr.ird.observe.services.dto.ReferenceSetDto; import fr.ird.observe.services.dto.referential.ReferentialDto; +import fr.ird.observe.services.service.ReferentialService; import fr.ird.observe.ui.content.ContentUIInitializer; +import fr.ird.observe.ui.content.ObserveContentUI; +import jaxx.runtime.swing.editor.bean.BeanComboBox; +import jaxx.runtime.swing.editor.bean.BeanListHeader; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.nuiton.decorator.Decorator; +import org.nuiton.decorator.DecoratorUtil; +import org.nuiton.decorator.JXPathDecorator; +import org.nuiton.jaxx.widgets.select.FilterableDoubleList; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.LinkedHashSet; +import java.util.List; /** * Created on 11/28/14. @@ -51,4 +68,91 @@ public class ReferentialContentUIInitializer<E extends ReferentialDto, UI extend ui.getEditKeyTableLayerUI().setAcceptedComponentNames(doNotBlockComponentIds); } + + + @Override + protected <E1 extends IdDto> void updateData(BeanComboBox comboBox) { + ObserveSwingApplicationContext context = ObserveSwingApplicationContext.get(); + + // init combobox + Class<? extends ReferentialDto> dtoClass = + (Class<? extends ReferentialDto>) comboBox.getClientProperty(ObserveContentUI.CLIENT_PROPERTY_ENTITY_CLASS); + + Boolean noLoad = (Boolean) comboBox.getClientProperty(ObserveContentUI.CLIENT_PROPERTY_LIST_NO_LOAD); + + List<ReferenceDto> data; + + if (noLoad != null && noLoad) { + + if (log.isInfoEnabled()) { + log.info("Skip loading of entity list [" + dtoClass.getName() + "] (listNoLoad property found)"); + } + data = Collections.emptyList(); + + } else { + + data = new ArrayList<>(); + + // get complete data list from service + ReferentialService service = ObserveSwingApplicationContext.get().newService(ReferentialService.class); + ReferenceSetDto referentialReferenceSet = service.getReferentialReferenceSet(dtoClass); + LinkedHashSet<ReferenceDto> reference = referentialReferenceSet.getReference(); + + data.addAll(reference); + + } + + if (log.isInfoEnabled()) { + log.info("entity list [" + dtoClass.getName() + "] : " + data.size()); + } + + comboBox.setData(data); + } + + @Override + protected <E1 extends IdDto> void updateData(BeanListHeader list) { + + Class<? extends ReferentialDto> dtoClass = + (Class<? extends ReferentialDto>) list.getClientProperty(ObserveContentUI.CLIENT_PROPERTY_ENTITY_CLASS); + + ReferentialService service = ObserveSwingApplicationContext.get().newService(ReferentialService.class); + ReferenceSetDto referentialReferenceSet = service.getReferentialReferenceSet(dtoClass); + + List<ReferenceDto> data = new ArrayList<>(referentialReferenceSet.getReference()); + + Decorator<ReferenceDto> decorator = ObserveSwingApplicationContext.get().getDecorator(ReferenceDto.class, + dtoClass.getSimpleName()); + DecoratorUtil.sort((JXPathDecorator<ReferenceDto>) decorator, data, 0); + + list.setData(data); + list.putClientProperty("data", data); + } + + @Override + protected <E1 extends IdDto> void updateData(FilterableDoubleList list) { + Class<? extends ReferentialDto> dtoClass = + (Class<? extends ReferentialDto>) list.getClientProperty(ObserveContentUI.CLIENT_PROPERTY_ENTITY_CLASS); + List<ReferenceDto> data; + + if (ReferentialDto.class.isAssignableFrom(dtoClass)) { + + ReferentialService service = ObserveSwingApplicationContext.get().newService(ReferentialService.class); + ReferenceSetDto referentialReferenceSet = service.getReferentialReferenceSet(dtoClass); + + data = new ArrayList<>(referentialReferenceSet.getReference()); + + } else { + + data = new ArrayList<>(); + + } + + // sort data from first decorator context + ObserveSwingApplicationContext tx = ObserveSwingApplicationContext.get(); + Decorator<ReferenceDto> decorator = tx.getDecorator(ReferenceDto.class, dtoClass.getSimpleName()); + DecoratorUtil.sort((JXPathDecorator<ReferenceDto>) decorator, data, 0); + + list.setUniverse(data); + list.putClientProperty("data", data); + } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
participants (1)
-
codelutin.com scm