mailman.cloud.codelutin.com
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

Observe-commits

Thread Start a new thread
Download
Threads by month
  • ----- 2026 -----
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2025 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2021 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2020 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2019 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2018 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2017 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2016 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2015 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2014 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2013 -----
  • December
  • November
  • October
  • September
observe-commits@list.forge.codelutin.com

May 2018

  • 1 participants
  • 144 discussions
[Git][ultreiaio/ird-observe][develop] [jgitflow-maven-plugin]updating poms for 7.0-RC-14-SNAPSHOT development[skip ci]
by Tony CHEMIT 08 May '18

08 May '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: d12ed299 by Tony CHEMIT at 2018-05-08T21:30:26Z [jgitflow-maven-plugin]updating poms for 7.0-RC-14-SNAPSHOT development[skip ci] - - - - - 13 changed files: - client-configuration/pom.xml - client/pom.xml - dto/pom.xml - observe/pom.xml - persistence/pom.xml - pom.xml - server-configuration/pom.xml - server/pom.xml - services-client/pom.xml - services-local/pom.xml - services/pom.xml - test/pom.xml - validation/pom.xml Changes: ===================================== client-configuration/pom.xml ===================================== --- a/client-configuration/pom.xml +++ b/client-configuration/pom.xml @@ -26,7 +26,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>client-configuration</artifactId> ===================================== client/pom.xml ===================================== --- a/client/pom.xml +++ b/client/pom.xml @@ -26,7 +26,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>client</artifactId> ===================================== dto/pom.xml ===================================== --- a/dto/pom.xml +++ b/dto/pom.xml @@ -27,7 +27,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>dto</artifactId> ===================================== observe/pom.xml ===================================== --- a/observe/pom.xml +++ b/observe/pom.xml @@ -26,7 +26,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>observe</artifactId> ===================================== persistence/pom.xml ===================================== --- a/persistence/pom.xml +++ b/persistence/pom.xml @@ -26,7 +26,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>persistence</artifactId> ===================================== pom.xml ===================================== --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> <packaging>pom</packaging> <name>ObServe :: Pom</name> ===================================== server-configuration/pom.xml ===================================== --- a/server-configuration/pom.xml +++ b/server-configuration/pom.xml @@ -26,7 +26,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>server-configuration</artifactId> ===================================== server/pom.xml ===================================== --- a/server/pom.xml +++ b/server/pom.xml @@ -27,7 +27,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>server</artifactId> ===================================== services-client/pom.xml ===================================== --- a/services-client/pom.xml +++ b/services-client/pom.xml @@ -27,7 +27,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>services-client</artifactId> ===================================== services-local/pom.xml ===================================== --- a/services-local/pom.xml +++ b/services-local/pom.xml @@ -27,7 +27,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>services-local</artifactId> ===================================== services/pom.xml ===================================== --- a/services/pom.xml +++ b/services/pom.xml @@ -27,7 +27,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>services</artifactId> ===================================== test/pom.xml ===================================== --- a/test/pom.xml +++ b/test/pom.xml @@ -26,7 +26,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>test</artifactId> ===================================== validation/pom.xml ===================================== --- a/validation/pom.xml +++ b/validation/pom.xml @@ -26,7 +26,7 @@ <parent> <groupId>fr.ird.observe</groupId> <artifactId>ird-observe</artifactId> - <version>7.0-RC-13-SNAPSHOT</version> + <version>7.0-RC-14-SNAPSHOT</version> </parent> <artifactId>validation</artifactId> View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/d12ed2993778345bf960c8145a9… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/d12ed2993778345bf960c8145a9… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe] Pushed new branch release/7.0-RC-13
by Tony CHEMIT 08 May '18

08 May '18
Tony CHEMIT pushed new branch release/7.0-RC-13 at ultreiaio / ird-observe -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/tree/release/7.0-RC-13 You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] Improve FOB Form (when creating) - See #948)
by Tony CHEMIT 08 May '18

08 May '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: d9cd7d7e by Tony CHEMIT at 2018-05-08T21:28:00Z Improve FOB Form (when creating) - See #948) - - - - - 12 changed files: - client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUI.jcss - client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIHandler.java - client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIModel.java - client/src/main/java/fr/ird/observe/client/ui/content/data/seine/dcp/FloatingObjectPartsTreeNode.java - client/src/main/java/fr/ird/observe/client/ui/content/data/seine/dcp/FloatingObjectPartsTreeTableModel.java - persistence/src/main/resources/db/migration/7.2/01_update_objectMaterial-common.sql - services-local/src/main/java/fr/ird/observe/services/local/service/data/seine/FloatingObjectServiceLocal.java - services-local/src/test/java/fr/ird/observe/services/local/service/data/seine/FloatingObjectServiceLocalTest.java - services/src/main/java/fr/ird/observe/services/service/data/seine/FloatingObjectService.java - test/src/main/resources/db/7.2/dataForTestLongline.sql.gz - test/src/main/resources/db/7.2/dataForTestSeine.sql.gz - test/src/main/resources/db/7.2/referentiel.sql.gz Changes: ===================================== client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUI.jcss ===================================== --- a/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUI.jcss +++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUI.jcss @@ -144,4 +144,5 @@ BeanComboBox { treeTableModel:{new FloatingObjectPartsTreeTableModel(getModel())}; treeCellRenderer:{new FloatingObjectPartLegendTreeCellRenderer()}; selectionMode:{ListSelectionModel.SINGLE_SELECTION}; + rootVisible:false; } ===================================== client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIHandler.java ===================================== --- a/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIHandler.java +++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIHandler.java @@ -22,6 +22,7 @@ package fr.ird.observe.client.ui.content.data.seine; import com.google.common.collect.ImmutableSet; +import com.google.common.collect.Maps; import fr.ird.observe.client.ObserveSwingApplicationContext; import fr.ird.observe.client.db.ClientDataContext; import fr.ird.observe.client.db.ObserveSwingDataSource; @@ -45,6 +46,7 @@ import fr.ird.observe.dto.data.seine.FloatingObjectReference; import fr.ird.observe.dto.data.seine.ObjectMaterialHierarchyDto; import fr.ird.observe.dto.form.Form; import fr.ird.observe.dto.referential.seine.ObjectMaterialDto; +import fr.ird.observe.dto.referential.seine.ObjectMaterialTypeReference; import fr.ird.observe.dto.referential.seine.ObjectOperationReference; import fr.ird.observe.dto.result.SaveResultDto; import fr.ird.observe.services.service.actions.consolidate.dcp.ConsolidateFloatingObjectRequest; @@ -187,7 +189,7 @@ public class FloatingObjectUIHandler extends ContentUIHandler<FloatingObjectDto, getModel().reset(); - openTable(partsSet, getUi().getTable()); + openTable(partsSet, getUi().getTable(),bean.isPersisted()); setContentMode(mode); @@ -209,7 +211,7 @@ public class FloatingObjectUIHandler extends ContentUIHandler<FloatingObjectDto, SwingUtilities.invokeLater(this::forceGrabFocusOnForm); } - private void openTable(Set<FloatingObjectPartReference> partsSet, JXTreeTable table) { + private void openTable(Set<FloatingObjectPartReference> partsSet, JXTreeTable table, boolean persisted) { FloatingObjectUIModel model = getModel(); for (FloatingObjectPartReference p : partsSet) { @@ -227,7 +229,9 @@ public class FloatingObjectUIHandler extends ContentUIHandler<FloatingObjectDto, FloatingObjectPartsTreeTableModel treeTableModel = (FloatingObjectPartsTreeTableModel) table.getTreeTableModel(); treeTableModel.reset(); - table.expandAll(); + if (persisted) { + table.expandAll(); + } } @Override @@ -322,10 +326,15 @@ public class FloatingObjectUIHandler extends ContentUIHandler<FloatingObjectDto, // listen messages to see if required to add ui.getErrorTableModel().addTableModelListener(computeTabValidStateListener); - List<ObjectMaterialHierarchyDto> detailedForm = getFloatingObjectService().getObjectMaterialHierarchy(); + ObjectMaterialHierarchyDto detailedForm = getFloatingObjectService().getObjectMaterialHierarchy(); + + ObjectMaterialTypeReference booleanType = getReferentialReferences(ObjectMaterialTypeReference.class).stream().filter(e->e.getTopiaId().equals("fr.ird.observe.entities.referentiel.seine.ObjectMaterialType#0#0")).findFirst().orElseThrow(IllegalStateException::new); + for (ObjectMaterialHierarchyDto objectMaterialHierarchyDto : detailedForm.getChildren()) { + objectMaterialHierarchyDto.setObjectMaterialType(booleanType); + } Map<String, ObjectMaterialDto> allMap = new TreeMap<>(); - detailedForm.stream().flatMap(o -> o.getAllDtos().stream()).forEach(s -> allMap.putIfAbsent(s.getId(), s)); + detailedForm.getAllDtos().forEach(s -> allMap.putIfAbsent(s.getId(), s)); FloatingObjectUIModel model = getModel(); model.setReferentialMap(allMap); @@ -386,7 +395,7 @@ public class FloatingObjectUIHandler extends ContentUIHandler<FloatingObjectDto, treeModel.reset(); } - private void initTable(List<ObjectMaterialHierarchyDto> materials, JXTreeTable table) { + private void initTable(ObjectMaterialHierarchyDto materials, JXTreeTable table) { FloatingObjectPartsTreeTableModel treeModel = (FloatingObjectPartsTreeTableModel) table.getTreeTableModel(); treeModel.rebuildRootNode(materials); ===================================== client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIModel.java ===================================== --- a/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIModel.java +++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIModel.java @@ -120,6 +120,10 @@ public class FloatingObjectUIModel extends ContentUIModel<FloatingObjectDto> { ImmutableSet<FloatingObjectPartDto> toParts() { ImmutableSet.Builder<FloatingObjectPartDto> result = ImmutableSet.builder(); for (ObjectMaterialDto o : getAll()) { + if (o.getParent()!=null && o.getParent().getParentId()==null) { + // first level node, can't be send + continue; + } FloatingObjectPartDto partDto = new FloatingObjectPartDto(); partDto.setObjectMaterial(binder.toReference(referentialLocale, o)); if (arriving) { ===================================== client/src/main/java/fr/ird/observe/client/ui/content/data/seine/dcp/FloatingObjectPartsTreeNode.java ===================================== --- a/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/dcp/FloatingObjectPartsTreeNode.java +++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/dcp/FloatingObjectPartsTreeNode.java @@ -10,12 +10,12 @@ package fr.ird.observe.client.ui.content.data.seine.dcp; * it under the terms of the GNU General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. - * + * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public * License along with this program. If not, see * <http://www.gnu.org/licenses/gpl-3.0.html>. @@ -34,7 +34,6 @@ import org.jetbrains.annotations.NotNull; import java.util.Collections; import java.util.Iterator; -import java.util.List; import java.util.Objects; import java.util.Optional; @@ -48,137 +47,6 @@ public class FloatingObjectPartsTreeNode extends AbstractMutableTreeTableNode im /** Logger. */ private static final Log log = LogFactory.getLog(FloatingObjectPartsTreeNode.class); - static FloatingObjectPartsTreeNode createRoot(FloatingObjectUIModel model, List<ObjectMaterialHierarchyDto> referential) { - FloatingObjectPartsTreeNodeContext rootModel = new FloatingObjectPartsTreeNodeContext(model); - FloatingObjectPartsTreeNode root = new FloatingObjectPartsTreeNode(rootModel); - if (referential != null) { - for (ObjectMaterialHierarchyDto dto : referential) { - FloatingObjectPartsTreeNodeContext childModel = new FloatingObjectPartsTreeNodeContext(dto, rootModel); - FloatingObjectPartsTreeNode node = new FloatingObjectPartsTreeNode(childModel); - root.add(node); - ImmutableSet.Builder<FloatingObjectPartsTreeNode> companionsBuilder = dto.isChildrenMultiSelectable() ? ImmutableSet.builder() : null; - node.computeCompanions(companionsBuilder); - node.setCompanions(companionsBuilder); - } - } - return root; - } - - boolean isNotValid() { - return !(getUserObject().validWhenArriving && getUserObject().validWhenLeaving); - } - - private static class FloatingObjectPartsTreeNodeContext { - - // main model to get and store values - private final FloatingObjectUIModel uiModel; - // dto (null for root) - private final ObjectMaterialHierarchyDto dto; - // Is the node is enabled (hierarchic value) ? - private final boolean enabled; - // Is this node editable ? - private final boolean editable; - // Is this node need at least one child selected ? - private final boolean needOneSelection; - // Is this node in the path of at least one mandatory child ancestor ? - private final boolean mandatory; - // Is the node is exclusive (means only one value possible for him and his brothers) ? - private final boolean exclusive; - // Is the node valid for whenArriving column ? - private boolean validWhenArriving = true; - // Is the node valid for whenLeaving column ? - private boolean validWhenLeaving = true; - // Set of brothers of this node that is in a exclusive group of node (only one value among all of them) - private ImmutableSet<FloatingObjectPartsTreeNode> companions; - // Internal to store debug node text - private String text; - - FloatingObjectPartsTreeNodeContext(FloatingObjectUIModel uiModel) { - Objects.requireNonNull(uiModel); - this.uiModel = uiModel; - this.dto = null; - this.enabled = true; - this.editable = false; - this.mandatory = false; - this.exclusive = false; - this.needOneSelection = false; - } - - FloatingObjectPartsTreeNodeContext(ObjectMaterialHierarchyDto dto, FloatingObjectPartsTreeNodeContext parent) { - Objects.requireNonNull(dto); - Objects.requireNonNull(parent); - this.uiModel = parent.uiModel; - this.dto = dto; - // enabled if parent is enabled and dto is enabled - this.enabled = parent.enabled && dto.isEnabled(); - // need one selection if is enabled and dto requires it - this.needOneSelection = enabled && dto.isChildSelectionMandatory(); - // editable if dto is selectable (we also make sure that the object material type is here too) - this.editable = dto.isSelectable() && dto.getObjectMaterialType() != null; - // mandatory if enabled parent is so or parent makes this child to be - this.mandatory = parent.mandatory || parent.needOneSelection; - // exclusive if his parent requires it - this.exclusive = parent.dto != null && parent.dto.isChildrenMultiSelectable(); - log.info(String.format("New node: %s - mandatory %s - needOneSelection %s - exclusive %s", dto.getLabel2(), mandatory, needOneSelection, exclusive)); - } - - Object getValueAt(int column) { - switch (column) { - case 0: // dto - return dto; - case 1: // when arriving - return uiModel.getWhenArriving().get(dto); - case 2: // when leaving - return uiModel.getWhenLeaving().get(dto); - } - throw new IllegalStateException(); - } - - void setValueAt(Object aValue, int column) { - switch (column) { - case 1: // when arriving - uiModel.setWhenArriving(dto.getId(), aValue == null ? null : String.valueOf(aValue)); - return; - case 2: // when leaving - uiModel.setWhenLeaving(dto.getId(), aValue == null ? null : String.valueOf(aValue)); - return; - } - throw new IllegalStateException(); - } - - boolean isColumnEditable(int column) { - switch (column) { - case 1: // when arriving - return uiModel.isArriving(); - case 2: // when leaving - return uiModel.isLeaving(); - } - throw new IllegalStateException(); - } - - boolean isValid(int column) { - switch (column) { - case 1: // when arriving - return validWhenArriving; - case 2: // when leaving - return validWhenLeaving; - } - throw new IllegalStateException(); - } - - Optional<FloatingObjectPartsTreeNode> getSelectedCompanion(int column) { - return companions.stream().filter(n -> n.getValueAt(column) != null).findFirst(); - } - - public String getText() { - if (text == null && dto != null) { - text = String.format("%s [value: %s-%s] [valid: %s-%s]", dto.getLabel2(), getValueAt(1), getValueAt(2), isValid(1), isValid(2)); - } - return text; - } - - } - private FloatingObjectPartsTreeNode(FloatingObjectPartsTreeNodeContext context) { super(context); if (context.dto != null) { @@ -189,6 +57,25 @@ public class FloatingObjectPartsTreeNode extends AbstractMutableTreeTableNode im } } + static FloatingObjectPartsTreeNode createRoot(FloatingObjectUIModel model, ObjectMaterialHierarchyDto dto) { + FloatingObjectPartsTreeNode root; + FloatingObjectPartsTreeNodeContext rootModel = new FloatingObjectPartsTreeNodeContext(model); + if (dto != null) { + FloatingObjectPartsTreeNodeContext childModel = new FloatingObjectPartsTreeNodeContext(dto, rootModel); + root = new FloatingObjectPartsTreeNode(childModel); + ImmutableSet.Builder<FloatingObjectPartsTreeNode> companionsBuilder = dto.isChildrenMultiSelectable() ? ImmutableSet.builder() : null; + root.computeCompanions(companionsBuilder); + root.setCompanions(companionsBuilder); + } else { + root = new FloatingObjectPartsTreeNode(rootModel); + } + return root; + } + + boolean isNotValid() { + return !(getUserObject().validWhenArriving && getUserObject().validWhenLeaving); + } + @Override public String toString() { return getUserObject().getText(); @@ -395,4 +282,116 @@ public class FloatingObjectPartsTreeNode extends AbstractMutableTreeTableNode im } setCompanions(childCompanionsBuilder); } + + private static class FloatingObjectPartsTreeNodeContext { + + // main model to get and store values + private final FloatingObjectUIModel uiModel; + // dto (null for root) + private final ObjectMaterialHierarchyDto dto; + // Is the node is enabled (hierarchic value) ? + private final boolean enabled; + // Is this node editable ? + private final boolean editable; + // Is this node need at least one child selected ? + private final boolean needOneSelection; + // Is this node in the path of at least one mandatory child ancestor ? + private final boolean mandatory; + // Is the node is exclusive (means only one value possible for him and his brothers) ? + private final boolean exclusive; + // Is the node valid for whenArriving column ? + private boolean validWhenArriving = true; + // Is the node valid for whenLeaving column ? + private boolean validWhenLeaving = true; + // Set of brothers of this node that is in a exclusive group of node (only one value among all of them) + private ImmutableSet<FloatingObjectPartsTreeNode> companions; + // Internal to store debug node text + private String text; + + FloatingObjectPartsTreeNodeContext(FloatingObjectUIModel uiModel) { + Objects.requireNonNull(uiModel); + this.uiModel = uiModel; + this.dto = null; + this.enabled = true; + this.editable = false; + this.mandatory = false; + this.exclusive = false; + this.needOneSelection = false; + } + + FloatingObjectPartsTreeNodeContext(ObjectMaterialHierarchyDto dto, FloatingObjectPartsTreeNodeContext parent) { + Objects.requireNonNull(dto); + Objects.requireNonNull(parent); + this.uiModel = parent.uiModel; + this.dto = dto; + // enabled if parent is enabled and dto is enabled + this.enabled = parent.enabled && dto.isEnabled(); + // need one selection if is enabled and dto requires it + this.needOneSelection = enabled && dto.isChildSelectionMandatory(); + // editable if dto is selectable (we also make sure that the object material type is here too) + this.editable = dto.isSelectable() && dto.getObjectMaterialType() != null; + + // mandatory if enabled parent is so or parent makes this child to be + this.mandatory = parent.mandatory || parent.needOneSelection; + // exclusive if his parent requires it + this.exclusive = parent.dto != null && parent.dto.isChildrenMultiSelectable(); + log.info(String.format("New node: %s - mandatory %s - needOneSelection %s - exclusive %s", dto.getLabel2(), mandatory, needOneSelection, exclusive)); + } + + Object getValueAt(int column) { + switch (column) { + case 0: // dto + return dto; + case 1: // when arriving + return uiModel.getWhenArriving().get(dto); + case 2: // when leaving + return uiModel.getWhenLeaving().get(dto); + } + throw new IllegalStateException(); + } + + void setValueAt(Object aValue, int column) { + switch (column) { + case 1: // when arriving + uiModel.setWhenArriving(dto.getId(), aValue == null ? null : String.valueOf(aValue)); + return; + case 2: // when leaving + uiModel.setWhenLeaving(dto.getId(), aValue == null ? null : String.valueOf(aValue)); + return; + } + throw new IllegalStateException(); + } + + boolean isColumnEditable(int column) { + switch (column) { + case 1: // when arriving + return uiModel.isArriving(); + case 2: // when leaving + return uiModel.isLeaving(); + } + throw new IllegalStateException(); + } + + boolean isValid(int column) { + switch (column) { + case 1: // when arriving + return validWhenArriving; + case 2: // when leaving + return validWhenLeaving; + } + throw new IllegalStateException(); + } + + Optional<FloatingObjectPartsTreeNode> getSelectedCompanion(int column) { + return companions.stream().filter(n -> n.getValueAt(column) != null).findFirst(); + } + + public String getText() { + if (text == null && dto != null) { + text = String.format("%s [value: %s-%s] [valid: %s-%s]", dto.getLabel2(), getValueAt(1), getValueAt(2), isValid(1), isValid(2)); + } + return text; + } + + } } ===================================== client/src/main/java/fr/ird/observe/client/ui/content/data/seine/dcp/FloatingObjectPartsTreeTableModel.java ===================================== --- a/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/dcp/FloatingObjectPartsTreeTableModel.java +++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/dcp/FloatingObjectPartsTreeTableModel.java @@ -10,12 +10,12 @@ package fr.ird.observe.client.ui.content.data.seine.dcp; * it under the terms of the GNU General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. - * + * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public * License along with this program. If not, see * <http://www.gnu.org/licenses/gpl-3.0.html>. @@ -32,8 +32,6 @@ import org.jdesktop.swingx.treetable.TreeTableNode; import org.nuiton.i18n.I18n; import java.util.Arrays; -import java.util.Collections; -import java.util.List; import java.util.Optional; import java.util.stream.Collectors; @@ -56,7 +54,7 @@ public class FloatingObjectPartsTreeTableModel extends DefaultTreeTableModel { private ImmutableSet<FloatingObjectPartsTreeNode> withValidationNodes; public FloatingObjectPartsTreeTableModel(FloatingObjectUIModel uiModel) { - super(FloatingObjectPartsTreeNode.createRoot(uiModel, Collections.emptyList()), Arrays.asList( + super(FloatingObjectPartsTreeNode.createRoot(uiModel, null), Arrays.asList( I18n.t("observe.common.FloatingObjectDto.table.type"), I18n.t("observe.common.whenArriving"), I18n.t("observe.common.whenLeaving"))); @@ -68,11 +66,6 @@ public class FloatingObjectPartsTreeTableModel extends DefaultTreeTableModel { return (FloatingObjectPartsTreeNode) super.getRoot(); } - public void rebuildRootNode(List<ObjectMaterialHierarchyDto> materials) { - FloatingObjectPartsTreeNode root = FloatingObjectPartsTreeNode.createRoot(uiModel, materials); - setRoot(root); - } - @Override public void setRoot(TreeTableNode root) { super.setRoot(root); @@ -91,6 +84,10 @@ public class FloatingObjectPartsTreeTableModel extends DefaultTreeTableModel { withValidationNodes = ImmutableSet.copyOf(allNodes.stream().filter(FloatingObjectPartsTreeNode::withValidation).collect(Collectors.toSet())); } + public void rebuildRootNode(ObjectMaterialHierarchyDto materials) { + FloatingObjectPartsTreeNode root = FloatingObjectPartsTreeNode.createRoot(uiModel, materials); + setRoot(root); + } @Override public int getColumnCount() { ===================================== persistence/src/main/resources/db/migration/7.2/01_update_objectMaterial-common.sql ===================================== --- a/persistence/src/main/resources/db/migration/7.2/01_update_objectMaterial-common.sql +++ b/persistence/src/main/resources/db/migration/7.2/01_update_objectMaterial-common.sql @@ -109,3 +109,4 @@ update observe_seine.objectmaterial set validation='x.length() >= 3 && x.length( INSERT INTO observe_seine.objectMaterial (topiaid, topiaversion, topiacreatedate, lastupdatedate, needComment, status, legacyCode, standardCode, code, parent, label1, label2, label3, selectable, childrenMultiSelectable, childSelectionMandatory, objectMaterialType, validation, biodegradable, nonEntangling) values ('fr.ird.observe.entities.referentiel.seine.ObjectMaterial#0#1.3', 0, CURRENT_DATE, CURRENT_TIMESTAMP, false, 1, NULL, 'FOB', '' , null , 'FOB', 'FOB', 'FOB', false, true , true, NULL, NULL, false, false); UPDATE observe_seine.objectmaterial SET parent='fr.ird.observe.entities.referentiel.seine.ObjectMaterial#0#1.3' WHERE parent IS NULL; UPDATE observe_seine.objectmaterial SET parent= NULL WHERE topiaid='fr.ird.observe.entities.referentiel.seine.ObjectMaterial#0#1.3'; +UPDATE observe_seine.objectmaterial SET SELECTABLE = TRUE WHERE parent='fr.ird.observe.entities.referentiel.seine.ObjectMaterial#0#1.3' and status = '1'; \ No newline at end of file ===================================== services-local/src/main/java/fr/ird/observe/services/local/service/data/seine/FloatingObjectServiceLocal.java ===================================== --- a/services-local/src/main/java/fr/ird/observe/services/local/service/data/seine/FloatingObjectServiceLocal.java +++ b/services-local/src/main/java/fr/ird/observe/services/local/service/data/seine/FloatingObjectServiceLocal.java @@ -74,12 +74,11 @@ public class FloatingObjectServiceLocal extends ObserveServiceLocal implements F private static final Set<String> FOB_OBSERVED_SYSTEM_EXCLUDE_OPERATIONS = ImmutableSet.of("fr.ird.observe.entities.referentiel.seine.ObjectOperation#0#10", "fr.ird.observe.entities.referentiel.seine.ObjectOperation#0#1"); @Override - public List<ObjectMaterialHierarchyDto> getObjectMaterialHierarchy() { + public ObjectMaterialHierarchyDto getObjectMaterialHierarchy() { ObjectMaterialTopiaDao dao = getTopiaPersistenceContext().getObjectMaterialDao(); List<ObjectMaterial> objectMaterials = dao.findAll(); objectMaterials.sort(Comparator.comparing(ObjectMaterial::getCode)); - List<ObjectMaterialHierarchyDto> rootNode = getObjectMaterialHierarchyDtos(objectMaterials); - return rootNode.get(0).getChildren(); + return getObjectMaterialHierarchyDtos(objectMaterials).get(0); } @Override ===================================== services-local/src/test/java/fr/ird/observe/services/local/service/data/seine/FloatingObjectServiceLocalTest.java ===================================== --- a/services-local/src/test/java/fr/ird/observe/services/local/service/data/seine/FloatingObjectServiceLocalTest.java +++ b/services-local/src/test/java/fr/ird/observe/services/local/service/data/seine/FloatingObjectServiceLocalTest.java @@ -10,12 +10,12 @@ package fr.ird.observe.services.local.service.data.seine; * it under the terms of the GNU General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. - * + * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public * License along with this program. If not, see * <http://www.gnu.org/licenses/gpl-3.0.html>. @@ -27,7 +27,6 @@ import fr.ird.observe.services.local.service.ServiceLocalTestSupport; import fr.ird.observe.services.service.data.seine.FloatingObjectService; import fr.ird.observe.test.DatabaseName; import fr.ird.observe.test.spi.DatabaseNameConfiguration; -import java.util.List; import org.junit.Assert; import org.junit.Before; import org.junit.Test; @@ -50,9 +49,8 @@ public class FloatingObjectServiceLocalTest extends ServiceLocalTestSupport { @Test public void getObjectMaterialHierarchy() { - List<ObjectMaterialHierarchyDto> form = service.getObjectMaterialHierarchy(); + ObjectMaterialHierarchyDto form = service.getObjectMaterialHierarchy(); Assert.assertNotNull(form); - Assert.assertEquals(4, form.size()); } ===================================== services/src/main/java/fr/ird/observe/services/service/data/seine/FloatingObjectService.java ===================================== --- a/services/src/main/java/fr/ird/observe/services/service/data/seine/FloatingObjectService.java +++ b/services/src/main/java/fr/ird/observe/services/service/data/seine/FloatingObjectService.java @@ -40,8 +40,6 @@ import io.ultreia.java4all.http.spi.Delete; import io.ultreia.java4all.http.spi.Get; import io.ultreia.java4all.http.spi.Post; -import java.util.List; - /** * @author Tony Chemit - dev(a)tchemit.fr */ @@ -49,7 +47,7 @@ public interface FloatingObjectService extends ObserveService { @Get @ReadReferentialPermission - List<ObjectMaterialHierarchyDto> getObjectMaterialHierarchy(); + ObjectMaterialHierarchyDto getObjectMaterialHierarchy(); @Get @ReadDataPermission ===================================== test/src/main/resources/db/7.2/dataForTestLongline.sql.gz ===================================== Binary files a/test/src/main/resources/db/7.2/dataForTestLongline.sql.gz and b/test/src/main/resources/db/7.2/dataForTestLongline.sql.gz differ ===================================== test/src/main/resources/db/7.2/dataForTestSeine.sql.gz ===================================== Binary files a/test/src/main/resources/db/7.2/dataForTestSeine.sql.gz and b/test/src/main/resources/db/7.2/dataForTestSeine.sql.gz differ ===================================== test/src/main/resources/db/7.2/referentiel.sql.gz ===================================== Binary files a/test/src/main/resources/db/7.2/referentiel.sql.gz and b/test/src/main/resources/db/7.2/referentiel.sql.gz differ View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/d9cd7d7e6d4e059073a0b42ad36… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/d9cd7d7e6d4e059073a0b42ad36… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] Migration RC12c -> OutOfMemory : Java Heap Space (Closes #947)
by Tony CHEMIT 06 May '18

06 May '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 667850b2 by Tony CHEMIT at 2018-05-06T14:48:26Z Migration RC12c -&gt; OutOfMemory : Java Heap Space (Closes #947) - - - - - 27 changed files: - client-configuration/src/main/resources/log4j.properties - client-configuration/src/main/resources/observe-log4j.properties - client/pom.xml - persistence/pom.xml - persistence/src/main/java/fr/ird/observe/persistence/ObserveTopiaApplicationContext.java - persistence/src/main/java/fr/ird/observe/persistence/ObserveTopiaConfigurationFactory.java - − persistence/src/main/java/fr/ird/observe/persistence/migration/AbstractDataSourceMigration.java - − persistence/src/main/java/fr/ird/observe/persistence/migration/AbstractObserveMigrationCallBack.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_5_0.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java → persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_1.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_6.java → persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_2.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_1.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_2.java - − persistence/src/main/java/fr/ird/observe/persistence/migration/H2DataSourceMigration.java - persistence/src/main/java/fr/ird/observe/persistence/migration/MigrationVersion.java - − persistence/src/main/java/fr/ird/observe/persistence/migration/ObserveMigrationCallBackForVersionResolver.java - persistence/src/main/java/fr/ird/observe/persistence/migration/ObserveMigrationConfigurationProvider.java - persistence/src/main/java/fr/ird/observe/persistence/migration/ObserveMigrationEngine.java → persistence/src/main/java/fr/ird/observe/persistence/migration/ObserveTopiaMigrationServiceAskUserToMigrate.java - − persistence/src/main/java/fr/ird/observe/persistence/migration/PGDataSourceMigration.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_1.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_10.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_11.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_12.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_14.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_15.java The diff was not included because it is too large. View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/667850b21b0be310220540c9145… --- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/667850b21b0be310220540c9145… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] Migration RC12c -> OutOfMemory : Java Heap Space (Closes #947)
by Tony CHEMIT 05 May '18

05 May '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 4fc4e722 by Tony CHEMIT at 2018-05-05T20:51:48Z Migration RC12c -&gt; OutOfMemory : Java Heap Space (Closes #947) - - - - - 28 changed files: - client-configuration/src/main/resources/log4j.properties - client-configuration/src/main/resources/observe-log4j.properties - client/pom.xml - persistence/pom.xml - persistence/src/main/java/fr/ird/observe/persistence/ObserveTopiaApplicationContext.java - persistence/src/main/java/fr/ird/observe/persistence/ObserveTopiaConfigurationFactory.java - − persistence/src/main/java/fr/ird/observe/persistence/migration/AbstractObserveMigrationCallBack.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_5_0.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java → persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_1.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_6.java → persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_2.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_1.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_2.java - − persistence/src/main/java/fr/ird/observe/persistence/migration/H2DataSourceMigration.java - − persistence/src/main/java/fr/ird/observe/persistence/migration/ObserveMigrationCallBackForVersionResolver.java - persistence/src/main/java/fr/ird/observe/persistence/migration/ObserveMigrationConfigurationProvider.java - − persistence/src/main/java/fr/ird/observe/persistence/migration/ObserveMigrationEngine.java - persistence/src/main/java/fr/ird/observe/persistence/migration/AbstractDataSourceMigration.java → persistence/src/main/java/fr/ird/observe/persistence/migration/ObserveTopiaMigrationServiceAskUserToMigrate.java - − persistence/src/main/java/fr/ird/observe/persistence/migration/PGDataSourceMigration.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_1.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_10.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_11.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_12.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_14.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_15.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_16.java - persistence/src/main/java/fr/ird/observe/persistence/migration/old/DataSourceMigrationForVersion_3_5.java The diff was not included because it is too large. View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/4fc4e7221e7efde6a48e0a1082b… --- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/4fc4e7221e7efde6a48e0a1082b… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] Fix migration - Closes #945
by Tony CHEMIT 04 May '18

04 May '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: be4985c5 by Tony CHEMIT at 2018-05-04T16:00:24Z Fix migration - Closes #945 - - - - - 3 changed files: - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java - persistence/src/main/resources/db/migration/6.1/00_fix_trigger-PG.sql → persistence/src/main/resources/db/migration/6.0/00_fix_trigger-PG.sql Changes: ===================================== persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java ===================================== --- a/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java +++ b/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java @@ -264,6 +264,74 @@ public class DataSourceMigrationForVersion_6_0 extends AbstractObserveMigrationC super(callBack, PGDataSourceMigration.TYPE); } + @Override + protected void prepareMigrationScript(TopiaSqlSupport topiaSqlSupport, List<String> queries, boolean showSql, boolean showProgression) { + Boolean withTriggers = topiaSqlSupport.findSingleResult(new TopiaSqlQuery<Boolean>() { + @Override + public PreparedStatement prepareQuery(Connection connection) throws SQLException { + return connection.prepareStatement("select exists(select * from pg_proc where proname = 'sync_activity_the_geom');"); + } + + @Override + public Boolean prepareResult(ResultSet resultSet) throws SQLException { + return resultSet.getBoolean(1); + } + }); + + if (withTriggers) { + queries.add("CREATE OR REPLACE function sync_activity_the_geom () returns trigger as '\n" + + "BEGIN\n" + + " IF (TG_OP = ''DELETE'') THEN\n" + + " RETURN OLD;\n" + + " END IF;\n" + + " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + + " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + + " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + + " NEW.the_geom := NULL;\n" + + " return NEW;\n" + + " END IF;\n" + + " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + + " THEN\n" + + " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + + " return NEW;\n" + + " END IF;\n" + + " RAISE NOTICE ''Will compute the_geom for activite % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + + " -- affectation du point\n" + + " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + + " RAISE NOTICE ''Computed for activity % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + + "\n" + + " RETURN NEW;\n" + + "END\n" + + "'\n" + + "LANGUAGE 'plpgsql';\n"); + queries.add("CREATE OR REPLACE function sync_harbour_the_geom () returns trigger as '\n" + + "BEGIN\n" + + " IF (TG_OP = ''DELETE'') THEN\n" + + " RETURN OLD;\n" + + " END IF;\n" + + " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + + " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + + " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + + " NEW.the_geom := NULL;\n" + + " return NEW;\n" + + " END IF;\n" + + " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + + " THEN\n" + + " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + + " return NEW;\n" + + " END IF;\n" + + " RAISE NOTICE ''Will compute the_geom for harbour % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + + " -- affectation du point\n" + + " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + + " RAISE NOTICE ''Computed for harbour % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + + " RETURN NEW;\n" + + "END\n" + + "'\n" + + "LANGUAGE 'plpgsql';"); + addScript("00", "fix_trigger", queries); + } + super.prepareMigrationScript(topiaSqlSupport, queries, showSql, showProgression); + } } } ===================================== persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java ===================================== --- a/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java +++ b/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java @@ -22,13 +22,8 @@ package fr.ird.observe.persistence.migration; * #L% */ -import org.nuiton.topia.persistence.support.TopiaSqlQuery; import org.nuiton.topia.persistence.support.TopiaSqlSupport; -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; import java.util.List; import java.util.Map; import java.util.Set; @@ -89,76 +84,6 @@ public class DataSourceMigrationForVersion_7_0_RC_4 extends AbstractObserveMigra super(callBack, PGDataSourceMigration.TYPE); } - - @Override - protected void prepareMigrationScript(TopiaSqlSupport topiaSqlSupport, List<String> queries, boolean showSql, boolean showProgression) { - - Boolean withTriggers = topiaSqlSupport.findSingleResult(new TopiaSqlQuery<Boolean>() { - @Override - public PreparedStatement prepareQuery(Connection connection) throws SQLException { - return connection.prepareStatement("select exists(select * from pg_proc where proname = 'sync_activity_the_geom');"); - } - - @Override - public Boolean prepareResult(ResultSet resultSet) throws SQLException { - return resultSet.getBoolean(1); - } - }); - - if (withTriggers) { - queries.add("CREATE OR REPLACE function sync_activity_the_geom () returns trigger as '\n" + - "BEGIN\n" + - " IF (TG_OP = ''DELETE'') THEN\n" + - " RETURN OLD;\n" + - " END IF;\n" + - " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + - " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + - " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + - " NEW.the_geom := NULL;\n" + - " return NEW;\n" + - " END IF;\n" + - " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + - " THEN\n" + - " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + - " return NEW;\n" + - " END IF;\n" + - " RAISE NOTICE ''Will compute the_geom for activite % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + - " -- affectation du point\n" + - " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + - " RAISE NOTICE ''Computed for activity % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + - "\n" + - " RETURN NEW;\n" + - "END\n" + - "'\n" + - "LANGUAGE 'plpgsql';\n"); - queries.add("CREATE OR REPLACE function sync_harbour_the_geom () returns trigger as '\n" + - "BEGIN\n" + - " IF (TG_OP = ''DELETE'') THEN\n" + - " RETURN OLD;\n" + - " END IF;\n" + - " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + - " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + - " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + - " NEW.the_geom := NULL;\n" + - " return NEW;\n" + - " END IF;\n" + - " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + - " THEN\n" + - " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + - " return NEW;\n" + - " END IF;\n" + - " RAISE NOTICE ''Will compute the_geom for harbour % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + - " -- affectation du point\n" + - " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + - " RAISE NOTICE ''Computed for harbour % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + - " RETURN NEW;\n" + - "END\n" + - "'\n" + - "LANGUAGE 'plpgsql';"); - addScript("00", "fix_trigger", queries); - } - super.prepareMigrationScript(topiaSqlSupport, queries, showSql, showProgression); - } } } ===================================== persistence/src/main/resources/db/migration/6.1/00_fix_trigger-PG.sql → persistence/src/main/resources/db/migration/6.0/00_fix_trigger-PG.sql ===================================== View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/be4985c5a43440cdd373738b646… --- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/be4985c5a43440cdd373738b646… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][master] Fix migration - Closes #945
by Tony CHEMIT 04 May '18

04 May '18
Tony CHEMIT pushed to branch master at ultreiaio / ird-observe Commits: 41491680 by Tony CHEMIT at 2018-05-04T16:01:00Z Fix migration - Closes #945 - - - - - 3 changed files: - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java - persistence/src/main/resources/db/migration/6.1/00_fix_trigger-PG.sql → persistence/src/main/resources/db/migration/6.0/00_fix_trigger-PG.sql Changes: ===================================== persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java ===================================== --- a/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java +++ b/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java @@ -264,6 +264,74 @@ public class DataSourceMigrationForVersion_6_0 extends AbstractObserveMigrationC super(callBack, PGDataSourceMigration.TYPE); } + @Override + protected void prepareMigrationScript(TopiaSqlSupport topiaSqlSupport, List<String> queries, boolean showSql, boolean showProgression) { + Boolean withTriggers = topiaSqlSupport.findSingleResult(new TopiaSqlQuery<Boolean>() { + @Override + public PreparedStatement prepareQuery(Connection connection) throws SQLException { + return connection.prepareStatement("select exists(select * from pg_proc where proname = 'sync_activity_the_geom');"); + } + + @Override + public Boolean prepareResult(ResultSet resultSet) throws SQLException { + return resultSet.getBoolean(1); + } + }); + + if (withTriggers) { + queries.add("CREATE OR REPLACE function sync_activity_the_geom () returns trigger as '\n" + + "BEGIN\n" + + " IF (TG_OP = ''DELETE'') THEN\n" + + " RETURN OLD;\n" + + " END IF;\n" + + " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + + " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + + " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + + " NEW.the_geom := NULL;\n" + + " return NEW;\n" + + " END IF;\n" + + " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + + " THEN\n" + + " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + + " return NEW;\n" + + " END IF;\n" + + " RAISE NOTICE ''Will compute the_geom for activite % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + + " -- affectation du point\n" + + " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + + " RAISE NOTICE ''Computed for activity % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + + "\n" + + " RETURN NEW;\n" + + "END\n" + + "'\n" + + "LANGUAGE 'plpgsql';\n"); + queries.add("CREATE OR REPLACE function sync_harbour_the_geom () returns trigger as '\n" + + "BEGIN\n" + + " IF (TG_OP = ''DELETE'') THEN\n" + + " RETURN OLD;\n" + + " END IF;\n" + + " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + + " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + + " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + + " NEW.the_geom := NULL;\n" + + " return NEW;\n" + + " END IF;\n" + + " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + + " THEN\n" + + " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + + " return NEW;\n" + + " END IF;\n" + + " RAISE NOTICE ''Will compute the_geom for harbour % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + + " -- affectation du point\n" + + " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + + " RAISE NOTICE ''Computed for harbour % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + + " RETURN NEW;\n" + + "END\n" + + "'\n" + + "LANGUAGE 'plpgsql';"); + addScript("00", "fix_trigger", queries); + } + super.prepareMigrationScript(topiaSqlSupport, queries, showSql, showProgression); + } } } ===================================== persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java ===================================== --- a/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java +++ b/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java @@ -22,13 +22,8 @@ package fr.ird.observe.persistence.migration; * #L% */ -import org.nuiton.topia.persistence.support.TopiaSqlQuery; import org.nuiton.topia.persistence.support.TopiaSqlSupport; -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; import java.util.List; import java.util.Map; import java.util.Set; @@ -89,76 +84,6 @@ public class DataSourceMigrationForVersion_7_0_RC_4 extends AbstractObserveMigra super(callBack, PGDataSourceMigration.TYPE); } - - @Override - protected void prepareMigrationScript(TopiaSqlSupport topiaSqlSupport, List<String> queries, boolean showSql, boolean showProgression) { - - Boolean withTriggers = topiaSqlSupport.findSingleResult(new TopiaSqlQuery<Boolean>() { - @Override - public PreparedStatement prepareQuery(Connection connection) throws SQLException { - return connection.prepareStatement("select exists(select * from pg_proc where proname = 'sync_activity_the_geom');"); - } - - @Override - public Boolean prepareResult(ResultSet resultSet) throws SQLException { - return resultSet.getBoolean(1); - } - }); - - if (withTriggers) { - queries.add("CREATE OR REPLACE function sync_activity_the_geom () returns trigger as '\n" + - "BEGIN\n" + - " IF (TG_OP = ''DELETE'') THEN\n" + - " RETURN OLD;\n" + - " END IF;\n" + - " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + - " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + - " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + - " NEW.the_geom := NULL;\n" + - " return NEW;\n" + - " END IF;\n" + - " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + - " THEN\n" + - " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + - " return NEW;\n" + - " END IF;\n" + - " RAISE NOTICE ''Will compute the_geom for activite % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + - " -- affectation du point\n" + - " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + - " RAISE NOTICE ''Computed for activity % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + - "\n" + - " RETURN NEW;\n" + - "END\n" + - "'\n" + - "LANGUAGE 'plpgsql';\n"); - queries.add("CREATE OR REPLACE function sync_harbour_the_geom () returns trigger as '\n" + - "BEGIN\n" + - " IF (TG_OP = ''DELETE'') THEN\n" + - " RETURN OLD;\n" + - " END IF;\n" + - " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + - " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + - " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + - " NEW.the_geom := NULL;\n" + - " return NEW;\n" + - " END IF;\n" + - " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + - " THEN\n" + - " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + - " return NEW;\n" + - " END IF;\n" + - " RAISE NOTICE ''Will compute the_geom for harbour % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + - " -- affectation du point\n" + - " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + - " RAISE NOTICE ''Computed for harbour % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + - " RETURN NEW;\n" + - "END\n" + - "'\n" + - "LANGUAGE 'plpgsql';"); - addScript("00", "fix_trigger", queries); - } - super.prepareMigrationScript(topiaSqlSupport, queries, showSql, showProgression); - } } } ===================================== persistence/src/main/resources/db/migration/6.1/00_fix_trigger-PG.sql → persistence/src/main/resources/db/migration/6.0/00_fix_trigger-PG.sql ===================================== View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/414916806da3222e2d102b3ef5b… --- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/414916806da3222e2d102b3ef5b… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] Fix migration - Closes #945
by Tony CHEMIT 04 May '18

04 May '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 806b9177 by Tony CHEMIT at 2018-05-04T14:57:22Z Fix migration - Closes #945 - - - - - 2 changed files: - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java - persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java Changes: ===================================== persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java ===================================== --- a/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java +++ b/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_6_0.java @@ -264,6 +264,74 @@ public class DataSourceMigrationForVersion_6_0 extends AbstractObserveMigrationC super(callBack, PGDataSourceMigration.TYPE); } + @Override + protected void prepareMigrationScript(TopiaSqlSupport topiaSqlSupport, List<String> queries, boolean showSql, boolean showProgression) { + Boolean withTriggers = topiaSqlSupport.findSingleResult(new TopiaSqlQuery<Boolean>() { + @Override + public PreparedStatement prepareQuery(Connection connection) throws SQLException { + return connection.prepareStatement("select exists(select * from pg_proc where proname = 'sync_activity_the_geom');"); + } + + @Override + public Boolean prepareResult(ResultSet resultSet) throws SQLException { + return resultSet.getBoolean(1); + } + }); + + if (withTriggers) { + queries.add("CREATE OR REPLACE function sync_activity_the_geom () returns trigger as '\n" + + "BEGIN\n" + + " IF (TG_OP = ''DELETE'') THEN\n" + + " RETURN OLD;\n" + + " END IF;\n" + + " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + + " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + + " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + + " NEW.the_geom := NULL;\n" + + " return NEW;\n" + + " END IF;\n" + + " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + + " THEN\n" + + " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + + " return NEW;\n" + + " END IF;\n" + + " RAISE NOTICE ''Will compute the_geom for activite % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + + " -- affectation du point\n" + + " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + + " RAISE NOTICE ''Computed for activity % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + + "\n" + + " RETURN NEW;\n" + + "END\n" + + "'\n" + + "LANGUAGE 'plpgsql';\n"); + queries.add("CREATE OR REPLACE function sync_harbour_the_geom () returns trigger as '\n" + + "BEGIN\n" + + " IF (TG_OP = ''DELETE'') THEN\n" + + " RETURN OLD;\n" + + " END IF;\n" + + " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + + " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + + " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + + " NEW.the_geom := NULL;\n" + + " return NEW;\n" + + " END IF;\n" + + " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + + " THEN\n" + + " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + + " return NEW;\n" + + " END IF;\n" + + " RAISE NOTICE ''Will compute the_geom for harbour % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + + " -- affectation du point\n" + + " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + + " RAISE NOTICE ''Computed for harbour % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + + " RETURN NEW;\n" + + "END\n" + + "'\n" + + "LANGUAGE 'plpgsql';"); + addScript("00", "fix_trigger", queries); + } + super.prepareMigrationScript(topiaSqlSupport, queries, showSql, showProgression); + } } } ===================================== persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java ===================================== --- a/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java +++ b/persistence/src/main/java/fr/ird/observe/persistence/migration/DataSourceMigrationForVersion_7_0_RC_4.java @@ -22,13 +22,8 @@ package fr.ird.observe.persistence.migration; * #L% */ -import org.nuiton.topia.persistence.support.TopiaSqlQuery; import org.nuiton.topia.persistence.support.TopiaSqlSupport; -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; import java.util.List; import java.util.Map; import java.util.Set; @@ -89,76 +84,6 @@ public class DataSourceMigrationForVersion_7_0_RC_4 extends AbstractObserveMigra super(callBack, PGDataSourceMigration.TYPE); } - - @Override - protected void prepareMigrationScript(TopiaSqlSupport topiaSqlSupport, List<String> queries, boolean showSql, boolean showProgression) { - - Boolean withTriggers = topiaSqlSupport.findSingleResult(new TopiaSqlQuery<Boolean>() { - @Override - public PreparedStatement prepareQuery(Connection connection) throws SQLException { - return connection.prepareStatement("select exists(select * from pg_proc where proname = 'sync_activity_the_geom');"); - } - - @Override - public Boolean prepareResult(ResultSet resultSet) throws SQLException { - return resultSet.getBoolean(1); - } - }); - - if (withTriggers) { - queries.add("CREATE OR REPLACE function sync_activity_the_geom () returns trigger as '\n" + - "BEGIN\n" + - " IF (TG_OP = ''DELETE'') THEN\n" + - " RETURN OLD;\n" + - " END IF;\n" + - " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + - " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + - " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + - " NEW.the_geom := NULL;\n" + - " return NEW;\n" + - " END IF;\n" + - " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + - " THEN\n" + - " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + - " return NEW;\n" + - " END IF;\n" + - " RAISE NOTICE ''Will compute the_geom for activite % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + - " -- affectation du point\n" + - " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + - " RAISE NOTICE ''Computed for activity % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + - "\n" + - " RETURN NEW;\n" + - "END\n" + - "'\n" + - "LANGUAGE 'plpgsql';\n"); - queries.add("CREATE OR REPLACE function sync_harbour_the_geom () returns trigger as '\n" + - "BEGIN\n" + - " IF (TG_OP = ''DELETE'') THEN\n" + - " RETURN OLD;\n" + - " END IF;\n" + - " IF (NEW.latitude IS NULL OR NEW.longitude IS NULL) THEN\n" + - " -- on ne calcule pas le point postgis si au moins une des -- coordonnees n est pas renseignee\n" + - " RAISE NOTICE ''No latitude or longitude, can not compute postgis field for id % '', NEW.topiaId;\n" + - " NEW.the_geom := NULL;\n" + - " return NEW;\n" + - " END IF;\n" + - " IF (TG_OP = ''UPDATE'' AND NEW.latitude = OLD.latitude AND NEW.longitude = OLD.longitude)\n" + - " THEN\n" + - " -- on ne calcule pas le point postgis si les coordonnées n''ont pas changées\n" + - " return NEW;\n" + - " END IF;\n" + - " RAISE NOTICE ''Will compute the_geom for harbour % - latitude % and longitude %'', NEW.topiaId, NEW.latitude, NEW.longitude;\n" + - " -- affectation du point\n" + - " NEW.the_geom := ST_SetSRID(ST_MakePoint(NEW.longitude,NEW.latitude), 4326);\n" + - " RAISE NOTICE ''Computed for harbour % latitude % and longitude %, the_geom %'', NEW.topiaId, NEW.latitude, NEW.longitude, NEW.the_geom;\n" + - " RETURN NEW;\n" + - "END\n" + - "'\n" + - "LANGUAGE 'plpgsql';"); - addScript("00", "fix_trigger", queries); - } - super.prepareMigrationScript(topiaSqlSupport, queries, showSql, showProgression); - } } } View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/806b917739053ab6fc380af64a5… --- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/806b917739053ab6fc380af64a5… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][pages] Site checkin for project ObServe :: Pom
by Tony CHEMIT 04 May '18

04 May '18
Tony CHEMIT pushed to branch pages at ultreiaio / ird-observe Commits: 80c8a1eb by 166231 at 2018-05-04T09:55:19Z Site checkin for project ObServe :: Pom - - - - - 3 changed files: - changelog.html - dev-activity.html - file-activity.html Changes: ===================================== changelog.html ===================================== The diff for this file was not included because it is too large. ===================================== dev-activity.html ===================================== --- a/dev-activity.html +++ b/dev-activity.html @@ -92,7 +92,7 @@ <h2><a name="Developer_Activity_Report"></a>Developer Activity Report</h2> <div class="section"> <h3><a name="Changes_between_2018-04-04_and_2018-05-05"></a>Changes between 2018-04-04 and 2018-05-05</h3> -<p>Total commits: 48<br />Total number of files changed: 2370</p> +<p>Total commits: 53<br />Total number of files changed: 2370</p> <table border="0" class="table table-striped"> <tr class="a"> <th>Developer</th> @@ -100,7 +100,7 @@ <th>Total Number of Files Changed</th></tr> <tr class="b"> <td>Tony CHEMIT &lt;dev(a)tchemit.fr&gt;</td> -<td>48</td> +<td>53</td> <td>2370</td></tr></table></div></div> </div> </div> ===================================== file-activity.html ===================================== --- a/file-activity.html +++ b/file-activity.html @@ -92,50 +92,50 @@ <h2><a name="File_Activity_Report"></a>File Activity Report</h2> <div class="section"> <h3><a name="Changes_between_2018-04-04_and_2018-05-05"></a>Changes between 2018-04-04 and 2018-05-05</h3> -<p>Total commits: 48<br />Total number of files changed: 2370</p> +<p>Total commits: 53<br />Total number of files changed: 2370</p> <table border="0" class="table table-striped"> <tr class="a"> <th>Filename</th> <th>Number of Times Changed</th></tr> <tr class="b"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/pom.xml"><b>pom.xml</b></a> </td> -<td>18</td></tr> +<td>23</td></tr> <tr class="a"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/client-configuration/pom.xml">client-configuration/<b>pom.xml</b></a> </td> -<td>14</td></tr> +<td>19</td></tr> <tr class="b"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/client/pom.xml">client/<b>pom.xml</b></a> </td> -<td>13</td></tr> +<td>18</td></tr> <tr class="a"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/dto/pom.xml">dto/<b>pom.xml</b></a> </td> -<td>13</td></tr> +<td>18</td></tr> <tr class="b"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/server/pom.xml">server/<b>pom.xml</b></a> </td> -<td>12</td></tr> +<td>17</td></tr> <tr class="a"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/server-configuration/pom.xml">server-configuration/<b>pom.xml</b></a> </td> -<td>11</td></tr> +<td>16</td></tr> <tr class="b"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/services/pom.xml">services/<b>pom.xml</b></a> </td> -<td>11</td></tr> +<td>16</td></tr> <tr class="a"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/observe/pom.xml">observe/<b>pom.xml</b></a> </td> -<td>10</td></tr> +<td>15</td></tr> <tr class="b"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/persistence/pom.xml">persistence/<b>pom.xml</b></a> </td> -<td>10</td></tr> +<td>15</td></tr> <tr class="a"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/services-client/pom.xml">services-client/<b>pom.xml</b></a> </td> -<td>10</td></tr> +<td>15</td></tr> <tr class="b"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/services-local/pom.xml">services-local/<b>pom.xml</b></a> </td> -<td>10</td></tr> +<td>15</td></tr> <tr class="a"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/test/pom.xml">test/<b>pom.xml</b></a> </td> -<td>10</td></tr> +<td>15</td></tr> <tr class="b"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/validation/pom.xml">validation/<b>pom.xml</b></a> </td> -<td>10</td></tr> +<td>15</td></tr> <tr class="a"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/services-local/src/test/java/fr/ir…">services-local/src/test/java/fr/ird/observe/services/local/service/actions/validate/<b>ValidateServiceLocalTest.java</b></a> </td> <td>7</td></tr> @@ -143,20 +143,20 @@ <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/test/src/main/java/fr/ird/observe/…">test/src/main/java/fr/ird/observe/test/<b>ObserveFixtures.java</b></a> </td> <td>7</td></tr> <tr class="a"> -<td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/test/src/main/resources/db/7.2/dat…">test/src/main/resources/db/7.2/<b>dataForTestLongline.sql.gz</b></a> </td> +<td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/persistence/src/main/java/fr/ird/o…">persistence/src/main/java/fr/ird/observe/persistence/migration/<b>DataSourceMigrationForVersion_7_2.java</b></a> </td> <td>6</td></tr> <tr class="b"> -<td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/test/src/main/resources/db/7.2/dat…">test/src/main/resources/db/7.2/<b>dataForTestSeine.sql.gz</b></a> </td> +<td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/test/src/main/resources/db/7.2/dat…">test/src/main/resources/db/7.2/<b>dataForTestLongline.sql.gz</b></a> </td> <td>6</td></tr> <tr class="a"> -<td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/test/src/main/resources/db/7.2/ref…">test/src/main/resources/db/7.2/<b>referentiel.sql.gz</b></a> </td> +<td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/test/src/main/resources/db/7.2/dat…">test/src/main/resources/db/7.2/<b>dataForTestSeine.sql.gz</b></a> </td> <td>6</td></tr> <tr class="b"> -<td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/client/src/main/java/fr/ird/observ…">client/src/main/java/fr/ird/observe/client/ui/<b>ObserveMainUIInitializer.java</b></a> </td> +<td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/test/src/main/resources/db/7.2/ref…">test/src/main/resources/db/7.2/<b>referentiel.sql.gz</b></a> </td> <td>6</td></tr> <tr class="a"> -<td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/persistence/src/main/java/fr/ird/o…">persistence/src/main/java/fr/ird/observe/persistence/migration/<b>DataSourceMigrationForVersion_7_2.java</b></a> </td> -<td>5</td></tr> +<td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/client/src/main/java/fr/ird/observ…">client/src/main/java/fr/ird/observe/client/ui/<b>ObserveMainUIInitializer.java</b></a> </td> +<td>6</td></tr> <tr class="b"> <td><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe/client/src/main/java/fr/ird/observ…">client/src/main/java/fr/ird/observe/client/ui/content/<b>ContentUIInitializer.java</b></a> </td> <td>5</td></tr> View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/80c8a1ebbdf756689a5f59462dc… --- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/80c8a1ebbdf756689a5f59462dc… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] update changelog after release 7.0-RC-12 [skip ci]
by Tony CHEMIT 04 May '18

04 May '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 389010fb by Tony CHEMIT at 2018-05-04T09:40:36Z update changelog after release 7.0-RC-12 [skip ci] - - - - - 1 changed file: - CHANGELOG.md Changes: ===================================== CHANGELOG.md ===================================== --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,29 @@ # ObServe changelog * Author [Tony Chemit](mailto:dev@tchemit.fr) - * Last generated at 2018-04-21 12:28. + * Last generated at 2018-05-04 11:38. + +## Version [7.0-RC-12](https://gitlab.com/ultreiaio/ird-observe/milestones/109) + +**Closed at 2018-05-04.** + + +### Issues + * [[Anomalie 934]](https://gitlab.com/ultreiaio/ird-observe/issues/934) **Corriger le problème de validation d&#39;une chaine de caractère dans NonTargetCatchRelease** (Thanks to Tony CHEMIT) (Reported by Tony CHEMIT) + * [[Anomalie 936]](https://gitlab.com/ultreiaio/ird-observe/issues/936) **Problème lors du changement de langue (les référentiels ne sont pas changé dans la bonne langue, mais ok après un redemarrage)** (Thanks to Tony CHEMIT) (Reported by Tony CHEMIT) + * [[Evolution 929]](https://gitlab.com/ultreiaio/ird-observe/issues/929) **Ajout d&#39;un référentiel PS NonTargetCatchReleaseConformity** (Thanks to Tony CHEMIT) (Reported by Tony CHEMIT) + * [[Evolution 930]](https://gitlab.com/ultreiaio/ird-observe/issues/930) **Supprimer l&#39;entrée non conforme du SpeciesGroupReleaseMode et toutes les associations indiuites sur les Speciesgroup** (Thanks to Tony CHEMIT) (Reported by Tony CHEMIT) + * [[Evolution 931]](https://gitlab.com/ultreiaio/ird-observe/issues/931) **Mettre les mêmes modes de libération que Whale shark pour le groupe d&#39;espèce Cetaceans.** (Thanks to Tony CHEMIT) (Reported by Tony CHEMIT) + * [[Evolution 932]](https://gitlab.com/ultreiaio/ird-observe/issues/932) **Remplacer detectionTime et release time par un référentiel NonTargetCatchReleasingTime** (Thanks to Tony CHEMIT) (Reported by Tony CHEMIT) + * [[Evolution 933]](https://gitlab.com/ultreiaio/ird-observe/issues/933) **Mettre à jour le référentiel NonTargetCatchReleaseStatus** (Thanks to Tony CHEMIT) (Reported by Tony CHEMIT) + * [[Evolution 935]](https://gitlab.com/ultreiaio/ird-observe/issues/935) **Revue des FAD material** (Thanks to Tony CHEMIT) (Reported by Tony CHEMIT) + * [[Evolution 937]](https://gitlab.com/ultreiaio/ird-observe/issues/937) **Calculer en temps réel les données calculées sur un FAD lors de la modification de ses materials** (Thanks to Tony CHEMIT) (Reported by Tony CHEMIT) + * [[Evolution 938]](https://gitlab.com/ultreiaio/ird-observe/issues/938) **Ajouter une nouvelle règle si un dcp présent alors le type de banc est obligatoirement Objet (changement de l&#39;algorithme de consolidation)** (Thanks to Tony CHEMIT) (Reported by Tony CHEMIT) + * [[Evolution 941]](https://gitlab.com/ultreiaio/ird-observe/issues/941) **Gestion des requins-baleine lors de la migration V7 et dans le fonctionnement régulier de la V7** (Thanks to Pascal Cauquil) (Reported by Pascal Cauquil) + +### Download +* [Application (observe-7.0-RC-12.zip)](https://ultreia.io/release/observe-7.0-RC-12.zip) +* [Serveur (observe-7.0-RC-12.war)](https://ultreia.io/release/observe-7.0-RC-12.war) ## Version [7.0-RC-11](https://gitlab.com/ultreiaio/ird-observe/milestones/108) View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/389010fb5c573a89c873a83d4e5… --- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/389010fb5c573a89c873a83d4e5… You're receiving this email because of your account on gitlab.com.
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.