Observe-commits
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
- 7199 discussions
[Git][ultreiaio/ird-observe][develop] 2 commits: fix species screen loading
by Tony CHEMIT 19 Aug '17
by Tony CHEMIT 19 Aug '17
19 Aug '17
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
2ba617f5 by Tony CHEMIT at 2017-08-19T11:31:43+00:00
fix species screen loading
- - - - -
ae7cc206 by Tony CHEMIT at 2017-08-19T11:31:45+00:00
Permettre l'utilisation de la molette de la souris même sur des zones protégées (See #854)
- - - - -
3 changed files:
- client/src/main/java/fr/ird/observe/client/ui/content/ref/ContentReferenceUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/table/ObserveContentTableUI.java
- services/src/main/java/fr/ird/observe/services/ObserveDtoInitializer.java
Changes:
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/ref/ContentReferenceUI.jaxx
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/ref/ContentReferenceUI.jaxx
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/ref/ContentReferenceUI.jaxx
@@ -41,6 +41,7 @@
fr.ird.observe.client.ui.actions.main.global.NewNextDataGlobalUIAction
fr.ird.observe.client.ui.actions.main.global.ResetDataGlobalUIAction
fr.ird.observe.client.ui.actions.main.global.SaveDataGlobalUIAction
+ fr.ird.observe.client.ui.util.ObserveBlockingLayerUI
org.nuiton.jaxx.widgets.select.BeanListHeader
org.nuiton.jaxx.validator.swing.SwingValidator
@@ -70,7 +71,7 @@
<ReferentialDto id='bean'/>
- <BlockingLayerUI id='editKeyTableLayerUI'/>
+ <ObserveBlockingLayerUI id='editKeyTableLayerUI'/>
<CardLayout2Ext id='viewLayout' constructorParams='this, "body"'/>
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/table/ObserveContentTableUI.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/table/ObserveContentTableUI.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/table/ObserveContentTableUI.java
@@ -23,11 +23,11 @@ package fr.ird.observe.client.ui.content.table;
*/
import fr.ird.observe.client.ui.content.ObserveContentUI;
+import fr.ird.observe.client.ui.util.ObserveBlockingLayerUI;
import fr.ird.observe.services.dto.IdDto;
import javax.swing.JComponent;
import javax.swing.JTable;
import javax.swing.ListSelectionModel;
-import org.nuiton.jaxx.runtime.swing.BlockingLayerUI;
import org.nuiton.jaxx.validator.swing.SwingValidator;
/**
@@ -59,9 +59,9 @@ public interface ObserveContentTableUI<E extends IdDto, D extends IdDto, U exten
ListSelectionModel getSelectionModel();
- BlockingLayerUI getBlockLayerUI();
+ ObserveBlockingLayerUI getBlockLayerUI();
- BlockingLayerUI getEditorBlockLayerUI();
+ ObserveBlockingLayerUI getEditorBlockLayerUI();
SwingValidator<E> getValidator();
=====================================
services/src/main/java/fr/ird/observe/services/ObserveDtoInitializer.java
=====================================
--- a/services/src/main/java/fr/ird/observe/services/ObserveDtoInitializer.java
+++ b/services/src/main/java/fr/ird/observe/services/ObserveDtoInitializer.java
@@ -1473,6 +1473,7 @@ public class ObserveDtoInitializer {
flushReferential(referentialFormBuilder((SpeciesDto.class))
.addKey(SpeciesDto.PROPERTY_OCEAN, referenceSetDefinition(OceanDto.class))
+ .addKey(SpeciesDto.PROPERTY_SIZE_MEASURE_TYPE, referenceSetDefinition(SizeMeasureTypeDto.class))
.addKey(SpeciesDto.PROPERTY_SPECIES_GROUP, referenceSetDefinition(SpeciesGroupDto.class)));
}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/026dddd36e299a2dd5f01708d4…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/026dddd36e299a2dd5f01708d4…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] Permettre l'utilisation de la molette de la souris même sur des zones protégées (See #854)
by Tony CHEMIT 19 Aug '17
by Tony CHEMIT 19 Aug '17
19 Aug '17
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
026dddd3 by Tony CHEMIT at 2017-08-19T11:13:39+00:00
Permettre l'utilisation de la molette de la souris même sur des zones protégées (See #854)
- - - - -
8 changed files:
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/admin/AdminUI.jaxx
- + client/src/main/java/fr/ird/observe/client/ui/admin/AdminUIBlockingLayerUI.java
- client/src/main/java/fr/ird/observe/client/ui/content/ContentUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/ContentUIBlockingLayerUI.java
- client/src/main/java/fr/ird/observe/client/ui/content/table/ContentTableUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIBlockingLayerUI.java
- + client/src/main/java/fr/ird/observe/client/ui/util/ObserveBlockingLayerUI.java
Changes:
=====================================
client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx
+++ b/client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx
@@ -80,10 +80,10 @@
fr.ird.observe.client.ui.tree.navigation.NavigationTree
fr.ird.observe.client.ui.tree.navigation.NavigationTreeHeader
fr.ird.observe.client.ui.util.UIHelper
+ fr.ird.observe.client.ui.util.ObserveBlockingLayerUI
org.nuiton.jaxx.runtime.swing.CardLayout2
org.nuiton.jaxx.runtime.swing.CardLayout2Ext
- org.nuiton.jaxx.runtime.swing.BlockingLayerUI
org.nuiton.jaxx.widgets.status.StatusMessagePanel
org.nuiton.jaxx.validator.swing.SwingValidatorMessageTableModel
@@ -126,7 +126,7 @@
<CardLayout2Ext id='bodyLayout' constructorParams='this, "body"'/>
- <BlockingLayerUI id='busyBlockLayerUI'/>
+ <ObserveBlockingLayerUI id='busyBlockLayerUI'/>
<script><![CDATA[
=====================================
client/src/main/java/fr/ird/observe/client/ui/admin/AdminUI.jaxx
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/admin/AdminUI.jaxx
+++ b/client/src/main/java/fr/ird/observe/client/ui/admin/AdminUI.jaxx
@@ -40,16 +40,16 @@
<AdminUIModel id='model' initializer='getContextValue(AdminUIModel.class)'/>
<!-- le bloqueur d'ui utilisé par l'assistant -->
- <BlockingLayerUI id='tabBusyBlockLayerUI'/>
+ <AdminUIBlockingLayerUI id='tabBusyBlockLayerUI' constructorParams="this"/>
<!-- le bloqueur d'ui lorsqu'une action est en cours ou annulée -->
- <BlockingLayerUI id='busyBlockLayerUI'/>
+ <AdminUIBlockingLayerUI id='busyBlockLayerUI' constructorParams="this"/>
<!-- le bloqueur de changement d'opérations -->
- <BlockingLayerUI id='operationBlockLayerUI'/>
+ <AdminUIBlockingLayerUI id='operationBlockLayerUI' constructorParams="this"/>
<!-- le bloqueur de changement de configuration -->
- <BlockingLayerUI id='configBlockLayerUI'/>
+ <AdminUIBlockingLayerUI id='configBlockLayerUI' constructorParams="this"/>
<script><![CDATA[
=====================================
client/src/main/java/fr/ird/observe/client/ui/admin/AdminUIBlockingLayerUI.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/admin/AdminUIBlockingLayerUI.java
@@ -0,0 +1,41 @@
+package fr.ird.observe.client.ui.admin;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ui.util.ObserveBlockingLayerUI;
+
+/**
+ * Created on 09/11/16.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ * @since 6.0
+ */
+class AdminUIBlockingLayerUI extends ObserveBlockingLayerUI {
+
+ private final AdminUI ui;
+
+ AdminUIBlockingLayerUI(AdminUI ui) {
+ this.ui = ui;
+ }
+
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/ContentUI.jaxx
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/ContentUI.jaxx
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/ContentUI.jaxx
@@ -46,7 +46,6 @@
org.jdesktop.jxlayer.JXLayer
- org.nuiton.jaxx.runtime.swing.BlockingLayerUI
org.nuiton.jaxx.validator.swing.SwingValidatorMessageTableModel
javax.swing.JComboBox
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/ContentUIBlockingLayerUI.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/ContentUIBlockingLayerUI.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/ContentUIBlockingLayerUI.java
@@ -25,6 +25,7 @@ package fr.ird.observe.client.ui.content;
import com.google.common.collect.ImmutableSet;
import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.client.ui.actions.UIActionSupport;
+import fr.ird.observe.client.ui.util.ObserveBlockingLayerUI;
import java.awt.event.ActionEvent;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
@@ -38,7 +39,6 @@ import javax.swing.SwingUtilities;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.jdesktop.jxlayer.JXLayer;
-import org.nuiton.jaxx.runtime.swing.BlockingLayerUI;
/**
* Created on 09/11/16.
@@ -46,7 +46,7 @@ import org.nuiton.jaxx.runtime.swing.BlockingLayerUI;
* @author Tony Chemit - dev(a)tchemit.fr
* @since 6.0
*/
-public class ContentUIBlockingLayerUI extends BlockingLayerUI {
+public class ContentUIBlockingLayerUI extends ObserveBlockingLayerUI {
/** Logger */
private static final Log log = LogFactory.getLog(ContentUIBlockingLayerUI.class);
@@ -68,7 +68,7 @@ public class ContentUIBlockingLayerUI extends BlockingLayerUI {
private final ContentUI ui;
- public ContentUIBlockingLayerUI(ContentUI ui) {
+ ContentUIBlockingLayerUI(ContentUI ui) {
this.ui = ui;
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/table/ContentTableUI.jaxx
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/table/ContentTableUI.jaxx
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/table/ContentTableUI.jaxx
@@ -37,8 +37,8 @@
fr.ird.observe.client.ui.actions.main.global.NewNextDataGlobalUIAction
fr.ird.observe.client.ui.actions.main.global.ResetDataGlobalUIAction
fr.ird.observe.client.ui.actions.main.global.SaveDataGlobalUIAction
+ fr.ird.observe.client.ui.util.ObserveBlockingLayerUI
- org.nuiton.jaxx.runtime.swing.BlockingLayerUI
org.nuiton.jaxx.validator.swing.SwingValidator
fr.ird.observe.services.dto.AbstractObserveDto
@@ -78,7 +78,7 @@
onValueChanged='getHandler().updateEditor(event)'/>
<!-- le bloqueur de l'editeur d'une entrée du tableau -->
- <BlockingLayerUI id='editorBlockLayerUI'/>
+ <ObserveBlockingLayerUI id='editorBlockLayerUI'/>
<IdDto id='tableEditBean' initializer='getModel().getTableEditBean()'/>
=====================================
client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIBlockingLayerUI.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIBlockingLayerUI.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIBlockingLayerUI.java
@@ -25,6 +25,7 @@ package fr.ird.observe.client.ui.storage;
import com.google.common.collect.ImmutableSet;
import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.client.ui.actions.UIActionSupport;
+import fr.ird.observe.client.ui.util.ObserveBlockingLayerUI;
import java.awt.event.ActionEvent;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
@@ -38,7 +39,6 @@ import javax.swing.SwingUtilities;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.jdesktop.jxlayer.JXLayer;
-import org.nuiton.jaxx.runtime.swing.BlockingLayerUI;
/**
* Created on 09/11/16.
@@ -46,7 +46,7 @@ import org.nuiton.jaxx.runtime.swing.BlockingLayerUI;
* @author Tony Chemit - dev(a)tchemit.fr
* @since 6.0
*/
-public class StorageUIBlockingLayerUI extends BlockingLayerUI {
+public class StorageUIBlockingLayerUI extends ObserveBlockingLayerUI {
/** Logger */
private static final Log log = LogFactory.getLog(StorageUIBlockingLayerUI.class);
=====================================
client/src/main/java/fr/ird/observe/client/ui/util/ObserveBlockingLayerUI.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/util/ObserveBlockingLayerUI.java
@@ -0,0 +1,57 @@
+package fr.ird.observe.client.ui.util;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import com.google.common.collect.ImmutableSet;
+import fr.ird.observe.client.ObserveSwingApplicationContext;
+import fr.ird.observe.client.ui.actions.UIActionSupport;
+import java.awt.event.ActionEvent;
+import java.awt.event.KeyEvent;
+import java.awt.event.MouseEvent;
+import java.awt.event.MouseWheelEvent;
+import java.util.Set;
+import javax.swing.Action;
+import javax.swing.ActionMap;
+import javax.swing.InputMap;
+import javax.swing.JComponent;
+import javax.swing.KeyStroke;
+import javax.swing.SwingUtilities;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.jdesktop.jxlayer.JXLayer;
+import org.nuiton.jaxx.runtime.swing.BlockingLayerUI;
+
+/**
+ * Created on 09/11/16.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ * @since 6.0
+ */
+public class ObserveBlockingLayerUI extends BlockingLayerUI {
+
+ @Override
+ protected final void processMouseWheelEvent(MouseWheelEvent e, JXLayer<? extends JComponent> l) {
+ // never block that type of events
+ }
+
+}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/026dddd36e299a2dd5f01708d40…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/026dddd36e299a2dd5f01708d40…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] Améliorer le tri des types (See #853)
by Tony CHEMIT 19 Aug '17
by Tony CHEMIT 19 Aug '17
19 Aug '17
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
70600288 by Tony CHEMIT at 2017-08-19T12:33:14+02:00
Améliorer le tri des types (See #853)
- - - - -
1 changed file:
- client/src/main/java/fr/ird/observe/client/ui/tree/selection/nodes/ReferentialsSelectionTreeNode.java
Changes:
=====================================
client/src/main/java/fr/ird/observe/client/ui/tree/selection/nodes/ReferentialsSelectionTreeNode.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/tree/selection/nodes/ReferentialsSelectionTreeNode.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/tree/selection/nodes/ReferentialsSelectionTreeNode.java
@@ -24,9 +24,12 @@ package fr.ird.observe.client.ui.tree.selection.nodes;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
+import fr.ird.observe.client.ObserveSwingApplicationContext;
+import fr.ird.observe.services.decoration.ObserveI18nDecoratorHelper;
import fr.ird.observe.services.dto.referential.ReferentialDto;
import java.util.Iterator;
import org.apache.commons.collections4.EnumerationUtils;
+import org.jetbrains.annotations.NotNull;
import static org.nuiton.i18n.I18n.t;
@@ -41,7 +44,7 @@ public class ReferentialsSelectionTreeNode extends SelectionTreeNodeSupport<Stri
public static ReferentialsSelectionTreeNode of(String name, ImmutableSet<Class<? extends ReferentialDto>> types) {
ReferentialsSelectionTreeNode result = new ReferentialsSelectionTreeNode(t(name));
- for (Class<? extends ReferentialDto> aClass : types) {
+ for (Class<? extends ReferentialDto> aClass : ObserveI18nDecoratorHelper.sortPluralTypes(types, ObserveSwingApplicationContext.get().getConfig().getLocale())) {
ReferentialSelectionTreeNode child = new ReferentialSelectionTreeNode<>(aClass);
result.add(child);
}
@@ -56,7 +59,7 @@ public class ReferentialsSelectionTreeNode extends SelectionTreeNodeSupport<Stri
}
}
- public ReferentialsSelectionTreeNode(String name) {
+ private ReferentialsSelectionTreeNode(String name) {
super(name, true);
}
@@ -80,8 +83,10 @@ public class ReferentialsSelectionTreeNode extends SelectionTreeNodeSupport<Stri
return null;
}
+ @NotNull
@Override
public Iterator<ReferentialSelectionTreeNode<?>> iterator() {
+ //noinspection unchecked
return (Iterator) EnumerationUtils.toList(children()).iterator();
}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/7060028863b8a3929a366478008…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/7060028863b8a3929a366478008…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 2 commits: Améliorer le tri des types (See #853)
by Tony CHEMIT 19 Aug '17
by Tony CHEMIT 19 Aug '17
19 Aug '17
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
b7a9705c by Tony CHEMIT at 2017-08-19T12:25:40+02:00
Améliorer le tri des types (See #853)
- - - - -
4a0f6bd7 by Tony CHEMIT at 2017-08-19T12:25:56+02:00
amélioration du chargement de la base
- - - - -
25 changed files:
- client-configuration/src/main/config/Client.ini
- client-configuration/src/main/java/fr/ird/observe/client/configuration/ClientConfig.java
- client-configuration/src/main/resources/i18n/client-configuration_en_GB.properties
- client-configuration/src/main/resources/i18n/client-configuration_es_ES.properties
- client-configuration/src/main/resources/i18n/client-configuration_fr_FR.properties
- client/src/main/java/fr/ird/observe/client/FloatingObjectReferencesManager.java
- client/src/main/java/fr/ird/observe/client/ObserveOpenDataManager.java
- client/src/main/java/fr/ird/observe/client/db/ClientDataContext.java
- client/src/main/java/fr/ird/observe/client/db/ObserveDataSourcesManager.java
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/global/OpenDataGlobalUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/GotoReferentialCommonAction.java
- client/src/main/java/fr/ird/observe/client/ui/admin/validate/ValidateUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/ref/ReferenceHomeUIModel.java
- client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationTree.java
- client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/referential/ReferentialsNavigationTreeNodeSupport.java
- common/src/main/java/fr/ird/observe/common/ObserveUtil.java
- server/src/main/filtered-resources/mapping
- services-topia/src/main/java/fr/ird/observe/services/topia/service/data/NavigationServiceTopia.java
- services-topia/src/main/java/fr/ird/observe/services/topia/service/data/seine/FloatingObjectServiceTopia.java
- services/src/main/java/fr/ird/observe/services/decoration/ObserveI18nDecoratorHelper.java
- services/src/main/java/fr/ird/observe/services/service/data/NavigationService.java
- services/src/main/java/fr/ird/observe/services/service/data/seine/FloatingObjectService.java
- services/src/main/java/fr/ird/observe/services/validation/ValidationDataContext.java
Changes:
=====================================
client-configuration/src/main/config/Client.ini
=====================================
--- a/client-configuration/src/main/config/Client.ini
+++ b/client-configuration/src/main/config/Client.ini
@@ -454,6 +454,11 @@ description = observe.config.ui.treeOpenNodes
key = ui.treeOpenNodes
type = string
+[option treeSelectedNodes]
+description = observe.config.ui.treeSelectedNodes.description
+key = ui.treeSelectedNodes
+type = string
+
[option validationSpeedEnable]
description = observe.config.validation.speedEnable
key = validation.speedEnable
=====================================
client-configuration/src/main/java/fr/ird/observe/client/configuration/ClientConfig.java
=====================================
--- a/client-configuration/src/main/java/fr/ird/observe/client/configuration/ClientConfig.java
+++ b/client-configuration/src/main/java/fr/ird/observe/client/configuration/ClientConfig.java
@@ -339,7 +339,19 @@ public class ClientConfig extends GeneratedClientConfig {
public void saveTreeOpenNodeIds(String... ids) {
setTreeOpenNodes(StringUtils.join(ids, ","));
- saveForUser();
+ }
+
+ public String[] getTreeSelectedNodeIds() {
+ String ids = getTreeSelectedNodes();
+ String[] result = null;
+ if (ids != null) {
+ result = ids.split(",");
+ }
+ return result;
+ }
+
+ public void saveTreeSelectedNodeIds(String... ids) {
+ setTreeSelectedNodes(StringUtils.join(ids, ","));
}
public File newBackupDataFile() {
=====================================
client-configuration/src/main/resources/i18n/client-configuration_en_GB.properties
=====================================
--- a/client-configuration/src/main/resources/i18n/client-configuration_en_GB.properties
+++ b/client-configuration/src/main/resources/i18n/client-configuration_en_GB.properties
@@ -86,6 +86,7 @@ observe.config.ui.showNumberEditorButton=Flag sets to true to show button to inv
observe.config.ui.showTimeEditorSlider=Show timer slider
observe.config.ui.storeRemoteStorage=Flag sets to true to store in config a remote connexion (except passwords)
observe.config.ui.treeOpenNodes=Opened data from last session
+observe.config.ui.treeSelectedNodes.description=Selected nodes on last data source
observe.config.validation.lengthWeightEnable=Force validation of species length max
observe.config.validation.speedEnable=Force validation of activities speed
observe.config.validation.speedMaxValue=Max speed value used in activities speed validation
=====================================
client-configuration/src/main/resources/i18n/client-configuration_es_ES.properties
=====================================
--- a/client-configuration/src/main/resources/i18n/client-configuration_es_ES.properties
+++ b/client-configuration/src/main/resources/i18n/client-configuration_es_ES.properties
@@ -86,6 +86,7 @@ observe.config.ui.showNumberEditorButton=Para mostrar el botón que permite usar
observe.config.ui.showTimeEditorSlider=Para mostrar la regla de edición de las horas
observe.config.ui.storeRemoteStorage=Para activar la copia de seguridad de la configuración de la fuente de datos remota
observe.config.ui.treeOpenNodes=Nudos abiertos del arbol abiertos cuando se cerró la base por última vez
+observe.config.ui.treeSelectedNodes.description=Selected nodes on last data source \#TODO
observe.config.validation.lengthWeightEnable=Forcer la validation des bormes min/max de taille d'espèce \#TODO
observe.config.validation.speedEnable=Force validation of activities speedTODO
observe.config.validation.speedMaxValue=Max speed value used in activities speed validationTODO
=====================================
client-configuration/src/main/resources/i18n/client-configuration_fr_FR.properties
=====================================
--- a/client-configuration/src/main/resources/i18n/client-configuration_fr_FR.properties
+++ b/client-configuration/src/main/resources/i18n/client-configuration_fr_FR.properties
@@ -86,6 +86,7 @@ observe.config.ui.showNumberEditorButton=Pour afficher le bouton qui permet d'ut
observe.config.ui.showTimeEditorSlider=Pour afficher la réglette d'édition des heures
observe.config.ui.storeRemoteStorage=Pour activer la sauvegarde de la configuration de la source distante
observe.config.ui.treeOpenNodes=Nœuds de l'arbre ouverts lors de la dernière fermeture de la base
+observe.config.ui.treeSelectedNodes.description=Nœuds sélectionnés sur la dernière base ouverte
observe.config.validation.lengthWeightEnable=Forcer la validation des bormes min/max de taille d'espèce
observe.config.validation.speedEnable=Forcer la validation des vitesses d'activités
observe.config.validation.speedMaxValue=Vitesse maximale autorisée dans le contrôle des vitesses d'activités
=====================================
client/src/main/java/fr/ird/observe/client/FloatingObjectReferencesManager.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/FloatingObjectReferencesManager.java
+++ b/client/src/main/java/fr/ird/observe/client/FloatingObjectReferencesManager.java
@@ -81,7 +81,7 @@ public class FloatingObjectReferencesManager {
public void sanitize(ProgressModel progressModel, ObserveSwingDataSource dataSource) {
ImmutableSet<String> existingIds = getIds();
- ImmutableSet<String> ids = dataSource.getFloatingObjectService().retainExistingIds(existingIds);
+ ImmutableSet<String> ids = dataSource.getNavigationService().retainExistingIds(existingIds);
int beforeSize = references.size();
Iterator<FloatingObjectReference> iterator = references.iterator();
=====================================
client/src/main/java/fr/ird/observe/client/ObserveOpenDataManager.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ObserveOpenDataManager.java
+++ b/client/src/main/java/fr/ird/observe/client/ObserveOpenDataManager.java
@@ -23,12 +23,10 @@ package fr.ird.observe.client;
*/
import com.google.common.base.Preconditions;
+import com.google.common.collect.ImmutableSet;
import fr.ird.observe.client.db.ClientDataContext;
import fr.ird.observe.client.db.ObserveSwingDataSource;
import fr.ird.observe.client.ui.util.ProgressModel;
-import fr.ird.observe.services.ObserveServicesProvider;
-import fr.ird.observe.services.dto.IdHelper;
-import fr.ird.observe.services.dto.referential.ProgramDto;
import java.io.Closeable;
import java.util.Objects;
@@ -47,7 +45,7 @@ public class ObserveOpenDataManager implements Closeable {
this.dataContext = dataContext;
}
- public boolean canOpenProgram() {
+ private boolean canOpenProgram() {
return !dataContext.isOpenProgram();
}
@@ -290,60 +288,22 @@ public class ObserveOpenDataManager implements Closeable {
dataContext.resetOpen();
}
- public void sanitizeOpenIds(ProgressModel progressModel, String[] ids) {
+ public void sanitizeIds(ProgressModel progressModel, String[] ids) {
if (ids != null) {
- boolean exists = true;
+ ImmutableSet<String> safeIds = ObserveSwingDataSource.MAIN.getNavigationService().retainExistingIds(ImmutableSet.copyOf(ids));
+
+ progressModel.incrementsCurrentStep();
for (int i = 0, l = ids.length; i < l; i++) {
String id = ids[i];
-
- // si l'id précédent existe, on vérifie l'actuel
- // sinon, on met à null
- if (exists) {
- ObserveServicesProvider servicesProvider = ObserveSwingDataSource.MAIN;
- if (IdHelper.isProgramId(id)) {
-
- exists = servicesProvider.getReferentialService().exists(ProgramDto.class, id);
-
- } else if (IdHelper.isTripSeineId(id)) {
-
- exists = servicesProvider.getTripSeineService().exists(id);
-
- } else if (IdHelper.isRouteId(id)) {
-
- exists = servicesProvider.getRouteService().exists(id);
-
- } else if (IdHelper.isActivitySeineId(id)) {
-
- exists = servicesProvider.getActivitySeineService().exists(id);
-
- } else if (IdHelper.isSetSeineId(id)) {
-
- exists = servicesProvider.getSetSeineService().exists(id);
-
- } else if (IdHelper.isFloatingObjectId(id)) {
-
- exists = servicesProvider.getFloatingObjectService().exists(id);
-
- } else if (IdHelper.isTripLonglineId(id)) {
-
- exists = servicesProvider.getTripLonglineService().exists(id);
-
- } else if (IdHelper.isActivityLonglineId(id)) {
-
- exists = servicesProvider.getActivityLonglineService().exists(id);
-
- } else {
- exists = IdHelper.isSetLonglineId(id) && servicesProvider.getSetLonglineService().exists(id);
- }
- }
-
- if (!exists) {
+ if (!safeIds.contains(id)) {
ids[i] = null;
}
+
progressModel.incrementsCurrentStep();
}
}
}
+
}
=====================================
client/src/main/java/fr/ird/observe/client/db/ClientDataContext.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/db/ClientDataContext.java
+++ b/client/src/main/java/fr/ird/observe/client/db/ClientDataContext.java
@@ -23,9 +23,6 @@ package fr.ird.observe.client.db;
*/
import fr.ird.observe.client.db.constants.DataContextType;
-import fr.ird.observe.services.dto.IdHelper;
-import fr.ird.observe.services.dto.referential.ProgramDto;
-import fr.ird.observe.services.dto.seine.RouteDto;
import fr.ird.observe.services.validation.ValidationDataContext;
import java.util.ArrayList;
import java.util.Arrays;
@@ -243,18 +240,14 @@ public class ClientDataContext extends ValidationDataContext {
firePropertyChange(PROPERTY_ENABLED, oldValue, enabled);
}
- public boolean isSelectionChanged() {
+ private boolean isSelectionChanged() {
return selectionChanged;
}
- private boolean getSelectionChanged() {
- return selectionChanged;
- }
-
- private void setSelectionChanged(boolean selectionChanged) {
- boolean oldValue = getSelectionChanged();
- this.selectionChanged = selectionChanged;
- firePropertyChange(PROPERTY_SELECTION_CHANGED, oldValue, selectionChanged);
+ private void setSelectionChanged() {
+ boolean oldValue = isSelectionChanged();
+ this.selectionChanged = true;
+ firePropertyChange(PROPERTY_SELECTION_CHANGED, oldValue, true);
}
private static DataContextType[] types;
@@ -299,7 +292,7 @@ public class ClientDataContext extends ValidationDataContext {
return null;
}
- private String[] getSelectedIds() {
+ String[] getSelectedIds() {
List<String> ids = new ArrayList<>();
@@ -325,61 +318,6 @@ public class ClientDataContext extends ValidationDataContext {
return ids.toArray(new String[ids.size()]);
}
- public String[] getOpenIds(Class<?> type) {
-
- String[] result = null;
-
- if (isOpenProgram()) {
-
- List<String> ids = new ArrayList<>();
- ids.add(getOpenProgramId());
-
- if (!ProgramDto.class.equals(type) && isOpenTrip()) {
-
- String tripId = getOpenTripId();
- ids.add(tripId);
-
- if (IdHelper.isTripSeineId(tripId)) {
-
- // on a seine trip
- if (!IdHelper.isTripClass(type) && isOpenRoute()) {
-
- ids.add(getOpenRouteId());
-
- if (!RouteDto.class.equals(type) && isOpenActivitySeine()) {
-
- ids.add(getOpenActivitySeineId());
-
- if (!IdHelper.isActivityClass(type) && isOpenSetSeine()) {
- ids.add(getOpenSetSeineId());
- }
- }
- }
-
- } else {
-
- // on a longline trip
- if (!IdHelper.isTripClass(type) && isOpenActivityLongline()) {
-
- ids.add(getOpenActivityLonglineId());
-
- if (!IdHelper.isActivityClass(type) && isOpenSetLongline()) {
- ids.add(getOpenSetLonglineId());
- }
-
- }
-
- }
-
- }
-
- result = ids.toArray(new String[ids.size()]);
-
- }
-
- return result;
- }
-
public boolean isOpenProgram() {
return openProgramId != null;
}
@@ -430,34 +368,26 @@ public class ClientDataContext extends ValidationDataContext {
for (DataContextType entityType : DataContextType.values()) {
if (entityType.acceptType(type)) {
- // bon type trouve
-
String openId = entityType.getOpenId(this);
String selectedId = entityType.getSelectedId(this);
- if (selectedId == null || openId == null) {
+ return selectedId != null && openId != null && selectedId.equals(openId);
- // pas selectionne ou rien d'ouvert
- return false;
- }
-
- return selectedId.equals(openId);
}
}
- // type non trouve
return false;
}
public void populateSelectedIds(String... selectedId) {
-
+ if (!getEnabled()) {
+ throw new IllegalStateException(this + " is not enabled");
+ }
List<String> oldSelection = Arrays.asList(getSelectedIds());
if (log.isDebugEnabled()) {
log.debug("old selection = " + oldSelection);
}
- // on nettoye toujours toutes les anciennes sélections
- // avant de positionner les nouvelles
resetSelect();
List<String> realSelection = null;
@@ -500,20 +430,12 @@ public class ClientDataContext extends ValidationDataContext {
log.info("new selection = " + realSelection);
}
- // on change toujours l'état de selection
-
- setSelectionChanged(true);
+ setSelectionChanged();
}
void populateOpens(String... openIds) {
if (!getEnabled()) {
-
- if (log.isWarnEnabled()) {
- log.warn(this + " is not enabled");
- }
- // service non initialisé
- resetOpen();
- return;
+ throw new IllegalStateException(this + " is not enabled");
}
List<String> oldSelection = Arrays.asList(getOpenIds());
@@ -605,6 +527,7 @@ public class ClientDataContext extends ValidationDataContext {
}
}
+ @Override
protected void reset() {
resetOpen();
resetSelect();
@@ -629,8 +552,19 @@ public class ClientDataContext extends ValidationDataContext {
setOpenActivityLonglineId(null);
}
- protected void firePropertyChange(String propertyName, Object newValue) {
- firePropertyChange(propertyName, null, newValue);
+ public boolean isSelectedRoute() {
+ return getSelectedRouteId() != null;
}
-} //ClientDataContext
+ public boolean isSelectedSetSeine() {
+ return getSelectedSetSeineId() != null;
+ }
+
+ public boolean isSelectedSetLongline() {
+ return getSelectedSetLonglineId() != null;
+ }
+
+ public boolean isSelectedFloatingObject() {
+ return getSelectedFloatingObjectId()!=null;
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/db/ObserveDataSourcesManager.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/db/ObserveDataSourcesManager.java
+++ b/client/src/main/java/fr/ird/observe/client/db/ObserveDataSourcesManager.java
@@ -474,7 +474,7 @@ public class ObserveDataSourcesManager implements Closeable {
// la base n'a pas pu être chargée proprement
// ceci peut être due a une base dans une version pas
// assez recente, on doit donc refermer cette base
- handlingError("Could not obtain open datas from " + source.getLabel(), e);
+ handlingError("Could not obtain open data from " + source.getLabel(), e);
// fermeture de la source
source.close();
@@ -491,10 +491,10 @@ public class ObserveDataSourcesManager implements Closeable {
ClientDataContext dataContext = applicationContext.getDataContext();
dataContext.setEnabled(false);
- // suppresion des opens dans le context de données
applicationContext.getConfig().saveTreeOpenNodeIds(dataContext.getOpenIds());
- dataContext.populateOpens();
-
+ applicationContext.getConfig().saveTreeSelectedNodeIds(dataContext.getSelectedIds());
+ applicationContext.getConfig().saveForUser();
+ dataContext.reset();
mainUI.getInitializer().cleanNavigationUI(new ProgressModel());
// on met a jour l'état dans la config
@@ -561,9 +561,13 @@ public class ObserveDataSourcesManager implements Closeable {
mainUI.getInitializer().cleanNavigationUI(progressModel);
String[] openIds = config.getTreeOpenNodeIds();
+ String[] selectedIds = config.getTreeSelectedNodeIds();
+ if (source.canReadData()) {
+ applicationContext.getOpenDataManager().sanitizeIds(progressModel, selectedIds);
+ }
if (source.canWriteData()) {
- applicationContext.getOpenDataManager().sanitizeOpenIds(progressModel, openIds);
+ applicationContext.getOpenDataManager().sanitizeIds(progressModel, openIds);
}
if (source.canWriteData()) {
@@ -571,6 +575,7 @@ public class ObserveDataSourcesManager implements Closeable {
}
dataContext.populateOpens(openIds);
+ dataContext.populateSelectedIds(selectedIds);
mainUI.getInitializer().loadNavigationUI(progressModel);
=====================================
client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
@@ -144,7 +144,7 @@ public class ObserveMainUIInitializer {
try {
- doOpencontent(ui, path, uiClass);
+ doOpenContent(ui, path, uiClass);
} catch (Exception e) {
UIHelper.handlingError(e);
@@ -160,7 +160,7 @@ public class ObserveMainUIInitializer {
}
}
- private void doOpencontent(ObserveMainUI ui, TreePath path, Class<? extends ContentUI<?, ?>> uiClass) {
+ private void doOpenContent(ObserveMainUI ui, TreePath path, Class<? extends ContentUI<?, ?>> uiClass) {
ContentUIManager manager = ui.getContentUIManager();
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/main/global/OpenDataGlobalUIAction.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/actions/main/global/OpenDataGlobalUIAction.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/main/global/OpenDataGlobalUIAction.java
@@ -48,7 +48,7 @@ public class OpenDataGlobalUIAction extends GlobalUIActionSupport {
UIActionSupport action = null;
if (contentUI instanceof ContentListUI<?, ?, ?>) {
ContentListUI<?, ?, ?> listUI = (ContentListUI<?, ?, ?>) contentUI;
- action = (UIActionSupport) listUI.getGotoOpen().getAction();
+ action = (UIActionSupport) listUI.getReopen().getAction();
} else if (contentUI instanceof ContentOpenableUI<?, ?> && !contentUI.getModel().isCreatingMode()) {
ContentOpenableUI<?, ?> openableUI = (ContentOpenableUI<?, ?>) contentUI;
action = (UIActionSupport) openableUI.getReopen().getAction();
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/GotoReferentialCommonAction.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/GotoReferentialCommonAction.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/GotoReferentialCommonAction.java
@@ -45,7 +45,7 @@ public class GotoReferentialCommonAction extends GotoActionSupport {
super(mainUI,
ACTION_NAME,
null,
- (int) 'e',
+ (int) 'E',
t("observe.type.reference.common"),
t("observe.action.goto.referentiel.common.tip"),
"navigation.referentiel");
=====================================
client/src/main/java/fr/ird/observe/client/ui/admin/validate/ValidateUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/admin/validate/ValidateUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/admin/validate/ValidateUIHandler.java
@@ -200,7 +200,7 @@ public class ValidateUIHandler extends AdminTabUIHandler<ValidateUI> implements
typeModel.clear();
Set<Class> messageTypes = tabUI.getStepModel().getMessageTypes();
- List<Class> classes = ObserveI18nDecoratorHelper.sortTypes(messageTypes);
+ List<Class> classes = ObserveI18nDecoratorHelper.sortTypes(messageTypes, ObserveSwingApplicationContext.get().getConfig().getLocale());
for (Class e : classes) {
typeModel.addElement(e);
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/ref/ReferenceHomeUIModel.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/ref/ReferenceHomeUIModel.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/ref/ReferenceHomeUIModel.java
@@ -23,6 +23,7 @@ package fr.ird.observe.client.ui.content.ref;
*/
import com.google.common.collect.ImmutableList;
+import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.client.ui.content.ContentUIModel;
import fr.ird.observe.services.decoration.ObserveI18nDecoratorHelper;
import fr.ird.observe.services.dto.referential.ProgramDto;
@@ -67,7 +68,7 @@ public abstract class ReferenceHomeUIModel extends ContentUIModel<ProgramDto> {
protected ReferenceHomeUIModel(List<Class<? extends ReferentialDto>> types, String nodeName) {
super(ProgramDto.class);
- this.types = ImmutableList.copyOf(ObserveI18nDecoratorHelper.sortPluralTypes(types));
+ this.types = ImmutableList.copyOf(ObserveI18nDecoratorHelper.sortPluralTypes(types, ObserveSwingApplicationContext.get().getConfig().getLocale()));
this.nodeName = nodeName;
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIHandler.java
@@ -35,7 +35,6 @@ import fr.ird.observe.client.db.ObserveDataSourcesManager;
import fr.ird.observe.client.db.ObserveSwingDataSource;
import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.ObserveMainUI;
-import fr.ird.observe.client.ui.util.UIHelper;
import fr.ird.observe.client.ui.actions.SelectRadioButtonAction;
import fr.ird.observe.client.ui.storage.tabs.ChooseDbModeUI;
import fr.ird.observe.client.ui.storage.tabs.ConfigUI;
@@ -45,6 +44,7 @@ import fr.ird.observe.client.ui.storage.tabs.SelectDataUI;
import fr.ird.observe.client.ui.storage.tabs.StorageTabUI;
import fr.ird.observe.client.ui.tree.selection.SelectionTreeModel;
import fr.ird.observe.client.ui.util.ProgressModel;
+import fr.ird.observe.client.ui.util.UIHelper;
import fr.ird.observe.services.configuration.ObserveDataSourceConfiguration;
import fr.ird.observe.services.configuration.ObserveDataSourceInformation;
import fr.ird.observe.services.configuration.rest.ObserveDataSourceConfigurationRest;
@@ -398,7 +398,13 @@ public class StorageUIHandler implements UIHandler<StorageUI> {
stepsCount += 2;
}
String[] openIds = config.getTreeOpenNodeIds();
- stepsCount += openIds.length;
+ if (openIds != null) {
+ stepsCount += 1 + openIds.length;
+ }
+ String[] selectedIds = config.getTreeSelectedNodeIds();
+ if (selectedIds != null) {
+ stepsCount += 1 + selectedIds.length;
+ }
stepsCount += observeContext.getFloatingObjectReferencesManager().getNames().size();
progressModel.installUI(ui.getCONFIRM().getProgressBar());
=====================================
client/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationTree.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationTree.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationTree.java
@@ -232,51 +232,82 @@ public class NavigationTree extends JXTree {
} else {
- // on trouve le meilleur noeud a selectionner.
-
- String id = context.getHigherOpenId();
+ String id = context.getHigherSelectedId();
NavigationTreeNodeSupport selectedNode = null;
if (id != null) {
- // on se positionne sur la donnée la plus haute ouverte
- if (context.isOpenTrip()) {
+ if (context.isSelectedTrip()) {
- NavigationTreeNodeSupport tripNode = getTripNode(context.getOpenProgramId(), context.getOpenTripId());
- selectedNode = tripNode;
+ selectedNode = getTripNode(context.getSelectedProgramId(), context.getSelectedTripId());
- if (context.isOpenRoute()) {
+ if (context.isSelectedRoute()) {
- NavigationTreeNodeSupport routeNode = getRouteNode(tripNode, context.getOpenRouteId());
- selectedNode = routeNode;
- if (context.isOpenActivity()) {
+ selectedNode = getRouteNode(selectedNode, context.getSelectedRouteId());
+ if (context.isSelectedActivitySeine()) {
- NavigationTreeNodeSupport activitySeineNode = getActivitySeineNode(routeNode, context.getOpenActivityId());
- selectedNode = activitySeineNode;
- if (context.isOpenSet()) {
- selectedNode = getSetSeineNode(activitySeineNode);
+ selectedNode = getActivitySeineNode(selectedNode, context.getSelectedActivityId());
+ if (context.isSelectedSetSeine()) {
+ selectedNode = getSetSeineNode(selectedNode);
+ } else if (context.isSelectedFloatingObject()) {
+ selectedNode = getFloatingObjectNode(selectedNode, context.getSelectedFloatingObjectId());
}
}
}
- if (context.isOpenActivityLongline()) {
+ if (context.isSelectedActivityLongline()) {
- NavigationTreeNodeSupport activityLonglineNode = getActivityLonglineNode(tripNode, context.getOpenActivityId());
- selectedNode = activityLonglineNode;
- if (context.isOpenSet()) {
- selectedNode = getSetLonglineNode(activityLonglineNode);
+ selectedNode = getActivityLonglineNode(selectedNode, context.getSelectedActivityId());
+ if (context.isSelectedSetLongline()) {
+ selectedNode = getSetLonglineNode(selectedNode);
}
}
}
} else {
- selectedNode = getTreeModel().getRoot();
- if (!selectedNode.isLeaf()) {
- selectedNode = (NavigationTreeNodeSupport) selectedNode.getFirstChild();
- }
+ id = context.getHigherOpenId();
+
+ if (id != null) {
+
+ if (context.isOpenTrip()) {
+
+ selectedNode = getTripNode(context.getOpenProgramId(), context.getOpenTripId());
+
+ if (context.isOpenRoute()) {
+
+ selectedNode = getRouteNode(selectedNode, context.getOpenRouteId());
+ if (context.isOpenActivity()) {
+
+ selectedNode = getActivitySeineNode(selectedNode, context.getOpenActivityId());
+ if (context.isOpenSet()) {
+ selectedNode = getSetSeineNode(selectedNode);
+
+ }
+ }
+ }
+
+ if (context.isOpenActivityLongline()) {
+
+ selectedNode = getActivityLonglineNode(selectedNode, context.getOpenActivityId());
+
+ if (context.isOpenSet()) {
+ selectedNode = getSetLonglineNode(selectedNode);
+
+ }
+ }
+ }
+
+ } else {
+
+ selectedNode = getTreeModel().getRoot();
+ if (!selectedNode.isLeaf()) {
+ selectedNode = (NavigationTreeNodeSupport) selectedNode.getFirstChild();
+ }
+
+ }
}
@@ -585,6 +616,10 @@ public class NavigationTree extends JXTree {
return getTreeModel().findNodeByType(activitySeineNode, SetSeineNavigationTreeNode.class);
}
+ public NavigationTreeNodeSupport getFloatingObjectNode(NavigationTreeNodeSupport setSeineNode, String floatingObjectId) {
+ return getTreeModel().findNode(setSeineNode, floatingObjectId);
+ }
+
public NavigationTreeNodeSupport getSetLonglineNode(NavigationTreeNodeSupport activityLonglineNode) {
return getTreeModel().findNodeByType(activityLonglineNode, SetLonglineNavigationTreeNode.class);
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/referential/ReferentialsNavigationTreeNodeSupport.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/referential/ReferentialsNavigationTreeNodeSupport.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/referential/ReferentialsNavigationTreeNodeSupport.java
@@ -23,6 +23,7 @@ package fr.ird.observe.client.ui.tree.navigation.nodes.referential;
*/
import com.google.common.collect.ImmutableSet;
+import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.client.ui.tree.navigation.nodes.StringNavigationTreeNodeSupport;
import fr.ird.observe.services.decoration.ObserveI18nDecoratorHelper;
import fr.ird.observe.services.dto.referential.ReferentialDto;
@@ -35,9 +36,9 @@ import fr.ird.observe.services.dto.referential.ReferentialDto;
*/
public abstract class ReferentialsNavigationTreeNodeSupport extends StringNavigationTreeNodeSupport {
- public ReferentialsNavigationTreeNodeSupport(String name, ImmutableSet<Class<? extends ReferentialDto>> types) {
+ ReferentialsNavigationTreeNodeSupport(String name, ImmutableSet<Class<? extends ReferentialDto>> types) {
super(name, true);
- for (Class<? extends ReferentialDto> aClass : ObserveI18nDecoratorHelper.sortPluralTypes(types)) {
+ for (Class<? extends ReferentialDto> aClass : ObserveI18nDecoratorHelper.sortPluralTypes(types, ObserveSwingApplicationContext.get().getConfig().getLocale())) {
ReferentialNavigationTreeNode child = new ReferentialNavigationTreeNode<>(aClass);
add(child);
}
=====================================
common/src/main/java/fr/ird/observe/common/ObserveUtil.java
=====================================
--- a/common/src/main/java/fr/ird/observe/common/ObserveUtil.java
+++ b/common/src/main/java/fr/ird/observe/common/ObserveUtil.java
@@ -22,11 +22,13 @@ package fr.ird.observe.common;
* #L%
*/
+import java.text.Collator;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
import java.util.Properties;
import java.util.function.Function;
@@ -54,10 +56,10 @@ public class ObserveUtil {
return targetProperties;
}
- public static <C extends Class<?>> List<C> sortTypes(Collection<C> types, Function<Class, String> function) {
+ public static <C extends Class<?>> List<C> sortTypes(Collection<C> types, Function<Class, String> function, Locale locale) {
List<C> list = new ArrayList<>(types);
- new ClassComparator<C>(function).sort(list);
+ new ClassComparator<C>(function, locale).sort(list);
return list;
}
@@ -67,16 +69,20 @@ public class ObserveUtil {
private final Map<Class, String> cache;
private final Function<Class, String> function;
- private ClassComparator(Function<Class, String> function) {
+ private final Collator collator;
+
+ private ClassComparator(Function<Class, String> function, Locale locale) {
this.cache = new HashMap<>();
this.function = function;
+ this.collator = Collator.getInstance(locale);
+ this.collator.setStrength(Collator.PRIMARY);
}
@Override
public int compare(Class o1, Class o2) {
String s1 = getValue(o1);
String s2 = getValue(o2);
- return s1.compareTo(s2);
+ return this.collator.compare(s1, s2);
}
String getValue(Class klass) {
@@ -88,4 +94,5 @@ public class ObserveUtil {
cache.clear();
}
}
+
}
=====================================
server/src/main/filtered-resources/mapping
=====================================
--- a/server/src/main/filtered-resources/mapping
+++ b/server/src/main/filtered-resources/mapping
@@ -85,6 +85,7 @@ POST /api/v1/actions/synchro/referential/ng/ReferentialSynchronizeService/prod
POST /api/v1/actions/validate/ValidateService/validateData v1.actions.validate.ValidateServiceRestApi.validateData
POST /api/v1/actions/validate/ValidateService/validateReferential v1.actions.validate.ValidateServiceRestApi.validateReferential
GET /api/v1/data/NavigationService/getNavigation v1.data.NavigationServiceRestApi.getNavigation
+GET /api/v1/data/NavigationService/retainExistingIds v1.data.NavigationServiceRestApi.retainExistingIds
POST /api/v1/data/TripManagementService/deleteTrip v1.data.TripManagementServiceRestApi.deleteTrip
POST /api/v1/data/TripManagementService/exportTrip v1.data.TripManagementServiceRestApi.exportTrip
POST /api/v1/data/TripManagementService/importTrip v1.data.TripManagementServiceRestApi.importTrip
@@ -160,7 +161,6 @@ GET /api/v1/data/seine/FloatingObjectService/loadDto
GET /api/v1/data/seine/FloatingObjectService/loadForm v1.data.seine.FloatingObjectServiceRestApi.loadForm
GET /api/v1/data/seine/FloatingObjectService/loadReferenceToRead v1.data.seine.FloatingObjectServiceRestApi.loadReferenceToRead
GET /api/v1/data/seine/FloatingObjectService/preCreate v1.data.seine.FloatingObjectServiceRestApi.preCreate
-GET /api/v1/data/seine/FloatingObjectService/retainExistingIds v1.data.seine.FloatingObjectServiceRestApi.retainExistingIds
POST /api/v1/data/seine/FloatingObjectService/save v1.data.seine.FloatingObjectServiceRestApi.save
POST /api/v1/data/seine/FloatingObjectService/saveParts v1.data.seine.FloatingObjectServiceRestApi.saveParts
GET /api/v1/data/seine/NonTargetCatchReleaseService/getSampleSpecies v1.data.seine.NonTargetCatchReleaseServiceRestApi.getSampleSpecies
=====================================
services-topia/src/main/java/fr/ird/observe/services/topia/service/data/NavigationServiceTopia.java
=====================================
--- a/services-topia/src/main/java/fr/ird/observe/services/topia/service/data/NavigationServiceTopia.java
+++ b/services-topia/src/main/java/fr/ird/observe/services/topia/service/data/NavigationServiceTopia.java
@@ -26,6 +26,8 @@ import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Maps;
+import fr.ird.observe.persistence.ObserveTopiaPersistenceContext;
+import fr.ird.observe.services.dto.IdHelper;
import fr.ird.observe.services.dto.longline.TripLonglineDto;
import fr.ird.observe.services.dto.longline.TripLonglineHelper;
import fr.ird.observe.services.dto.reference.DataReference;
@@ -112,4 +114,56 @@ public class NavigationServiceTopia extends ObserveServiceTopia implements Navig
return new NavigationResult(programsBuilder.build(), tripsSeineByProgram, tripsLonglineByProgram);
}
+
+ @Override
+ public ImmutableSet<String> retainExistingIds(ImmutableSet<String> ids) {
+ ImmutableSet.Builder<String> result = ImmutableSet.builder();
+
+ ObserveTopiaPersistenceContext topiaPersistenceContext = serviceContext.getTopiaPersistenceContext();
+ for (String id : ids) {
+ boolean exists;
+ if (IdHelper.isProgramId(id)) {
+
+ exists = topiaPersistenceContext.getProgramDao().forTopiaIdEquals(id).exists();
+
+ } else if (IdHelper.isTripSeineId(id)) {
+
+ exists = topiaPersistenceContext.getTripSeineDao().forTopiaIdEquals(id).exists();
+
+ } else if (IdHelper.isRouteId(id)) {
+
+ exists = topiaPersistenceContext.getRouteDao().forTopiaIdEquals(id).exists();
+
+ } else if (IdHelper.isActivitySeineId(id)) {
+
+ exists = topiaPersistenceContext.getActivitySeineDao().forTopiaIdEquals(id).exists();
+
+ } else if (IdHelper.isSetSeineId(id)) {
+
+ exists = topiaPersistenceContext.getSetSeineDao().forTopiaIdEquals(id).exists();
+
+ } else if (IdHelper.isFloatingObjectId(id)) {
+
+ exists = topiaPersistenceContext.getFloatingObjectDao().forTopiaIdEquals(id).exists();
+
+ } else if (IdHelper.isTripLonglineId(id)) {
+
+ exists = topiaPersistenceContext.getTripLonglineDao().forTopiaIdEquals(id).exists();
+
+ } else if (IdHelper.isActivityLonglineId(id)) {
+
+ exists = topiaPersistenceContext.getActivityLonglineDao().forTopiaIdEquals(id).exists();
+
+ } else {
+ exists = IdHelper.isSetLonglineId(id) && topiaPersistenceContext.getSetLonglineDao().forTopiaIdEquals(id).exists();
+ }
+ if (exists) {
+ result.add(id);
+ }
+ if (!exists) {
+ break;
+ }
+ }
+ return result.build();
+ }
}
=====================================
services-topia/src/main/java/fr/ird/observe/services/topia/service/data/seine/FloatingObjectServiceTopia.java
=====================================
--- a/services-topia/src/main/java/fr/ird/observe/services/topia/service/data/seine/FloatingObjectServiceTopia.java
+++ b/services-topia/src/main/java/fr/ird/observe/services/topia/service/data/seine/FloatingObjectServiceTopia.java
@@ -99,13 +99,6 @@ public class FloatingObjectServiceTopia extends ObserveServiceTopia implements F
}
@Override
- public ImmutableSet<String> retainExistingIds(ImmutableSet<String> existingIds) {
- LinkedHashSet<String> result = new LinkedHashSet<>(getTopiaPersistenceContext().getFloatingObjectDao().findAllIds());
- result.retainAll(existingIds);
- return ImmutableSet.copyOf(result);
- }
-
- @Override
public DataReference<FloatingObjectDto> loadReferenceToRead(String floatingObjectId) {
if (log.isTraceEnabled()) {
log.trace("loadReferenceToRead(" + floatingObjectId + ")");
=====================================
services/src/main/java/fr/ird/observe/services/decoration/ObserveI18nDecoratorHelper.java
=====================================
--- a/services/src/main/java/fr/ird/observe/services/decoration/ObserveI18nDecoratorHelper.java
+++ b/services/src/main/java/fr/ird/observe/services/decoration/ObserveI18nDecoratorHelper.java
@@ -28,6 +28,7 @@ import fr.ird.observe.services.dto.ObserveDto;
import java.beans.Introspector;
import java.util.Collection;
import java.util.List;
+import java.util.Locale;
import java.util.function.Function;
import org.apache.commons.lang3.StringUtils;
import org.atteo.evo.inflector.English;
@@ -47,12 +48,12 @@ public class ObserveI18nDecoratorHelper {
private static final String OBSERVE_COMMON_PREFIX = "observe.common.";
private static final String OBSERVE_TYPE_PREFIX = "observe.type.";
- public static <C extends Class<?>> List<C> sortTypes(Collection<C> types) {
- return ObserveUtil.sortTypes(types, klass -> t(ObserveI18nDecoratorHelper.getTypeI18nKey(klass)));
+ public static <C extends Class<?>> List<C> sortTypes(Collection<C> types, Locale locale) {
+ return ObserveUtil.sortTypes(types, klass -> t(ObserveI18nDecoratorHelper.getTypeI18nKey(klass)), locale);
}
- public static <C extends Class<?>> List<C> sortPluralTypes(Collection<C> types) {
- return ObserveUtil.sortTypes(types, klass -> t(ObserveI18nDecoratorHelper.getTypePluralI18nKey(klass)));
+ public static <C extends Class<?>> List<C> sortPluralTypes(Collection<C> types, Locale locale) {
+ return ObserveUtil.sortTypes(types, klass -> t(ObserveI18nDecoratorHelper.getTypePluralI18nKey(klass)), locale);
}
public static String getPropertyName(Class key) {
=====================================
services/src/main/java/fr/ird/observe/services/service/data/NavigationService.java
=====================================
--- a/services/src/main/java/fr/ird/observe/services/service/data/NavigationService.java
+++ b/services/src/main/java/fr/ird/observe/services/service/data/NavigationService.java
@@ -22,7 +22,9 @@ package fr.ird.observe.services.service.data;
* #L%
*/
+import com.google.common.collect.ImmutableSet;
import fr.ird.observe.services.service.ObserveService;
+import fr.ird.observe.services.spi.ReadDataPermission;
import io.ultreia.java4all.http.spi.Get;
/**
@@ -36,4 +38,7 @@ public interface NavigationService extends ObserveService {
@Get
NavigationResult getNavigation(NavigationRequest request);
+ @Get
+ @ReadDataPermission
+ ImmutableSet<String> retainExistingIds(ImmutableSet<String> ids);
}
=====================================
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
@@ -59,10 +59,6 @@ public interface FloatingObjectService extends ObserveService {
@Get
@ReadDataPermission
- ImmutableSet<String> retainExistingIds(ImmutableSet<String> existingIds);
-
- @Get
- @ReadDataPermission
Form<FloatingObjectDto> loadForm(String floatingObjectId);
@Get
=====================================
services/src/main/java/fr/ird/observe/services/validation/ValidationDataContext.java
=====================================
--- a/services/src/main/java/fr/ird/observe/services/validation/ValidationDataContext.java
+++ b/services/src/main/java/fr/ird/observe/services/validation/ValidationDataContext.java
@@ -94,6 +94,10 @@ public class ValidationDataContext extends AbstractSerializableBean {
return selectedTripId != null && IdHelper.isSeineId(selectedTripId);
}
+ public boolean isSelectedTrip() {
+ return isSelectedTripLongline() || isSelectedTripSeine();
+ }
+
public String getSelectedRouteId() {
return selectedRouteId;
}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/5f0ccdf55663ac2aa4533695fb…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/5f0ccdf55663ac2aa4533695fb…
You're receiving this email because of your account on gitlab.com.
1
0
19 Aug '17
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
6f074224 by Tony CHEMIT at 2017-08-19T09:04:52+02:00
improve fob reference manager ui
- - - - -
3 changed files:
- client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUIHandler.java
Changes:
=====================================
client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUI.jaxx
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUI.jaxx
+++ b/client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUI.jaxx
@@ -31,32 +31,34 @@
<FloatingObjectReferencesUIModel id="model" initializer="getContextValue(FloatingObjectReferencesUIModel.class)"/>
- <JPanel id="referencePanel" layout="{new BorderLayout()}">
- <BeanComboBox id='references' constructorParams='this' genericType='FloatingObjectReference'
- constraints='BorderLayout.NORTH'/>
- <JLabel id="noReferenceSelected" constraints='BorderLayout.CENTER'/>
- <Table id="referenceForm" constraints='BorderLayout.SOUTH' fill="both">
- <row>
- <cell anchor='west'>
- <JLabel text='observe.common.name'/>
- </cell>
- <cell weightx='1' fill="both" anchor='east'>
- <JTextField id="referenceName" onKeyReleased="model.setModified(true);"/>
- </cell>
- </row>
+ <JSplitPane id="referencePanel">
+ <JList id='references' genericType="FloatingObjectReference"/>
- <row>
- <cell columns='2'>
- <JPanel layout="{new GridLayout(1, 0)}">
- <JButton id="saveAction"/>
- <JButton id="deleteAction"/>
- </JPanel>
- </cell>
- </row>
- </Table>
- </JPanel>
+ <JPanel id="referenceContentPanel" layout="{new BorderLayout()}">
+
+ <JLabel id="noReferenceSelected" constraints='BorderLayout.CENTER'/>
+ <Table id="referenceForm" constraints='BorderLayout.SOUTH' fill="both">
+ <row>
+ <cell anchor='west'>
+ <JLabel text='observe.common.name'/>
+ </cell>
+ <cell weightx='1' fill="both" anchor='east'>
+ <JTextField id="referenceName" onKeyReleased="model.setModified(true);"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2'>
+ <JPanel layout="{new GridLayout(1, 0)}">
+ <JButton id="saveAction"/>
+ <JButton id="deleteAction"/>
+ </JPanel>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
+ </JSplitPane>
<JPanel constraints='BorderLayout.SOUTH' layout="{new GridLayout(1, 0)}">
<JButton id="quitAction"/>
</JPanel>
=====================================
client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUI.jcss
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUI.jcss
+++ b/client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUI.jcss
@@ -19,9 +19,6 @@
* <http://www.gnu.org/licenses/gpl-3.0.html>.
* #L%
*/
-#references {
- selectedItem: {model.getReference()};
-}
#noReferenceSelected {
visible: true;
=====================================
client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/dcprefs/FloatingObjectReferencesUIHandler.java
@@ -23,9 +23,9 @@ package fr.ird.observe.client.ui.dcprefs;
*/
import fr.ird.observe.client.ObserveSwingApplicationContext;
-import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.actions.UIActionSupport;
import fr.ird.observe.client.ui.content.ObserveActionMap;
+import fr.ird.observe.client.ui.util.UIHelper;
import fr.ird.observe.services.dto.FloatingObjectReference;
import java.awt.BorderLayout;
import java.util.LinkedList;
@@ -33,12 +33,11 @@ import java.util.List;
import java.util.Objects;
import java.util.Set;
import javax.swing.AbstractButton;
-import javax.swing.JComponent;
+import javax.swing.DefaultListModel;
import javax.swing.SwingUtilities;
import org.nuiton.decorator.Decorator;
-import org.nuiton.decorator.JXPathDecorator;
import org.nuiton.jaxx.runtime.spi.UIHandler;
-import org.nuiton.jaxx.widgets.select.BeanComboBox;
+import org.nuiton.jaxx.runtime.swing.renderer.DecoratorListCellRenderer;
import static fr.ird.observe.client.ui.content.ContentUIInitializer.OBSERVE_ACTION;
@@ -74,35 +73,50 @@ public class FloatingObjectReferencesUIHandler implements UIHandler<FloatingObje
}
- Decorator<FloatingObjectReference> remoteDecorator = ObserveSwingApplicationContext.get().getDecoratorService().getDecoratorByType(FloatingObjectReference.class);
- ui.getReferences().init((JXPathDecorator<FloatingObjectReference>) remoteDecorator, ui.getModel().getReferences());
+ Decorator<FloatingObjectReference> decorator = ObserveSwingApplicationContext.get().getDecoratorService().getDecoratorByType(FloatingObjectReference.class);
+ ui.getReferences().setCellRenderer(new DecoratorListCellRenderer<>(decorator));
- ui.getModel().addPropertyChangeListener(FloatingObjectReferencesUIModel.PROPERTY_REFERENCES, evt -> ui.getReferences().setData((List<FloatingObjectReference>) evt.getNewValue()));
+ DefaultListModel<FloatingObjectReference> listModel = new DefaultListModel<>();
+ ui.getModel().getReferences().forEach(listModel::addElement);
+ ui.getReferences().setModel(listModel);
+ ui.getReferences().addListSelectionListener(evt -> {
+ if (ui.getReferences().isSelectionEmpty()) {
- ui.getReferences().addPropertyChangeListener(BeanComboBox.PROPERTY_SELECTED_ITEM, evt -> {
+ ui.getModel().setReference(null);
+ } else {
+ ui.getModel().setReference(ui.getReferences().getSelectedValue());
+ }
+ });
+
+ ui.getModel().addPropertyChangeListener(FloatingObjectReferencesUIModel.PROPERTY_REFERENCES, evt -> {
+ List newValue = (List) evt.getNewValue();
+
+ listModel.clear();
+ for (Object reference : newValue) {
+ listModel.addElement((FloatingObjectReference) reference);
+ }
+ });
+
+ ui.getModel().addPropertyChangeListener(FloatingObjectReferencesUIModel.PROPERTY_REFERENCE, evt -> {
FloatingObjectReference oldValue = (FloatingObjectReference) evt.getOldValue();
- FloatingObjectReference newValue = (FloatingObjectReference) evt.getNewValue();
- ui.getModel().setReference(newValue);
if (ui.getModel().getReference() == null) {
- ui.getReferencePanel().remove(ui.getReferenceForm());
- ui.getReferencePanel().add(ui.getNoReferenceSelected(), BorderLayout.CENTER);
+ ui.getReferenceContentPanel().remove(ui.getReferenceForm());
+ ui.getReferenceContentPanel().add(ui.getNoReferenceSelected(), BorderLayout.CENTER);
} else {
if (oldValue == null) {
ui.getReferenceForm().setVisible(true);
- ui.getReferencePanel().remove(ui.getNoReferenceSelected());
- ui.getReferencePanel().add(ui.getReferenceForm(), BorderLayout.CENTER);
+ ui.getReferenceContentPanel().remove(ui.getNoReferenceSelected());
+ ui.getReferenceContentPanel().add(ui.getReferenceForm(), BorderLayout.CENTER);
+ UIHelper.askFocus(ui.getReferenceName());
}
ui.getModel().setModified(false);
}
SwingUtilities.invokeLater(ui::repaint);
});
- ui.getReferences().getCombobox().getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT)
- .put(ObserveKeyStrokes.KEY_STROKE_DELETE, "none");
-
- ObserveKeyStrokes.addKeyStrokeFromMnemonic(ui);
+ UIHelper.askFocus(ui.getQuitAction());
}
protected void init(ObserveActionMap actionMap, AbstractButton editor) {
@@ -112,7 +126,6 @@ public class FloatingObjectReferencesUIHandler implements UIHandler<FloatingObje
return;
}
- // on a trouve une action commune
UIActionSupport action = (UIActionSupport) actionMap.get(actionId);
Objects.requireNonNull(action, "action [" + actionId + "] not found for ui " + ui.getClass().getName());
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/6f0742249c985ce4319a2eaa766…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/6f0742249c985ce4319a2eaa766…
You're receiving this email because of your account on gitlab.com.
1
0
18 Aug '17
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
9e459fc9 by Tony CHEMIT at 2017-08-19T00:06:28+02:00
improve presets decoration
- - - - -
2 changed files:
- client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIHandler.java
- services/src/main/java/fr/ird/observe/services/decoration/DecoratorService.java
Changes:
=====================================
client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIHandler.java
@@ -26,6 +26,7 @@ import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.client.configuration.ClientConfig;
import fr.ird.observe.client.ui.actions.UIActionSupport;
import fr.ird.observe.client.ui.util.UIHelper;
+import fr.ird.observe.services.decoration.DecoratorService;
import fr.ird.observe.services.dto.presets.RemoteDataSourceConfiguration;
import fr.ird.observe.services.dto.presets.ServerDataSourceConfiguration;
import java.awt.BorderLayout;
@@ -82,7 +83,7 @@ public class RemotePresetsUIHandler implements UIHandler<RemotePresetsUI> {
}
- Decorator<RemoteDataSourceConfiguration> remoteDecorator = ObserveSwingApplicationContext.get().getDecoratorService().getDecoratorByType(RemoteDataSourceConfiguration.class);
+ Decorator<RemoteDataSourceConfiguration> remoteDecorator = ObserveSwingApplicationContext.get().getDecoratorService().getDecoratorByType(RemoteDataSourceConfiguration.class,DecoratorService.WITH_URL);
ui.getRemoteConfigurations().setCellRenderer(new DecoratorListCellRenderer<>(remoteDecorator));
DefaultListModel<RemoteDataSourceConfiguration> remoteModel = new DefaultListModel<>();
@@ -134,7 +135,7 @@ public class RemotePresetsUIHandler implements UIHandler<RemotePresetsUI> {
SwingUtilities.invokeLater(ui::repaint);
});
- Decorator<ServerDataSourceConfiguration> serverDecorator = ObserveSwingApplicationContext.get().getDecoratorService().getDecoratorByType(ServerDataSourceConfiguration.class);
+ Decorator<ServerDataSourceConfiguration> serverDecorator = ObserveSwingApplicationContext.get().getDecoratorService().getDecoratorByType(ServerDataSourceConfiguration.class,DecoratorService.WITH_URL);
ui.getServerConfigurations().setCellRenderer(new DecoratorListCellRenderer<>(serverDecorator));
DefaultListModel<ServerDataSourceConfiguration> ServerModel = new DefaultListModel<>();
ui.getModel().getServerDataSourceConfigurations().forEach(ServerModel::addElement);
=====================================
services/src/main/java/fr/ird/observe/services/decoration/DecoratorService.java
=====================================
--- a/services/src/main/java/fr/ird/observe/services/decoration/DecoratorService.java
+++ b/services/src/main/java/fr/ird/observe/services/decoration/DecoratorService.java
@@ -175,6 +175,7 @@ public class DecoratorService extends DecoratorProvider {
public static final String HAULING_IDENTIFIER = "haulingIdentifier";
public static final String TRIP_CONTEXT = "Trip";
+ public static final String WITH_URL = "WithUrl";
/** la locale du referentiel. */
private ReferentialLocale referentialLocale;
@@ -274,7 +275,9 @@ public class DecoratorService extends DecoratorProvider {
registerObserveDecorator(SectionTemplate.class, "${id}$s##${floatlineLengths}$s", " ");
registerObserveDecorator(RemoteDataSourceConfiguration.class, "${name}$s", " ");
+ registerObserveDecorator(WITH_URL,RemoteDataSourceConfiguration.class, "${name}$s##${url}$s", " ");
registerObserveDecorator(ServerDataSourceConfiguration.class, "${name}$s", " ");
+ registerObserveDecorator(WITH_URL,ServerDataSourceConfiguration.class, "${name}$s##${url}$s", " ");
registerObserveDecorator(FloatingObjectReference.class, "${name}$s", " ");
}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/9e459fc9eca7fcfb09107a24b76…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/9e459fc9eca7fcfb09107a24b76…
You're receiving this email because of your account on gitlab.com.
1
0
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
cf2cfe48 by Tony CHEMIT at 2017-08-18T21:40:12+00:00
up pom
- - - - -
1 changed file:
- pom.xml
Changes:
=====================================
pom.xml
=====================================
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
<parent>
<groupId>io.ultreia.maven</groupId>
<artifactId>pom</artifactId>
- <version>20</version>
+ <version>22</version>
</parent>
<groupId>fr.ird.observe</groupId>
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/cf2cfe48b4f131b43a52c42530b…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/cf2cfe48b4f131b43a52c42530b…
You're receiving this email because of your account on gitlab.com.
1
0
18 Aug '17
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
666a6250 by Tony CHEMIT at 2017-08-17T17:02:52+02:00
update third-parties
- - - - -
07b55275 by Tony CHEMIT at 2017-08-17T17:03:03+02:00
optimize dependencies
- - - - -
d8fd85fa by Tony CHEMIT at 2017-08-18T13:57:40+02:00
up some libraries, ready to release
- - - - -
4 changed files:
- client-configuration/src/license/THIRD-PARTY.properties
- client/pom.xml
- pom.xml
- server-configuration/src/license/THIRD-PARTY.properties
Changes:
=====================================
client-configuration/src/license/THIRD-PARTY.properties
=====================================
--- a/client-configuration/src/license/THIRD-PARTY.properties
+++ b/client-configuration/src/license/THIRD-PARTY.properties
@@ -1,35 +1,25 @@
# Generated by org.codehaus.mojo.license.AddThirdPartyMojo
#-------------------------------------------------------------------------------
# Already used licenses in project :
-# - AL 2.0
# - Apache 2.0
# - Apache License 2.0
-# - Apache License, version 2.0
# - BSD License
# - COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
-# - Common Development and Distribution License
-# - Eclipse Distribution License (EDL), Version 1.0
-# - Eclipse Public License (EPL), Version 1.0
-# - Eclipse Public License, Version 1.0
-# - GNU General Public License, Version 2 with the Classpath Exception
-# - GNU Lesser General Public License, Version 2.1
# - General Public License (GPL)
-# - Indiana University Extreme! Lab Software License, vesion 1.1.1
+# - Indiana University Extreme! Lab Software License, version 1.1.1
# - Lesser General Public License (LGPL)
# - Lesser General Public License (LGPL) v 3.0
# - Lesser General Public License (LPGL)
# - Lesser General Public License (LPGL) v 2.1
# - MIT License
# - MPL 1.1
-# - Public Domain
# - The Apache Software License, Version 2.0
+# - The MIT License
# - The New BSD License
-# - The PostgreSQL License
# - WTFPL
#-------------------------------------------------------------------------------
# Please fill the missing licenses for dependencies :
#
#
-#Fri Nov 25 18:31:24 CET 2016
+#Thu Aug 17 16:45:44 CEST 2017
commons-primitives--commons-primitives--1.0=The Apache Software License, Version 2.0
-dom4j--dom4j--1.6.1=BSD License
=====================================
client/pom.xml
=====================================
--- a/client/pom.xml
+++ b/client/pom.xml
@@ -50,8 +50,6 @@
<applicationName>observe</applicationName>
<i18n.bundleOutputName>${applicationName}-i18n</i18n.bundleOutputName>
- <i18n.bundleCsvFile>${applicationName}-i18n.csv</i18n.bundleCsvFile>
- <i18n.bundleCsvSeparator>|</i18n.bundleCsvSeparator>
<!-- generate license bundled files -->
<license.generateBundle>true</license.generateBundle>
@@ -341,6 +339,12 @@
<version>${project.version}</version>
<scope>runtime</scope>
</dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>persistence</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
<!-- Pour avoir les traductions de la configuration dans un seul bundle ... !-->
<dependency>
<groupId>${project.groupId}</groupId>
=====================================
pom.xml
=====================================
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
<parent>
<groupId>io.ultreia.maven</groupId>
<artifactId>pom</artifactId>
- <version>17</version>
+ <version>20</version>
</parent>
<groupId>fr.ird.observe</groupId>
@@ -138,7 +138,7 @@
</scm>
<issueManagement>
<system>gitlab</system>
- <url>https://gitlab.com/ultreia.io/ird-observe</url>
+ <url>https://gitlab.com/${organizationId}/${projectId}</url>
</issueManagement>
<distributionManagement>
<site>
@@ -169,7 +169,7 @@
<processorPluginVersion>1.3</processorPluginVersion>
<jaxxVersion>3.0-alpha-10</jaxxVersion>
- <nuitonI18nVersion>4.0-alpha-3</nuitonI18nVersion>
+ <nuitonI18nVersion>4.0-alpha-4</nuitonI18nVersion>
<nuitonConfigVersion>3.2</nuitonConfigVersion>
<topiaVersion>3.2.1</topiaVersion>
<nuitonValidatorVersion>3.1</nuitonValidatorVersion>
@@ -178,7 +178,7 @@
<nuitonVersionVersion>1.0-rc-2</nuitonVersionVersion>
<httpVersion>1.0.3</httpVersion>
<xworkVersion>2.3.33</xworkVersion>
- <flexmarkVersion>0.22.18</flexmarkVersion>
+ <flexmarkVersion>0.26.4</flexmarkVersion>
<hibernateVersion>5.1.9.Final</hibernateVersion>
<sl4jVersion>1.7.25</sl4jVersion>
<swingXVersion>1.6.5-1</swingXVersion>
@@ -186,7 +186,7 @@
<webmotionVersion>2.5.3</webmotionVersion>
<httpComponentsVersion>4.5.3</httpComponentsVersion>
<geoToolsVersion>17.2</geoToolsVersion>
- <guavaVersion>22.0</guavaVersion>
+ <guavaVersion>23.0</guavaVersion>
<!-- license header configuration -->
<license.licenseName>gpl_v3</license.licenseName>
@@ -199,6 +199,7 @@
<i18n.checkBundle>true</i18n.checkBundle>
<i18n.showEmpty>true</i18n.showEmpty>
<i18n.failsIfDuplicatedKeys>true</i18n.failsIfDuplicatedKeys>
+ <i18n.removeDuplicatedKeys>true</i18n.removeDuplicatedKeys>
<!--config configuration-->
<config.useNuitonI18n>true</config.useNuitonI18n>
@@ -213,6 +214,7 @@
<gitlab.changesAuthor>Tony Chemit</gitlab.changesAuthor>
<gitlab.changesAuthorEmail>dev(a)tchemit.fr</gitlab.changesAuthorEmail>
<gitlab.trackers>Anomalie,Evolution,Tâche</gitlab.trackers>
+ <gitlab.fromMilestone>5.0</gitlab.fromMilestone>
<!-- deploy nothing -->
<maven.deploy.skip>true</maven.deploy.skip>
@@ -720,7 +722,7 @@
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
- <version>4.0.0-b07</version>
+ <version>4.0.0</version>
<scope>provided</scope>
</dependency>
=====================================
server-configuration/src/license/THIRD-PARTY.properties
=====================================
--- a/server-configuration/src/license/THIRD-PARTY.properties
+++ b/server-configuration/src/license/THIRD-PARTY.properties
@@ -1,20 +1,12 @@
# Generated by org.codehaus.mojo.license.AddThirdPartyMojo
#-------------------------------------------------------------------------------
# Already used licenses in project :
-# - AL 2.0
# - Apache 2.0
# - Apache License 2.0
-# - Apache License, version 2.0
# - BSD License
# - COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
-# - Common Development and Distribution License
-# - Eclipse Distribution License (EDL), Version 1.0
-# - Eclipse Public License (EPL), Version 1.0
-# - Eclipse Public License, Version 1.0
-# - GNU General Public License, Version 2 with the Classpath Exception
-# - GNU Lesser General Public License, Version 2.1
# - General Public License (GPL)
-# - Indiana University Extreme! Lab Software License, vesion 1.1.1
+# - Indiana University Extreme! Lab Software License, version 1.1.1
# - Lesser General Public License (LGPL)
# - Lesser General Public License (LGPL) v 3.0
# - Lesser General Public License (LPGL)
@@ -22,15 +14,13 @@
# - MIT License
# - MPL 1.1
# - New BSD License
-# - Public Domain
# - The Apache Software License, Version 2.0
+# - The MIT License
# - The New BSD License
-# - The PostgreSQL License
# - WTFPL
#-------------------------------------------------------------------------------
# Please fill the missing licenses for dependencies :
#
#
-#Fri Nov 25 18:31:14 CET 2016
+#Thu Aug 17 16:45:41 CEST 2017
commons-primitives--commons-primitives--1.0=The Apache Software License, Version 2.0
-dom4j--dom4j--1.6.1=BSD License
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/08505b7ca91cbf74a9de7f199a…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/08505b7ca91cbf74a9de7f199a…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][pages] Site checkin for project ObServe :: Pom
by Tony CHEMIT 18 Aug '17
by Tony CHEMIT 18 Aug '17
18 Aug '17
Tony CHEMIT pushed to branch pages at ultreiaio / ird-observe
Commits:
72b8cf29 by Tony CHEMIT at 2017-08-18T12:53:31+02:00
Site checkin for project ObServe :: Pom
- - - - -
29 changed files:
- administration-web.html
- aggregate-third-party-report.html
- architecture-logicielle.html
- changelog.html
- changes-report.html
- config-report.html
- dependency-convergence.html
- dependency-info.html
- dependency-management.html
- dependency-updates-report.html
- dev-activity.html
- file-activity.html
- index.html
- install-serverPG.html
- install.html
- integration.html
- issue-tracking.html
- license.html
- plugin-management.html
- plugin-updates-report.html
- plugins.html
- project-info.html
- project-reports.html
- project-summary.html
- property-updates-report.html
- sitemap.html
- source-repository.html
- team-list.html
- third-party-report.html
Changes:
=====================================
administration-web.html
=====================================
--- a/administration-web.html
+++ b/administration-web.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Installation de lapplication web</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Installation de lapplication web</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
aggregate-third-party-report.html
=====================================
--- a/aggregate-third-party-report.html
+++ b/aggregate-third-party-report.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Tierces parties (Mode aggrégé)</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Tierces parties (Mode aggrégé)</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
@@ -248,7 +248,7 @@
<td>The Apache Software License, Version 2.0</td></tr>
<tr class="b">
<td><img src="images/icon_success_sml.gif" alt="" />
-<td><a href="./third-party-report.html#io.ultreia.java4all.i18n:i18n-api:4.0-alpha-3">io.ultreia.java4all.i18n:i18n-api:4.0-alpha-3</a></td>
+<td><a href="./third-party-report.html#io.ultreia.java4all.i18n:i18n-api:4.0-alpha-4-SNAPSHOT">io.ultreia.java4all.i18n:i18n-api:4.0-alpha-4-SNAPSHOT</a></td>
<td>provided</td>
<td></td>
<td>jar</td>
@@ -507,7 +507,7 @@
<td>General Public License (GPL)</td></tr>
<tr class="a">
<td><img src="images/icon_success_sml.gif" alt="" />
-<td><a href="./third-party-report.html#io.ultreia.java4all.http:http-api:1.0.2">io.ultreia.java4all.http:http-api:1.0.2</a></td>
+<td><a href="./third-party-report.html#io.ultreia.java4all.http:http-api:1.0.3">io.ultreia.java4all.http:http-api:1.0.3</a></td>
<td>compile</td>
<td></td>
<td>jar</td>
@@ -983,7 +983,7 @@
<td>General Public License (GPL)</td></tr>
<tr class="a">
<td><img src="images/icon_success_sml.gif" alt="" />
-<td><a href="./third-party-report.html#io.ultreia.java4all.i18n:i18n-editor:4.0-alpha-3">io.ultreia.java4all.i18n:i18n-editor:4.0-alpha-3</a></td>
+<td><a href="./third-party-report.html#io.ultreia.java4all.i18n:i18n-editor:4.0-alpha-4-SNAPSHOT">io.ultreia.java4all.i18n:i18n-editor:4.0-alpha-4-SNAPSHOT</a></td>
<td>compile</td>
<td></td>
<td>jar</td>
@@ -1642,14 +1642,14 @@
<th width="20%">License(s)</th>
<td width="80%">Apache License, Version 2.0</td></tr></table><a href="./third-party-report.html#Description">Retour en haut de la page.</a><br /></div>
<div class="section">
-<h3><a name="io.ultreia.java4all.i18n:i18n-api:4.0-alpha-3"></a>io.ultreia.java4all.i18n:i18n-api:4.0-alpha-3</h3>
+<h3><a name="io.ultreia.java4all.i18n:i18n-api:4.0-alpha-4-SNAPSHOT"></a>io.ultreia.java4all.i18n:i18n-api:4.0-alpha-4-SNAPSHOT</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th width="20%">Statut</th>
<td width="80%"><img src="images/icon_success_sml.gif" alt="" /> License clairement définie dans le pom de cette dépendance</td></tr>
<tr class="b">
<th width="20%">GroupId:ArtifactId:Version</th>
-<td width="80%">io.ultreia.java4all.i18n:i18n-api:4.0-alpha-3</td></tr>
+<td width="80%">io.ultreia.java4all.i18n:i18n-api:4.0-alpha-4-SNAPSHOT</td></tr>
<tr class="a">
<th width="20%">Scope</th>
<td width="80%">provided</td></tr>
@@ -2398,14 +2398,14 @@
<th width="20%">License(s)</th>
<td width="80%">General Public License (GPL)</td></tr></table><a href="./third-party-report.html#Description">Retour en haut de la page.</a><br /></div>
<div class="section">
-<h3><a name="io.ultreia.java4all.http:http-api:1.0.2"></a>io.ultreia.java4all.http:http-api:1.0.2</h3>
+<h3><a name="io.ultreia.java4all.http:http-api:1.0.3"></a>io.ultreia.java4all.http:http-api:1.0.3</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th width="20%">Statut</th>
<td width="80%"><img src="images/icon_success_sml.gif" alt="" /> License clairement définie dans le pom de cette dépendance</td></tr>
<tr class="b">
<th width="20%">GroupId:ArtifactId:Version</th>
-<td width="80%">io.ultreia.java4all.http:http-api:1.0.2</td></tr>
+<td width="80%">io.ultreia.java4all.http:http-api:1.0.3</td></tr>
<tr class="a">
<th width="20%">Scope</th>
<td width="80%">compile</td></tr>
@@ -3805,14 +3805,14 @@
<th width="20%">License(s)</th>
<td width="80%">General Public License (GPL)</td></tr></table><a href="./third-party-report.html#Description">Retour en haut de la page.</a><br /></div>
<div class="section">
-<h3><a name="io.ultreia.java4all.i18n:i18n-editor:4.0-alpha-3"></a>io.ultreia.java4all.i18n:i18n-editor:4.0-alpha-3</h3>
+<h3><a name="io.ultreia.java4all.i18n:i18n-editor:4.0-alpha-4-SNAPSHOT"></a>io.ultreia.java4all.i18n:i18n-editor:4.0-alpha-4-SNAPSHOT</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th width="20%">Statut</th>
<td width="80%"><img src="images/icon_success_sml.gif" alt="" /> License clairement définie dans le pom de cette dépendance</td></tr>
<tr class="b">
<th width="20%">GroupId:ArtifactId:Version</th>
-<td width="80%">io.ultreia.java4all.i18n:i18n-editor:4.0-alpha-3</td></tr>
+<td width="80%">io.ultreia.java4all.i18n:i18n-editor:4.0-alpha-4-SNAPSHOT</td></tr>
<tr class="a">
<th width="20%">Scope</th>
<td width="80%">compile</td></tr>
=====================================
architecture-logicielle.html
=====================================
--- a/architecture-logicielle.html
+++ b/architecture-logicielle.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Architecture logicielle dObServe</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Architecture logicielle dObServe</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
changelog.html
=====================================
The diff for this file was not included because it is too large.
=====================================
changes-report.html
=====================================
The diff for this file was not included because it is too large.
=====================================
config-report.html
=====================================
--- a/config-report.html
+++ b/config-report.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Configuration</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Configuration</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
@@ -101,223 +101,19 @@
<th>Nombre d'options</th>
<th>Nombre d'actions</th></tr>
<tr class="b">
-<td><a href="./config-report.html#detail_ServerConfig">ServerConfig</a></td>
-<td>Observe web Configuration</td>
-<td>17</td>
-<td>0</td></tr>
-<tr class="a">
<td><a href="./config-report.html#detail_ClientConfig">ClientConfig</a></td>
<td>Configuration d'ObServe</td>
<td>83</td>
-<td>9</td></tr></table></div>
+<td>9</td></tr>
+<tr class="a">
+<td><a href="./config-report.html#detail_ServerConfig">ServerConfig</a></td>
+<td>Observe web Configuration</td>
+<td>17</td>
+<td>0</td></tr></table></div>
<div class="section">
<h2><a name="Dtail_des_configurations"></a>Détail des configurations</h2><br />
<p>On détaille ici une par une les configurations définies pour le projet</p>
<div class="section">
-<h3><a name="Configuration___ServerConfig"></a><a name="detail_ServerConfig">Configuration ServerConfig</a></h3>
-<p>Nom de la configuration : <b>ServerConfig</b></p>
-<p>Description : <b>Observe web Configuration</b></p>
-<div class="section">
-<h4><a name="Options_de_la_configuration"></a><a name="detail_options_ServerConfig">Options de la configuration</a></h4><br />
-<table border="0" class="table table-striped">
-<tr class="b">
-<th>Clef</th>
-<th>Description</th>
-<th>Valeur par défaut</th>
-<th>Option modifiable</th>
-<th>Option sauvegardable</th>
-<th>Type</th></tr>
-<tr class="a">
-<td>observeweb.build.version</td>
-<td>Version de construction</td>
-<td>
-<div>
-<pre style="monospaced">Pas de valeur par défaut</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">org.nuiton.version.Version</pre></div></td></tr>
-<tr class="b">
-<td>observeweb.build.date</td>
-<td>Date de construction</td>
-<td>
-<div>
-<pre style="monospaced">Pas de valeur par défaut</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">java.lang.String</pre></div></td></tr>
-<tr class="a">
-<td>observeweb.build.number</td>
-<td>Numéro de construction</td>
-<td>
-<div>
-<pre style="monospaced">Pas de valeur par défaut</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">java.lang.String</pre></div></td></tr>
-<tr class="b">
-<td>observeweb.adminApiKey</td>
-<td>Clé API Admin (À changer)</td>
-<td>
-<div>
-<pre style="monospaced">changeme</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">java.lang.String</pre></div></td></tr>
-<tr class="a">
-<td>observeweb.host</td>
-<td>Hôte de l'application</td>
-<td>
-<div>
-<pre style="monospaced">http://localhost:8080</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">java.net.URL</pre></div></td></tr>
-<tr class="b">
-<td>observeweb.apiUrl</td>
-<td>Url de l'api rest</td>
-<td>
-<div>
-<pre style="monospaced">${observeweb.host}/${observeweb.contextPath}/api/v1</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">java.net.URL</pre></div></td></tr>
-<tr class="a">
-<td>observeweb.model.version</td>
-<td>Version du modèle</td>
-<td>
-<div>
-<pre style="monospaced">Pas de valeur par défaut</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">org.nuiton.version.Version</pre></div></td></tr>
-<tr class="b">
-<td>observeweb.devMode</td>
-<td>Mode développeur</td>
-<td>
-<div>
-<pre style="monospaced">true</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">boolean</pre></div></td></tr>
-<tr class="a">
-<td>observeweb.contextPath</td>
-<td>Contexte applicatif</td>
-<td>
-<div>
-<pre style="monospaced">observe</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">java.lang.String</pre></div></td></tr>
-<tr class="b">
-<td>observeweb.baseDirectory</td>
-<td>Répertoire de l'application</td>
-<td>
-<div>
-<pre style="monospaced">/var/local/observeweb/${observeweb.contextPath}</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">java.io.File</pre></div></td></tr>
-<tr class="a">
-<td>observeweb.temporaryDirectory</td>
-<td>Chemin vers le répertoire temporaire</td>
-<td>
-<div>
-<pre style="monospaced">${observeweb.baseDirectory}/temp</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">java.io.File</pre></div></td></tr>
-<tr class="b">
-<td>observeweb.log4jConfigurationFile</td>
-<td>Chemin vers le fichier de configuration des logs</td>
-<td>
-<div>
-<pre style="monospaced">${observeweb.baseDirectory}/observeweb-log4j.conf</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">java.io.File</pre></div></td></tr>
-<tr class="a">
-<td>observeweb.databasesConfigurationFile</td>
-<td>Chemin vers le fichier de configuration des bases</td>
-<td>
-<div>
-<pre style="monospaced">${observeweb.baseDirectory}/databases.yml</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">java.io.File</pre></div></td></tr>
-<tr class="b">
-<td>observeweb.usersConfigurationFile</td>
-<td>Chemin vers le fichier de configuration des utilisateurs</td>
-<td>
-<div>
-<pre style="monospaced">${observeweb.baseDirectory}/users.yml</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">java.io.File</pre></div></td></tr>
-<tr class="a">
-<td>observeweb.sessionExpirationDelay</td>
-<td>Temps maximum d'une session (en minutes)</td>
-<td>
-<div>
-<pre style="monospaced">60</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">int</pre></div></td></tr>
-<tr class="b">
-<td>observeweb.sessionMaximumSize</td>
-<td>Taille maximum de session</td>
-<td>
-<div>
-<pre style="monospaced">10000</pre></div></td>
-<td>Oui</td>
-<td>Non</td>
-<td>
-<div>
-<pre style="monospaced">int</pre></div></td></tr>
-<tr class="a">
-<td>observeweb.httpTimeout</td>
-<td>Temps maximum de tentative de connection http (en millisecondes)</td>
-<td>
-<div>
-<pre style="monospaced">30000</pre></div></td>
-<td>Oui</td>
-<td>Oui</td>
-<td>
-<div>
-<pre style="monospaced">int</pre></div></td></tr></table></div>
-<div class="section">
-<h4><a name="Actions_de_la_configuration"></a><a name="detail_actions_ServerConfig">Actions de la configuration</a></h4><br />
-<p><b>Aucune action définie pour cette configuration</b></p></div></div>
-<div class="section">
<h3><a name="Configuration___ClientConfig"></a><a name="detail_ClientConfig">Configuration ClientConfig</a></h3>
<p>Nom de la configuration : <b>ClientConfig</b></p>
<p>Description : <b>Configuration d'ObServe</b></p>
@@ -1289,7 +1085,211 @@ Deux paramètres sont nécessaires:
Le FQN de la classe
Le nombre d'id à générer.</td>
<td>--create-id</td>
-<td>fr.ird.observe.client.ObserveCLAction#createId</td></tr></table></div></div></div>
+<td>fr.ird.observe.client.ObserveCLAction#createId</td></tr></table></div></div>
+<div class="section">
+<h3><a name="Configuration___ServerConfig"></a><a name="detail_ServerConfig">Configuration ServerConfig</a></h3>
+<p>Nom de la configuration : <b>ServerConfig</b></p>
+<p>Description : <b>Observe web Configuration</b></p>
+<div class="section">
+<h4><a name="Options_de_la_configuration"></a><a name="detail_options_ServerConfig">Options de la configuration</a></h4><br />
+<table border="0" class="table table-striped">
+<tr class="b">
+<th>Clef</th>
+<th>Description</th>
+<th>Valeur par défaut</th>
+<th>Option modifiable</th>
+<th>Option sauvegardable</th>
+<th>Type</th></tr>
+<tr class="a">
+<td>observeweb.build.version</td>
+<td>Version de construction</td>
+<td>
+<div>
+<pre style="monospaced">Pas de valeur par défaut</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">org.nuiton.version.Version</pre></div></td></tr>
+<tr class="b">
+<td>observeweb.build.date</td>
+<td>Date de construction</td>
+<td>
+<div>
+<pre style="monospaced">Pas de valeur par défaut</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">java.lang.String</pre></div></td></tr>
+<tr class="a">
+<td>observeweb.build.number</td>
+<td>Numéro de construction</td>
+<td>
+<div>
+<pre style="monospaced">Pas de valeur par défaut</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">java.lang.String</pre></div></td></tr>
+<tr class="b">
+<td>observeweb.adminApiKey</td>
+<td>Clé API Admin (À changer)</td>
+<td>
+<div>
+<pre style="monospaced">changeme</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">java.lang.String</pre></div></td></tr>
+<tr class="a">
+<td>observeweb.host</td>
+<td>Hôte de l'application</td>
+<td>
+<div>
+<pre style="monospaced">http://localhost:8080</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">java.net.URL</pre></div></td></tr>
+<tr class="b">
+<td>observeweb.apiUrl</td>
+<td>Url de l'api rest</td>
+<td>
+<div>
+<pre style="monospaced">${observeweb.host}/${observeweb.contextPath}/api/v1</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">java.net.URL</pre></div></td></tr>
+<tr class="a">
+<td>observeweb.model.version</td>
+<td>Version du modèle</td>
+<td>
+<div>
+<pre style="monospaced">Pas de valeur par défaut</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">org.nuiton.version.Version</pre></div></td></tr>
+<tr class="b">
+<td>observeweb.devMode</td>
+<td>Mode développeur</td>
+<td>
+<div>
+<pre style="monospaced">true</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">boolean</pre></div></td></tr>
+<tr class="a">
+<td>observeweb.contextPath</td>
+<td>Contexte applicatif</td>
+<td>
+<div>
+<pre style="monospaced">observe</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">java.lang.String</pre></div></td></tr>
+<tr class="b">
+<td>observeweb.baseDirectory</td>
+<td>Répertoire de l'application</td>
+<td>
+<div>
+<pre style="monospaced">/var/local/observeweb/${observeweb.contextPath}</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">java.io.File</pre></div></td></tr>
+<tr class="a">
+<td>observeweb.temporaryDirectory</td>
+<td>Chemin vers le répertoire temporaire</td>
+<td>
+<div>
+<pre style="monospaced">${observeweb.baseDirectory}/temp</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">java.io.File</pre></div></td></tr>
+<tr class="b">
+<td>observeweb.log4jConfigurationFile</td>
+<td>Chemin vers le fichier de configuration des logs</td>
+<td>
+<div>
+<pre style="monospaced">${observeweb.baseDirectory}/observeweb-log4j.conf</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">java.io.File</pre></div></td></tr>
+<tr class="a">
+<td>observeweb.databasesConfigurationFile</td>
+<td>Chemin vers le fichier de configuration des bases</td>
+<td>
+<div>
+<pre style="monospaced">${observeweb.baseDirectory}/databases.yml</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">java.io.File</pre></div></td></tr>
+<tr class="b">
+<td>observeweb.usersConfigurationFile</td>
+<td>Chemin vers le fichier de configuration des utilisateurs</td>
+<td>
+<div>
+<pre style="monospaced">${observeweb.baseDirectory}/users.yml</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">java.io.File</pre></div></td></tr>
+<tr class="a">
+<td>observeweb.sessionExpirationDelay</td>
+<td>Temps maximum d'une session (en minutes)</td>
+<td>
+<div>
+<pre style="monospaced">60</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">int</pre></div></td></tr>
+<tr class="b">
+<td>observeweb.sessionMaximumSize</td>
+<td>Taille maximum de session</td>
+<td>
+<div>
+<pre style="monospaced">10000</pre></div></td>
+<td>Oui</td>
+<td>Non</td>
+<td>
+<div>
+<pre style="monospaced">int</pre></div></td></tr>
+<tr class="a">
+<td>observeweb.httpTimeout</td>
+<td>Temps maximum de tentative de connection http (en millisecondes)</td>
+<td>
+<div>
+<pre style="monospaced">30000</pre></div></td>
+<td>Oui</td>
+<td>Oui</td>
+<td>
+<div>
+<pre style="monospaced">int</pre></div></td></tr></table></div>
+<div class="section">
+<h4><a name="Actions_de_la_configuration"></a><a name="detail_actions_ServerConfig">Actions de la configuration</a></h4><br />
+<p><b>Aucune action définie pour cette configuration</b></p></div></div></div>
</div>
</div>
</div>
=====================================
dependency-convergence.html
=====================================
--- a/dependency-convergence.html
+++ b/dependency-convergence.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Reactor Dependency Convergence</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Reactor Dependency Convergence</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
@@ -116,13 +116,13 @@
<td>2</td></tr>
<tr class="b">
<th>Nombre d'artefacts SNAPSHOT (NOS) :</th>
-<td>0</td></tr>
+<td>2</td></tr>
<tr class="a">
<th>Convergence (NOD/NOA) :</th>
<td><img alt="[Error]" src="images/icon_error_sml.gif" /> <b>98 %</b></td></tr>
<tr class="b">
<th>Prêt pour la release (100% de convergence et aucun SNAPSHOT) :</th>
-<td><img alt="[Error]" src="images/icon_error_sml.gif" /> <b>Erreur</b><br />Vous n'avez pas la convergence à 100%.</td></tr></table></div>
+<td><img alt="[Error]" src="images/icon_error_sml.gif" /> <b>Erreur</b><br />Vous n'avez pas la convergence à 100%.<br />Vous avez des dépendances de type SNAPSHOT.</td></tr></table></div>
<div class="section">
<h3><a name="Dpendances_utilises_dans_les_sous-projets"></a>Dépendances utilisées dans les sous-projets</h3>
<div class="section">
@@ -158,7 +158,31 @@
<td width="25%">3.3.1</td>
<td>
<ol style="list-style-type: decimal">
-<li>fr.ird.observe:server:war:7.0-RC-6-SNAPSHOT<br />\- org.debux.webmotion:webmotion:jar:2.5.3:compile<br />   \- org.parboiled:parboiled-java:jar:1.0.2:compile<br />      +- asm:asm-util:jar:3.3.1:compile<br />      |  \- (asm:asm-tree:jar:3.3.1:compile - omitted for conflict with 3.3)<br />      +- asm:asm-tree:jar:3.3.1:compile<br />      \- asm:asm-analysis:jar:3.3.1:compile<br />         \- (asm:asm-tree:jar:3.3.1:compile - omitted for duplicate)<br /></li><br /></ol></td></tr></table></td></tr></table></div></div>
+<li>fr.ird.observe:server:war:7.0-RC-6-SNAPSHOT<br />\- org.debux.webmotion:webmotion:jar:2.5.3:compile<br />   \- org.parboiled:parboiled-java:jar:1.0.2:compile<br />      +- asm:asm-util:jar:3.3.1:compile<br />      |  \- (asm:asm-tree:jar:3.3.1:compile - omitted for conflict with 3.3)<br />      +- asm:asm-tree:jar:3.3.1:compile<br />      \- asm:asm-analysis:jar:3.3.1:compile<br />         \- (asm:asm-tree:jar:3.3.1:compile - omitted for duplicate)<br /></li><br /></ol></td></tr></table></td></tr></table></div>
+<div class="section">
+<h4><a name="io.ultreia.java4all.i18n:i18n-api"></a>io.ultreia.java4all.i18n:i18n-api</h4>
+<table border="0" class="table table-striped">
+<tr class="a">
+<td><img alt="[Error]" src="images/icon_error_sml.gif" /></td>
+<td>
+<table border="0" class="table table-striped">
+<tr class="b">
+<td width="25%">4.0-alpha-4-SNAPSHOT</td>
+<td>
+<ol style="list-style-type: decimal">
+<li>fr.ird.observe:common:jar:7.0-RC-6-SNAPSHOT<br />\- io.ultreia.java4all.i18n:i18n-api:jar:4.0-alpha-4-SNAPSHOT:provided<br /></li><br /></ol></td></tr></table></td></tr></table></div>
+<div class="section">
+<h4><a name="io.ultreia.java4all.i18n:i18n-editor"></a>io.ultreia.java4all.i18n:i18n-editor</h4>
+<table border="0" class="table table-striped">
+<tr class="a">
+<td><img alt="[Error]" src="images/icon_error_sml.gif" /></td>
+<td>
+<table border="0" class="table table-striped">
+<tr class="b">
+<td width="25%">4.0-alpha-4-SNAPSHOT</td>
+<td>
+<ol style="list-style-type: decimal">
+<li>fr.ird.observe:client:jar:7.0-RC-6-SNAPSHOT<br />\- io.ultreia.java4all.i18n:i18n-editor:jar:4.0-alpha-4-SNAPSHOT:compile<br /></li><br /></ol></td></tr></table></td></tr></table></div></div>
</div>
</div>
</div>
=====================================
dependency-info.html
=====================================
--- a/dependency-info.html
+++ b/dependency-info.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Informations de dépendance</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Informations de dépendance</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
dependency-management.html
=====================================
--- a/dependency-management.html
+++ b/dependency-management.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Gestion des dépendances du project</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Gestion des dépendances du project</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
@@ -202,19 +202,19 @@
<tr class="b">
<td>io.ultreia.java4all.http</td>
<td><a class="externalLink" href="https://ultreiaio.gitlab.io/http/http-api">http-api</a></td>
-<td>1.0.2</td>
+<td>1.0.3</td>
<td>jar</td>
<td><a class="externalLink" href="http://www.gnu.org/licenses/lgpl-3.0.txt">Lesser General Public License (LGPL) v 3.0</a></td></tr>
<tr class="a">
<td>io.ultreia.java4all.i18n</td>
<td><a class="externalLink" href="http://i18n.nuiton.org/i18n-api">i18n-api</a></td>
-<td>4.0-alpha-3</td>
+<td>4.0-alpha-4-SNAPSHOT</td>
<td>jar</td>
<td><a class="externalLink" href="http://www.gnu.org/licenses/lgpl-3.0.txt">Lesser General Public License (LGPL) v 3.0</a></td></tr>
<tr class="b">
<td>io.ultreia.java4all.i18n</td>
<td><a class="externalLink" href="http://i18n.nuiton.org/i18n-editor">i18n-editor</a></td>
-<td>4.0-alpha-3</td>
+<td>4.0-alpha-4-SNAPSHOT</td>
<td>jar</td>
<td><a class="externalLink" href="http://www.gnu.org/licenses/lgpl-3.0.txt">Lesser General Public License (LGPL) v 3.0</a></td></tr>
<tr class="a">
=====================================
dependency-updates-report.html
=====================================
--- a/dependency-updates-report.html
+++ b/dependency-updates-report.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Dependency Updates Report</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Dependency Updates Report</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
@@ -97,11 +97,11 @@
<tr class="a">
<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td># of dependencies using the latest version available</td>
-<td>67</td></tr>
+<td>66</td></tr>
<tr class="b">
<td><img src="images/icon_warning_sml.gif" alt="" /></td>
<td># of dependencies where the next version available is smaller than an incremental version update</td>
-<td>2</td></tr>
+<td>3</td></tr>
<tr class="a">
<td><img src="images/icon_warning_sml.gif" alt="" /></td>
<td># of dependencies where the next version available is an incremental version update</td>
@@ -199,7 +199,7 @@
<td>jar</td>
<td></td>
<td><b>0.22.20</b></td>
-<td></td>
+<td><b>0.24.0</b></td>
<td></td></tr>
<tr class="a">
<td><img src="images/icon_warning_sml.gif" alt="" /></td>
@@ -211,7 +211,7 @@
<td>jar</td>
<td></td>
<td><b>0.22.20</b></td>
-<td></td>
+<td><b>0.24.0</b></td>
<td></td></tr>
<tr class="b">
<td><img src="images/icon_success_sml.gif" alt="" /></td>
@@ -325,7 +325,7 @@
<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>io.ultreia.java4all.http</td>
<td>http-api</td>
-<td>1.0.2</td>
+<td>1.0.3</td>
<td></td>
<td></td>
<td>jar</td>
@@ -337,7 +337,7 @@
<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>io.ultreia.java4all.i18n</td>
<td>i18n-api</td>
-<td>4.0-alpha-3</td>
+<td>4.0-alpha-4-SNAPSHOT</td>
<td>compile</td>
<td></td>
<td>jar</td>
@@ -349,7 +349,7 @@
<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>io.ultreia.java4all.i18n</td>
<td>i18n-editor</td>
-<td>4.0-alpha-3</td>
+<td>4.0-alpha-4-SNAPSHOT</td>
<td>compile</td>
<td></td>
<td>jar</td>
@@ -538,14 +538,14 @@
<td></td>
<td></td></tr>
<tr class="a">
-<td><img src="images/icon_success_sml.gif" alt="" /></td>
+<td><img src="images/icon_warning_sml.gif" alt="" /></td>
<td>javax.servlet</td>
<td>javax.servlet-api</td>
<td>4.0.0-b07</td>
<td>provided</td>
<td></td>
<td>jar</td>
-<td></td>
+<td><b>4.0.0</b></td>
<td></td>
<td></td>
<td></td></tr>
@@ -1235,7 +1235,7 @@
<td>jar</td></tr>
<tr class="b">
<th width="80%">Newer versions</th>
-<td><b>0.22.20</b> <i>Next Incremental</i><br />0.22.22<br /><b>0.22.24</b> <i>Latest Incremental</i></td></tr></table></div>
+<td><b>0.22.20</b> <i>Next Incremental</i><br />0.22.22<br /><b>0.22.24</b> <i>Latest Incremental</i><br /><b>0.24.0</b> <i>Next Minor</i><br />0.26.0<br />0.26.2<br /><b>0.26.4</b> <i>Latest Minor</i></td></tr></table></div>
<div class="section">
<h3><a name="com.vladsch.flexmark:flexmark-util"></a>com.vladsch.flexmark:flexmark-util</h3>
<table border="0" class="table table-striped">
@@ -1262,7 +1262,7 @@
<td>jar</td></tr>
<tr class="b">
<th width="80%">Newer versions</th>
-<td><b>0.22.20</b> <i>Next Incremental</i><br />0.22.22<br /><b>0.22.24</b> <i>Latest Incremental</i></td></tr></table></div>
+<td><b>0.22.20</b> <i>Next Incremental</i><br />0.22.22<br /><b>0.22.24</b> <i>Latest Incremental</i><br /><b>0.24.0</b> <i>Next Minor</i><br />0.26.0<br />0.26.2<br /><b>0.26.4</b> <i>Latest Minor</i></td></tr></table></div>
<div class="section">
<h3><a name="com.zaxxer:HikariCP"></a>com.zaxxer:HikariCP</h3>
<table border="0" class="table table-striped">
@@ -1496,7 +1496,7 @@
<td>http-api</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>1.0.2</td></tr>
+<td>1.0.3</td></tr>
<tr class="a">
<th width="80%">Scope</th>
<td></td></tr>
@@ -1520,7 +1520,7 @@
<td>i18n-api</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>4.0-alpha-3</td></tr>
+<td>4.0-alpha-4-SNAPSHOT</td></tr>
<tr class="a">
<th width="80%">Scope</th>
<td>compile</td></tr>
@@ -1544,7 +1544,7 @@
<td>i18n-editor</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>4.0-alpha-3</td></tr>
+<td>4.0-alpha-4-SNAPSHOT</td></tr>
<tr class="a">
<th width="80%">Scope</th>
<td>compile</td></tr>
@@ -1919,7 +1919,7 @@
<table border="0" class="table table-striped">
<tr class="a">
<th width="80%">Status</th>
-<td><img src="images/icon_success_sml.gif" alt="" /> No newer versions available.</td></tr>
+<td><img src="images/icon_warning_sml.gif" alt="" /> There is at least one newer version available.</td></tr>
<tr class="b">
<th width="80%">Group Id</th>
<td>javax.servlet</td></tr>
@@ -1937,7 +1937,10 @@
<td></td></tr>
<tr class="a">
<th width="80%">Type</th>
-<td>jar</td></tr></table></div>
+<td>jar</td></tr>
+<tr class="b">
+<th width="80%">Newer versions</th>
+<td><b>4.0.0</b> <i>Next Version</i></td></tr></table></div>
<div class="section">
<h3><a name="junit:junit"></a>junit:junit</h3>
<table border="0" class="table table-striped">
=====================================
dev-activity.html
=====================================
--- a/dev-activity.html
+++ b/dev-activity.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Developer Activity Report</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Developer Activity Report</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
@@ -93,8 +93,8 @@
<div class="section">
<h2><a name="Developer_Activity_Report"></a>Developer Activity Report</h2>
<div class="section">
-<h3><a name="Changes_between_2017-07-07_and_2017-08-07"></a>Changes between 2017-07-07 and 2017-08-07</h3>
-<p>Total commits: 149<br />Total number of files changed: 5242</p>
+<h3><a name="Changes_between_2017-07-19_and_2017-08-19"></a>Changes between 2017-07-19 and 2017-08-19</h3>
+<p>Total commits: 155<br />Total number of files changed: 5589</p>
<table border="0" class="table table-striped">
<tr class="a">
<th>Developer</th>
@@ -106,12 +106,8 @@
<td>26</td></tr>
<tr class="a">
<td>Tony CHEMIT <dev(a)tchemit.fr></td>
-<td>118</td>
-<td>5221</td></tr>
-<tr class="b">
-<td>Tony Chemit <dev(a)tchemit.fr></td>
-<td>9</td>
-<td>113</td></tr></table></div></div>
+<td>133</td>
+<td>5589</td></tr></table></div></div>
</div>
</div>
</div>
=====================================
file-activity.html
=====================================
The diff for this file was not included because it is too large.
=====================================
index.html
=====================================
--- a/index.html
+++ b/index.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – ObServe</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">ObServe</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
install-serverPG.html
=====================================
--- a/install-serverPG.html
+++ b/install-serverPG.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Installation du serveur Obstuna</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Installation du serveur Obstuna</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
install.html
=====================================
--- a/install.html
+++ b/install.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Installation dObServe</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Installation dObServe</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
integration.html
=====================================
--- a/integration.html
+++ b/integration.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Intégration continue</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Intégration continue</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
issue-tracking.html
=====================================
--- a/issue-tracking.html
+++ b/issue-tracking.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Contrôle des livraisons</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Contrôle des livraisons</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
@@ -97,7 +97,7 @@
<div class="section">
<h2><a name="Contrle_des_livraisons"></a>Contrôle des livraisons</h2><a name="Contrle_des_livraisons"></a>
<p>Des issues (bogues, dispositifs, demandes de changement) peuvent être créées et consultées en utilisant ce lien.</p>
-<div class="source"><pre class="prettyprint linenums"><a class="externalLink" href="https://gitlab.com/ultreia.io/ird-observe">https://gitlab.com/ultreia.io/ird-observe</a></pre></div></div>
+<div class="source"><pre class="prettyprint linenums"><a class="externalLink" href="https://gitlab.com/ultreiaio/ird-observe">https://gitlab.com/ultreiaio/ird-observe</a></pre></div></div>
</div>
</div>
</div>
=====================================
license.html
=====================================
--- a/license.html
+++ b/license.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Licence du projet</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Licence du projet</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
plugin-management.html
=====================================
--- a/plugin-management.html
+++ b/plugin-management.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Gestion des plugins du projet</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Gestion des plugins du projet</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
@@ -113,11 +113,11 @@
<tr class="a">
<td>io.ultreia.java4all.http</td>
<td><a class="externalLink" href="https://ultreiaio.gitlab.io/http/http-maven-plugin">http-maven-plugin</a></td>
-<td>1.0.2</td></tr>
+<td>1.0.3</td></tr>
<tr class="b">
<td>io.ultreia.java4all.i18n</td>
<td><a class="externalLink" href="http://i18n.nuiton.org/i18n-maven-plugin">i18n-maven-plugin</a></td>
-<td>4.0-alpha-3</td></tr>
+<td>4.0-alpha-4-SNAPSHOT</td></tr>
<tr class="a">
<td>io.ultreia.java4all.jaxx</td>
<td><a class="externalLink" href="https://nuiton.gitlab.io/jaxx/jaxx-maven-plugin">jaxx-maven-plugin</a></td>
@@ -125,7 +125,7 @@
<tr class="b">
<td>io.ultreia.maven</td>
<td><a class="externalLink" href="https://ultreiaio.gitlab.io/gitlab-maven-plugin">gitlab-maven-plugin</a></td>
-<td>1.0.9</td></tr>
+<td>1.0.10</td></tr>
<tr class="a">
<td>net.sf</td>
<td><a class="externalLink" href="http://stat-scm.sourceforge.net">stat-scm</a></td>
=====================================
plugin-updates-report.html
=====================================
--- a/plugin-updates-report.html
+++ b/plugin-updates-report.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Plugin Updates Report</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Plugin Updates Report</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
@@ -97,7 +97,7 @@
<tr class="a">
<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td># of plugins using the latest version available</td>
-<td>54</td></tr>
+<td>59</td></tr>
<tr class="b">
<td><img src="images/icon_warning_sml.gif" alt="" /></td>
<td># of plugins where the next version available is smaller than an incremental version update</td>
@@ -105,15 +105,15 @@
<tr class="a">
<td><img src="images/icon_warning_sml.gif" alt="" /></td>
<td># of plugins where the next version available is an incremental version update</td>
-<td>3</td></tr>
+<td>0</td></tr>
<tr class="b">
<td><img src="images/icon_warning_sml.gif" alt="" /></td>
<td># of plugins where the next version available is a minor version update</td>
-<td>1</td></tr>
+<td>0</td></tr>
<tr class="a">
<td><img src="images/icon_warning_sml.gif" alt="" /></td>
<td># of plugins where the next version available is a major version update</td>
-<td>1</td></tr>
+<td>0</td></tr>
<tr class="b">
<td><img src="images/icon_warning_sml.gif" alt="" /></td>
<td># of plugins where a dependencies section containes a dependency with an updated version</td>
@@ -132,12 +132,12 @@
<th>Next Major</th>
<th>Dependency status</th></tr>
<tr class="b">
-<td><img src="images/icon_warning_sml.gif" alt="" /></td>
+<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>com.akathist.maven.plugins.launch4j</td>
<td>launch4j-maven-plugin</td>
-<td>1.7.18</td>
+<td><b>1.7.18</b></td>
+<td></td>
<td></td>
-<td><b>1.7.19</b></td>
<td></td>
<td></td>
<td><img src="images/icon_success_sml.gif" alt="" /></td></tr>
@@ -165,7 +165,7 @@
<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>io.ultreia.java4all.http</td>
<td>http-maven-plugin</td>
-<td><b>1.0.2</b></td>
+<td><b>1.0.3</b></td>
<td></td>
<td></td>
<td></td>
@@ -175,7 +175,7 @@
<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>io.ultreia.java4all.i18n</td>
<td>i18n-maven-plugin</td>
-<td><b>4.0-alpha-3</b></td>
+<td><b>4.0-alpha-4-SNAPSHOT</b></td>
<td></td>
<td></td>
<td></td>
@@ -195,7 +195,7 @@
<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>io.ultreia.maven</td>
<td>gitlab-maven-plugin</td>
-<td><b>1.0.9</b></td>
+<td><b>1.0.10</b></td>
<td></td>
<td></td>
<td></td>
@@ -242,12 +242,12 @@
<td></td>
<td><img src="images/icon_success_sml.gif" alt="" /></td></tr>
<tr class="a">
-<td><img src="images/icon_warning_sml.gif" alt="" /></td>
+<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>org.apache.maven.plugins</td>
<td>maven-compiler-plugin</td>
-<td>3.6.1</td>
+<td><b>3.6.1</b></td>
+<td></td>
<td></td>
-<td><b>3.6.2</b></td>
<td></td>
<td></td>
<td><img src="images/icon_success_sml.gif" alt="" /></td></tr>
@@ -292,14 +292,14 @@
<td></td>
<td><img src="images/icon_success_sml.gif" alt="" /></td></tr>
<tr class="b">
-<td><img src="images/icon_warning_sml.gif" alt="" /></td>
+<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>org.apache.maven.plugins</td>
<td>maven-enforcer-plugin</td>
-<td>1.4.1</td>
+<td><b>1.4.1</b></td>
+<td></td>
<td></td>
<td></td>
<td></td>
-<td><b>3.0.0-M1</b></td>
<td><img src="images/icon_success_sml.gif" alt="" /></td></tr>
<tr class="a">
<td><img src="images/icon_success_sml.gif" alt="" /></td>
@@ -322,12 +322,12 @@
<td></td>
<td><img src="images/icon_success_sml.gif" alt="" /></td></tr>
<tr class="a">
-<td><img src="images/icon_warning_sml.gif" alt="" /></td>
+<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>org.apache.maven.plugins</td>
<td>maven-invoker-plugin</td>
-<td>3.0.0</td>
+<td><b>3.0.0</b></td>
+<td></td>
<td></td>
-<td><b>3.0.1</b></td>
<td></td>
<td></td>
<td><img src="images/icon_success_sml.gif" alt="" /></td></tr>
@@ -352,13 +352,13 @@
<td></td>
<td><img src="images/icon_success_sml.gif" alt="" /></td></tr>
<tr class="b">
-<td><img src="images/icon_warning_sml.gif" alt="" /></td>
+<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>org.apache.maven.plugins</td>
<td>maven-javadoc-plugin</td>
-<td>2.10.4</td>
+<td><b>2.10.4</b></td>
+<td></td>
<td></td>
<td></td>
-<td><b>3.0.0-M1</b></td>
<td></td>
<td><img src="images/icon_success_sml.gif" alt="" /></td></tr>
<tr class="a">
@@ -762,7 +762,7 @@
<table border="0" class="table table-striped">
<tr class="b">
<th width="80%">Status</th>
-<td><img src="images/icon_warning_sml.gif" alt="" /> There is at least one newer incremental version available. Incremental updates are typically passive.</td></tr>
+<td><img src="images/icon_success_sml.gif" alt="" /> No newer versions available.</td></tr>
<tr class="a">
<th width="80%">Group Id</th>
<td>com.akathist.maven.plugins.launch4j</td></tr>
@@ -771,10 +771,7 @@
<td>launch4j-maven-plugin</td></tr>
<tr class="a">
<th width="80%">Current Version</th>
-<td>1.7.18</td></tr>
-<tr class="b">
-<th width="80%">Newer versions</th>
-<td><b>1.7.19</b> <i>Next Incremental</i></td></tr></table></div>
+<td>1.7.18</td></tr></table></div>
<div class="section">
<h3><a name="Plugin_external.atlassian.jgitflow:jgitflow-maven-plugin"></a>Plugin external.atlassian.jgitflow:jgitflow-maven-plugin</h3>
<table border="0" class="table table-striped">
@@ -834,7 +831,7 @@
<td>http-maven-plugin</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>1.0.2</td></tr></table></div>
+<td>1.0.3</td></tr></table></div>
<div class="section">
<h3><a name="Plugin_io.ultreia.java4all.i18n:i18n-maven-plugin"></a>Plugin io.ultreia.java4all.i18n:i18n-maven-plugin</h3>
<table border="0" class="table table-striped">
@@ -849,7 +846,7 @@
<td>i18n-maven-plugin</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>4.0-alpha-3</td></tr></table></div>
+<td>4.0-alpha-4-SNAPSHOT</td></tr></table></div>
<div class="section">
<h3><a name="Plugin_io.ultreia.java4all.jaxx:jaxx-maven-plugin"></a>Plugin io.ultreia.java4all.jaxx:jaxx-maven-plugin</h3>
<table border="0" class="table table-striped">
@@ -879,7 +876,7 @@
<td>gitlab-maven-plugin</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>1.0.9</td></tr></table></div>
+<td>1.0.10</td></tr></table></div>
<div class="section">
<h3><a name="Plugin_net.sf:stat-scm"></a>Plugin net.sf:stat-scm</h3>
<table border="0" class="table table-striped">
@@ -945,7 +942,7 @@
<table border="0" class="table table-striped">
<tr class="a">
<th width="80%">Status</th>
-<td><img src="images/icon_warning_sml.gif" alt="" /> There is at least one newer incremental version available. Incremental updates are typically passive.</td></tr>
+<td><img src="images/icon_success_sml.gif" alt="" /> No newer versions available.</td></tr>
<tr class="b">
<th width="80%">Group Id</th>
<td>org.apache.maven.plugins</td></tr>
@@ -954,10 +951,7 @@
<td>maven-compiler-plugin</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>3.6.1</td></tr>
-<tr class="a">
-<th width="80%">Newer versions</th>
-<td><b>3.6.2</b> <i>Next Incremental</i></td></tr></table></div>
+<td>3.6.1</td></tr></table></div>
<div class="section">
<h3><a name="Plugin_org.apache.maven.plugins:maven-dependency-plugin"></a>Plugin org.apache.maven.plugins:maven-dependency-plugin</h3>
<table border="0" class="table table-striped">
@@ -1023,7 +1017,7 @@
<table border="0" class="table table-striped">
<tr class="a">
<th width="80%">Status</th>
-<td><img src="images/icon_warning_sml.gif" alt="" /> There is at least one newer major version available. Major updates are rarely passive.</td></tr>
+<td><img src="images/icon_success_sml.gif" alt="" /> No newer versions available.</td></tr>
<tr class="b">
<th width="80%">Group Id</th>
<td>org.apache.maven.plugins</td></tr>
@@ -1032,10 +1026,7 @@
<td>maven-enforcer-plugin</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>1.4.1</td></tr>
-<tr class="a">
-<th width="80%">Newer versions</th>
-<td><b>3.0.0-M1</b> <i>Next Major</i></td></tr></table></div>
+<td>1.4.1</td></tr></table></div>
<div class="section">
<h3><a name="Plugin_org.apache.maven.plugins:maven-gpg-plugin"></a>Plugin org.apache.maven.plugins:maven-gpg-plugin</h3>
<table border="0" class="table table-striped">
@@ -1071,7 +1062,7 @@
<table border="0" class="table table-striped">
<tr class="a">
<th width="80%">Status</th>
-<td><img src="images/icon_warning_sml.gif" alt="" /> There is at least one newer incremental version available. Incremental updates are typically passive.</td></tr>
+<td><img src="images/icon_success_sml.gif" alt="" /> No newer versions available.</td></tr>
<tr class="b">
<th width="80%">Group Id</th>
<td>org.apache.maven.plugins</td></tr>
@@ -1080,10 +1071,7 @@
<td>maven-invoker-plugin</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>3.0.0</td></tr>
-<tr class="a">
-<th width="80%">Newer versions</th>
-<td><b>3.0.1</b> <i>Next Incremental</i></td></tr></table></div>
+<td>3.0.0</td></tr></table></div>
<div class="section">
<h3><a name="Plugin_org.apache.maven.plugins:maven-jar-plugin"></a>Plugin org.apache.maven.plugins:maven-jar-plugin</h3>
<table border="0" class="table table-striped">
@@ -1119,7 +1107,7 @@
<table border="0" class="table table-striped">
<tr class="a">
<th width="80%">Status</th>
-<td><img src="images/icon_warning_sml.gif" alt="" /> There is at least one newer minor version available. Minor updates are sometimes passive.</td></tr>
+<td><img src="images/icon_success_sml.gif" alt="" /> No newer versions available.</td></tr>
<tr class="b">
<th width="80%">Group Id</th>
<td>org.apache.maven.plugins</td></tr>
@@ -1128,10 +1116,7 @@
<td>maven-javadoc-plugin</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>2.10.4</td></tr>
-<tr class="a">
-<th width="80%">Newer versions</th>
-<td><b>3.0.0-M1</b> <i>Next Minor</i></td></tr></table></div>
+<td>2.10.4</td></tr></table></div>
<div class="section">
<h3><a name="Plugin_org.apache.maven.plugins:maven-plugin-plugin"></a>Plugin org.apache.maven.plugins:maven-plugin-plugin</h3>
<table border="0" class="table table-striped">
=====================================
plugins.html
=====================================
--- a/plugins.html
+++ b/plugins.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Project Plugins</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Project Plugins</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
@@ -105,7 +105,7 @@
<tr class="a">
<td>io.ultreia.maven</td>
<td><a class="externalLink" href="https://ultreiaio.gitlab.io/gitlab-maven-plugin">gitlab-maven-plugin</a></td>
-<td>1.0.9</td></tr>
+<td>1.0.10</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="http://maven.apache.org/plugins/maven-antrun-plugin/">maven-antrun-plugin</a></td>
=====================================
project-info.html
=====================================
--- a/project-info.html
+++ b/project-info.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Information générale du projet</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Information générale du projet</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
project-reports.html
=====================================
--- a/project-reports.html
+++ b/project-reports.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Rapports générés par Maven</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Rapports générés par Maven</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
project-summary.html
=====================================
--- a/project-summary.html
+++ b/project-summary.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Résumé du projet</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Résumé du projet</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
property-updates-report.html
=====================================
--- a/property-updates-report.html
+++ b/property-updates-report.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Property Updates Report</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Property Updates Report</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
@@ -208,7 +208,7 @@
<tr class="a">
<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>${httpVersion}</td>
-<td>1.0.2</td>
+<td>1.0.3</td>
<td></td>
<td></td>
<td></td>
@@ -280,7 +280,7 @@
<tr class="b">
<td><img src="images/icon_success_sml.gif" alt="" /></td>
<td>${nuitonI18nVersion}</td>
-<td>4.0-alpha-3</td>
+<td>4.0-alpha-4-SNAPSHOT</td>
<td></td>
<td></td>
<td></td>
@@ -299,7 +299,7 @@
<td>0.22.18</td>
<td></td>
<td><b>0.22.20</b></td>
-<td></td>
+<td><b>0.24.0</b></td>
<td></td></tr>
<tr class="a">
<th>Status</th>
@@ -359,7 +359,7 @@
<td>0.22.18</td></tr>
<tr class="a">
<th width="80%">Newer versions</th>
-<td><b>0.22.20</b> <i>Next Incremental</i><br />0.22.22<br /><b>0.22.24</b> <i>Latest Incremental</i></td></tr>
+<td><b>0.22.20</b> <i>Next Incremental</i><br />0.22.22<br /><b>0.22.24</b> <i>Latest Incremental</i><br /><b>0.24.0</b> <i>Next Minor</i><br />0.26.0<br />0.26.2<br /><b>0.26.4</b> <i>Latest Minor</i></td></tr>
<tr class="b">
<th width="80%">Allowed version range</th>
<td>[,)</td></tr>
@@ -485,7 +485,7 @@
<td>io.ultreia.java4all.http:http-api<br />io.ultreia.java4all.http:http-maven-plugin</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>1.0.2</td></tr>
+<td>1.0.3</td></tr>
<tr class="a">
<th width="80%">Allowed version range</th>
<td>[,)</td></tr>
@@ -635,7 +635,7 @@
<td>io.ultreia.java4all.i18n:i18n-api<br />io.ultreia.java4all.i18n:i18n-editor<br />io.ultreia.java4all.i18n:i18n-maven-plugin</td></tr>
<tr class="b">
<th width="80%">Current Version</th>
-<td>4.0-alpha-3</td></tr>
+<td>4.0-alpha-4-SNAPSHOT</td></tr>
<tr class="a">
<th width="80%">Allowed version range</th>
<td>[,)</td></tr>
=====================================
sitemap.html
=====================================
--- a/sitemap.html
+++ b/sitemap.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Sitemap</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Sitemap</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
source-repository.html
=====================================
--- a/source-repository.html
+++ b/source-repository.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Dépôt de sources</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Dépôt de sources</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
team-list.html
=====================================
--- a/team-list.html
+++ b/team-list.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Liste des membres</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Liste des membres</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
=====================================
third-party-report.html
=====================================
--- a/third-party-report.html
+++ b/third-party-report.html
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-06
+ | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-08-18
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20170806" />
+ <meta name="Date-Revision-yyyymmdd" content="20170818" />
<meta http-equiv="Content-Language" content="fr" />
<title>ObServe :: Pom – Tierces parties</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
@@ -27,7 +27,7 @@
<ul class="breadcrumb">
<li class=""><a href="https://ultreiaio.gitlab.io/ird-observe/index.html" class="externalLink" title="ObServe :: Pom">ObServe :: Pom</a><span class="divider">»</span></li>
<li class="active ">Tierces parties</li>
- <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-06</li>
+ <li id="publishDate" class="pull-right"><span class="divider">|</span> Dernière publication: 2017-08-18</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 7.0-RC-6-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ultreia.io" class="externalLink" title="Ultreia.io">Ultreia.io</a></li>
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/72b8cf2931f9aaf6089de8b58a7…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/72b8cf2931f9aaf6089de8b58a7…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] Pouvoir ajouter une connexion directe ou serveur depuis l'écran de gestion des…
by Tony CHEMIT 17 Aug '17
by Tony CHEMIT 17 Aug '17
17 Aug '17
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
08505b7c by Tony CHEMIT at 2017-08-17T16:17:45+02:00
Pouvoir ajouter une connexion directe ou serveur depuis l'écran de gestion des connexions (See #842)
- - - - -
26 changed files:
- client/src/main/java/fr/ird/observe/client/ui/actions/UIActionSupport.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/global/DeleteDataGlobalUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/global/NewNextDataGlobalUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/global/ResetDataGlobalUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/global/SaveDataGlobalUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/storage/SaveCurrentRemoteConfigurationUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/storage/SaveCurrentServerConfigurationUIAction.java
- + client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/CreatePresetUIAction.java
- + client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/DeleteRemoteUIAction.java
- + client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/DeleteServerUIAction.java
- + client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/PresetsUIActionSupport.java
- + client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/QuitPresetsUIAction.java
- + client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/ResetRemoteUIAction.java
- + client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/ResetServerUIAction.java
- + client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/SaveRemoteUIAction.java
- + client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/SaveServerUIAction.java
- + client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/TestRemoteUIAction.java
- + client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/TestServerUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIModel.java
- client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIModel.java
- client/src/main/resources/i18n/client_en_GB.properties
- client/src/main/resources/i18n/client_es_ES.properties
- client/src/main/resources/i18n/client_fr_FR.properties
Changes:
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/UIActionSupport.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/actions/UIActionSupport.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/UIActionSupport.java
@@ -53,7 +53,7 @@ public abstract class UIActionSupport extends AbstractAction {
private static final long serialVersionUID = 1L;
public static final String EDITOR = "editor";
- protected static final String CLIENT_PROPERTY_UI = "ui";
+ public static final String CLIENT_PROPERTY_UI = "ui";
private final ObserveMainUI mainUI;
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/main/global/DeleteDataGlobalUIAction.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/actions/main/global/DeleteDataGlobalUIAction.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/main/global/DeleteDataGlobalUIAction.java
@@ -24,10 +24,12 @@ package fr.ird.observe.client.ui.actions.main.global;
import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.ObserveUIMode;
import fr.ird.observe.client.ui.actions.UIActionSupport;
import fr.ird.observe.client.ui.content.ContentUI;
import fr.ird.observe.client.ui.content.ref.ContentReferenceUI;
import fr.ird.observe.client.ui.content.table.ContentTableUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
import java.util.Objects;
import javax.swing.JButton;
@@ -47,19 +49,35 @@ public class DeleteDataGlobalUIAction extends GlobalUIActionSupport {
@Override
protected UIActionSupport getDelegateAction(ContentUI<?, ?> contentUI) {
- JButton button;
- if (contentUI instanceof ContentTableUI) {
- ContentTableUI ui = (ContentTableUI) contentUI;
- button = ui.getDeleteEntry();
- } else if (contentUI instanceof ContentReferenceUI) {
- ContentReferenceUI ui = (ContentReferenceUI) contentUI;
- if (ui.getModel().isEditing()) {
- button = ui.getDeleteFromDetail();
- } else {
- button = ui.getDeleteFromList();
+ JButton button = null;
+ if (contentUI == null) {
+
+ if (ObserveUIMode.PRESETS == getMainUI().getModel().getMode()) {
+ RemotePresetsUI presetsUI = (RemotePresetsUI) getMainUI().getDataSourcePresets().getContentContainer();
+ switch (presetsUI.getTabs().getSelectedIndex()) {
+ case 0:
+ button = presetsUI.getDeleteRemoteAction();
+ break;
+ case 1:
+ button = presetsUI.getDeleteServerAction();
+ break;
+
+ }
}
} else {
- button = (JButton) contentUI.getObjectById("delete");
+ if (contentUI instanceof ContentTableUI) {
+ ContentTableUI ui = (ContentTableUI) contentUI;
+ button = ui.getDeleteEntry();
+ } else if (contentUI instanceof ContentReferenceUI) {
+ ContentReferenceUI ui = (ContentReferenceUI) contentUI;
+ if (ui.getModel().isEditing()) {
+ button = ui.getDeleteFromDetail();
+ } else {
+ button = ui.getDeleteFromList();
+ }
+ } else {
+ button = (JButton) contentUI.getObjectById("delete");
+ }
}
Objects.requireNonNull(button);
UIActionSupport action = (UIActionSupport) button.getAction();
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/main/global/NewNextDataGlobalUIAction.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/actions/main/global/NewNextDataGlobalUIAction.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/main/global/NewNextDataGlobalUIAction.java
@@ -24,12 +24,14 @@ package fr.ird.observe.client.ui.actions.main.global;
import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.ObserveUIMode;
import fr.ird.observe.client.ui.actions.UIActionSupport;
import fr.ird.observe.client.ui.content.ContentUI;
import fr.ird.observe.client.ui.content.list.ContentListUI;
import fr.ird.observe.client.ui.content.open.ContentOpenableUI;
import fr.ird.observe.client.ui.content.ref.ContentReferenceUI;
import fr.ird.observe.client.ui.content.table.ContentTableUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
import javax.swing.JButton;
/**
@@ -49,18 +51,27 @@ public class NewNextDataGlobalUIAction extends GlobalUIActionSupport {
@Override
protected UIActionSupport getDelegateAction(ContentUI<?, ?> contentUI) {
JButton button = null;
- if (contentUI instanceof ContentListUI) {
- ContentListUI ui = (ContentListUI) contentUI;
- button = ui.getCreate();
- } else if (contentUI instanceof ContentOpenableUI) {
- ContentOpenableUI ui = (ContentOpenableUI) contentUI;
- button = ui.getCloseAndCreate();
- } else if (contentUI instanceof ContentTableUI) {
- ContentTableUI ui = (ContentTableUI) contentUI;
- button = ui.getNewEntry();
- } else if (contentUI instanceof ContentReferenceUI) {
- ContentReferenceUI ui = (ContentReferenceUI) contentUI;
- button = ui.getCreate();
+ if (contentUI == null) {
+
+ if (ObserveUIMode.PRESETS == getMainUI().getModel().getMode()) {
+ RemotePresetsUI presetsUI = (RemotePresetsUI) getMainUI().getDataSourcePresets().getContentContainer();
+ button = presetsUI.getCreateAction();
+ }
+ } else {
+
+ if (contentUI instanceof ContentListUI) {
+ ContentListUI ui = (ContentListUI) contentUI;
+ button = ui.getCreate();
+ } else if (contentUI instanceof ContentOpenableUI) {
+ ContentOpenableUI ui = (ContentOpenableUI) contentUI;
+ button = ui.getCloseAndCreate();
+ } else if (contentUI instanceof ContentTableUI) {
+ ContentTableUI ui = (ContentTableUI) contentUI;
+ button = ui.getNewEntry();
+ } else if (contentUI instanceof ContentReferenceUI) {
+ ContentReferenceUI ui = (ContentReferenceUI) contentUI;
+ button = ui.getCreate();
+ }
}
return button == null ? null : (UIActionSupport) button.getAction();
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/main/global/ResetDataGlobalUIAction.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/actions/main/global/ResetDataGlobalUIAction.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/main/global/ResetDataGlobalUIAction.java
@@ -24,8 +24,10 @@ package fr.ird.observe.client.ui.actions.main.global;
import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.ObserveUIMode;
import fr.ird.observe.client.ui.actions.UIActionSupport;
import fr.ird.observe.client.ui.content.ContentUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
import javax.swing.JButton;
/**
@@ -45,7 +47,24 @@ public class ResetDataGlobalUIAction extends GlobalUIActionSupport {
@Override
protected UIActionSupport getDelegateAction(ContentUI<?, ?> contentUI) {
UIActionSupport action = null;
- JButton button = (JButton) contentUI.getObjectById("reset");
+ JButton button = null;
+ if (contentUI == null) {
+
+ if (ObserveUIMode.PRESETS == getMainUI().getModel().getMode()) {
+ RemotePresetsUI presetsUI = (RemotePresetsUI) getMainUI().getDataSourcePresets().getContentContainer();
+ switch (presetsUI.getTabs().getSelectedIndex()) {
+ case 0:
+ button = presetsUI.getResetRemoteAction();
+ break;
+ case 1:
+ button = presetsUI.getResetServerAction();
+ break;
+
+ }
+ }
+ } else {
+ button = (JButton) contentUI.getObjectById("reset");
+ }
if (button != null) {
action = (UIActionSupport) button.getAction();
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/main/global/SaveDataGlobalUIAction.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/actions/main/global/SaveDataGlobalUIAction.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/main/global/SaveDataGlobalUIAction.java
@@ -24,8 +24,10 @@ package fr.ird.observe.client.ui.actions.main.global;
import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.ObserveUIMode;
import fr.ird.observe.client.ui.actions.UIActionSupport;
import fr.ird.observe.client.ui.content.ContentUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
import javax.swing.JButton;
/**
@@ -45,7 +47,25 @@ public class SaveDataGlobalUIAction extends GlobalUIActionSupport {
@Override
protected UIActionSupport getDelegateAction(ContentUI<?, ?> contentUI) {
UIActionSupport action = null;
- JButton button = (JButton) contentUI.getObjectById("save");
+
+ JButton button = null;
+ if (contentUI == null) {
+
+ if (ObserveUIMode.PRESETS == getMainUI().getModel().getMode()) {
+ RemotePresetsUI presetsUI = (RemotePresetsUI) getMainUI().getDataSourcePresets().getContentContainer();
+ switch (presetsUI.getTabs().getSelectedIndex()) {
+ case 0:
+ button = presetsUI.getSaveRemoteAction();
+ break;
+ case 1:
+ button = presetsUI.getSaveServerAction();
+ break;
+
+ }
+ }
+ } else {
+ button = (JButton) contentUI.getObjectById("save");
+ }
if (button != null) {
action = (UIActionSupport) button.getAction();
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/SaveCurrentRemoteConfigurationUIAction.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/actions/storage/SaveCurrentRemoteConfigurationUIAction.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/SaveCurrentRemoteConfigurationUIAction.java
@@ -24,10 +24,10 @@ package fr.ird.observe.client.ui.actions.storage;
import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.client.ui.ObserveMainUI;
-import fr.ird.observe.client.ui.util.UIHelper;
import fr.ird.observe.client.ui.actions.main.menu.MenuActionSupport;
import fr.ird.observe.client.ui.storage.StorageUIModel;
import fr.ird.observe.client.ui.storage.tabs.ConfigUI;
+import fr.ird.observe.client.ui.util.UIHelper;
import fr.ird.observe.services.dto.presets.RemoteDataSourceConfiguration;
import java.awt.Dimension;
import java.awt.GridLayout;
@@ -118,6 +118,6 @@ public class SaveCurrentRemoteConfigurationUIAction extends MenuActionSupport {
configuration.setPassword(new String(model.getRemotePassword()));
configuration.setUseSsl(model.isUseSsl());
ObserveSwingApplicationContext.get().getConfig().addRemoteDataSourceConfiguration(configuration);
- configUI.getHandler().addRemoteConfiguration(configuration);
+ configUI.getHandler().addRemoteConfiguration(getMainUI(), configuration, configUI.getRemoteMenu().getComponentCount() - 2);
}
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/SaveCurrentServerConfigurationUIAction.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/actions/storage/SaveCurrentServerConfigurationUIAction.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/SaveCurrentServerConfigurationUIAction.java
@@ -23,10 +23,10 @@ package fr.ird.observe.client.ui.actions.storage;
*/
import fr.ird.observe.client.ui.ObserveMainUI;
-import fr.ird.observe.client.ui.util.UIHelper;
import fr.ird.observe.client.ui.actions.main.menu.MenuActionSupport;
import fr.ird.observe.client.ui.storage.StorageUIModel;
import fr.ird.observe.client.ui.storage.tabs.ConfigUI;
+import fr.ird.observe.client.ui.util.UIHelper;
import fr.ird.observe.services.dto.presets.ServerDataSourceConfiguration;
import java.awt.Dimension;
import java.awt.GridLayout;
@@ -59,10 +59,6 @@ public class SaveCurrentServerConfigurationUIAction extends MenuActionSupport {
super(mainUI, ACTION_NAME, t("observe.storage.serverConfiguration.presets.save"), t("observe.storage.serverConfiguration.presets.save"), "save", 'S');
}
- public SaveCurrentServerConfigurationUIAction(ConfigUI mainUI) {
- super(null, ACTION_NAME, t("observe.storage.serverConfiguration.presets.save"), t("observe.storage.serverConfiguration.presets.save"), "save", 'S');
- }
-
@Override
protected void doActionPerformed(ActionEvent e) {
@@ -122,7 +118,7 @@ public class SaveCurrentServerConfigurationUIAction extends MenuActionSupport {
configuration.setDatabaseName(model.getServerDatabase());
getMainUI().getConfig().addServerDataSourceConfiguration(configuration);
- configUI.getHandler().addServerConfiguration(configuration);
+ configUI.getHandler().addServerConfiguration(getMainUI(), configuration, configUI.getServerMenu().getComponentCount() - 2);
}
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/CreatePresetUIAction.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/CreatePresetUIAction.java
@@ -0,0 +1,76 @@
+package fr.ird.observe.client.ui.actions.storage.presets;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ui.ObserveKeyStrokes;
+import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
+import fr.ird.observe.services.dto.presets.RemoteDataSourceConfiguration;
+import fr.ird.observe.services.dto.presets.ServerDataSourceConfiguration;
+import java.util.ArrayList;
+import java.util.List;
+
+
+import static org.nuiton.i18n.I18n.n;
+
+/**
+ * Created by tchemit on 17/08/17.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ */
+public class CreatePresetUIAction extends PresetsUIActionSupport {
+
+ public static final String ACTION_NAME = CreatePresetUIAction.class.getName();
+
+ public CreatePresetUIAction(ObserveMainUI mainUI) {
+ super(mainUI, ACTION_NAME, n("observe.action.presets.create"), n("observe.action.presets.create.tip"), "add", ObserveKeyStrokes.KEY_STROKE_NEW_NEXT_DATA);
+ }
+
+ @Override
+ protected void doActionPerformed(RemotePresetsUI ui) {
+
+ switch (ui.getTabs().getSelectedIndex()) {
+ case 0: {
+ RemoteDataSourceConfiguration configuration = new RemoteDataSourceConfiguration();
+ configuration.setName("Change me");
+ List<RemoteDataSourceConfiguration> configurations = new ArrayList<>(ui.getModel().getRemoteDataSourceConfigurations());
+ configurations.add(configuration);
+ ui.getModel().setRemoteDataSourceConfigurations(configurations);
+
+ ui.getRemoteConfigurations().setSelectedValue(configuration, true);
+ }
+ break;
+ case 1: {
+ ServerDataSourceConfiguration configuration = new ServerDataSourceConfiguration();
+ configuration.setName("Change me");
+
+ List<ServerDataSourceConfiguration> configurations = new ArrayList<>(ui.getModel().getServerDataSourceConfigurations());
+ configurations.add(configuration);
+ ui.getModel().setServerDataSourceConfigurations(configurations);
+ ui.getServerConfigurations().setSelectedValue(configuration, true);
+ }
+ break;
+ }
+
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/DeleteRemoteUIAction.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/DeleteRemoteUIAction.java
@@ -0,0 +1,75 @@
+package fr.ird.observe.client.ui.actions.storage.presets;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ObserveSwingApplicationContext;
+import fr.ird.observe.client.ui.ObserveKeyStrokes;
+import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
+import fr.ird.observe.client.ui.util.UIHelper;
+import fr.ird.observe.services.dto.presets.RemoteDataSourceConfiguration;
+import fr.ird.observe.services.dto.presets.ServerDataSourceConfiguration;
+import java.util.ArrayList;
+import java.util.List;
+import javax.swing.JOptionPane;
+import org.nuiton.decorator.Decorator;
+
+
+import static org.nuiton.i18n.I18n.n;
+import static org.nuiton.i18n.I18n.t;
+
+/**
+ * Created by tchemit on 17/08/17.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ */
+public class DeleteRemoteUIAction extends PresetsUIActionSupport {
+
+ public static final String ACTION_NAME = DeleteRemoteUIAction.class.getName();
+
+ public DeleteRemoteUIAction(ObserveMainUI mainUI) {
+ super(mainUI, ACTION_NAME, n("observe.action.delete"), n("observe.action.delete.remote.tip"), "delete", ObserveKeyStrokes.KEY_STROKE_DELETE_DATA_GLOBAL);
+ }
+
+ @Override
+ protected void doActionPerformed(RemotePresetsUI ui) {
+
+ Decorator<RemoteDataSourceConfiguration> decorator = ObserveSwingApplicationContext.get().getDecoratorService().getDecoratorByType(RemoteDataSourceConfiguration.class);
+ RemoteDataSourceConfiguration configuration = ui.getModel().getRemoteDataSourceConfiguration();
+ int response = UIHelper.askUser(t("observe.storage.presets.delete.title"),
+ t("observe.storage.presets.delete.message", decorator.toString(configuration)),
+ JOptionPane.QUESTION_MESSAGE,
+ new Object[]{t("observe.action.delete"), t("observe.action.cancel")},
+ 0);
+ boolean delete = response == 0;
+
+ if (delete) {
+
+ List<RemoteDataSourceConfiguration> configurations = new ArrayList<>(ui.getModel().getRemoteDataSourceConfigurations());
+ configurations.remove(configuration);
+ ui.getModel().setRemoteDataSourceConfigurations(configurations);
+ ObserveSwingApplicationContext.get().getConfig().removeRemoteDataSourceConfiguration(configuration);
+ ui.getModel().setRemoteDataSourceConfiguration(null);
+ }
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/DeleteServerUIAction.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/DeleteServerUIAction.java
@@ -0,0 +1,77 @@
+package fr.ird.observe.client.ui.actions.storage.presets;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ObserveSwingApplicationContext;
+import fr.ird.observe.client.ui.ObserveKeyStrokes;
+import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
+import fr.ird.observe.client.ui.util.UIHelper;
+import fr.ird.observe.services.dto.presets.ServerDataSourceConfiguration;
+import java.util.ArrayList;
+import java.util.List;
+import javax.swing.JOptionPane;
+import org.nuiton.decorator.Decorator;
+
+
+import static org.nuiton.i18n.I18n.n;
+import static org.nuiton.i18n.I18n.t;
+
+/**
+ * Created by tchemit on 17/08/17.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ */
+public class DeleteServerUIAction extends PresetsUIActionSupport {
+
+ public static final String ACTION_NAME = DeleteServerUIAction.class.getName();
+
+ public DeleteServerUIAction(ObserveMainUI mainUI) {
+ super(mainUI, ACTION_NAME, n("observe.action.delete"), n("observe.action.delete.server.tip"), "delete", ObserveKeyStrokes.KEY_STROKE_DELETE_DATA_GLOBAL);
+ }
+
+ @Override
+ protected void doActionPerformed(RemotePresetsUI ui) {
+
+ Decorator<ServerDataSourceConfiguration> decorator = ObserveSwingApplicationContext.get().getDecoratorService().getDecoratorByType(ServerDataSourceConfiguration.class);
+ ServerDataSourceConfiguration configuration = ui.getModel().getServerDataSourceConfiguration();
+
+ int response = UIHelper.askUser(t("observe.storage.presets.delete.title"),
+ t("observe.storage.presets.delete.message", decorator.toString(configuration)),
+ JOptionPane.QUESTION_MESSAGE,
+ new Object[]{t("observe.action.delete"), t("observe.action.cancel")},
+ 0
+ );
+ boolean delete = response == 0;
+
+ if (delete) {
+
+ List<ServerDataSourceConfiguration> configurations = new ArrayList<>(ui.getModel().getServerDataSourceConfigurations());
+ configurations.remove(configuration);
+ ui.getModel().setServerDataSourceConfigurations(configurations);
+ ObserveSwingApplicationContext.get().getConfig().removeServerDataSourceConfiguration(configuration);
+ ui.getModel().setServerDataSourceConfiguration(null);
+ }
+
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/PresetsUIActionSupport.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/PresetsUIActionSupport.java
@@ -0,0 +1,58 @@
+package fr.ird.observe.client.ui.actions.storage.presets;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.actions.UIActionSupport;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
+import java.awt.event.ActionEvent;
+import javax.swing.KeyStroke;
+
+/**
+ * Created by tchemit on 17/08/17.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ */
+public abstract class PresetsUIActionSupport extends UIActionSupport {
+
+ PresetsUIActionSupport(ObserveMainUI mainUI, String actionName, String label, String tip, String actionIcon, KeyStroke keyStroke) {
+ super(mainUI, actionName, label, tip, actionIcon, keyStroke);
+ }
+ PresetsUIActionSupport(ObserveMainUI mainUI, String actionName, String label, String tip, String actionIcon, char keyStroke) {
+ super(mainUI, actionName, label, tip, actionIcon, keyStroke);
+ }
+
+ protected abstract void doActionPerformed(RemotePresetsUI ui);
+
+ @Override
+ public void actionPerformed(ActionEvent event) {
+ if (!getEditor().isShowing()) {
+ return;
+ }
+
+ RemotePresetsUI ui = (RemotePresetsUI) getEditor().getClientProperty(CLIENT_PROPERTY_UI);
+
+ doActionPerformed(ui);
+
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/QuitPresetsUIAction.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/QuitPresetsUIAction.java
@@ -0,0 +1,58 @@
+package fr.ird.observe.client.ui.actions.storage.presets;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ObserveSwingApplicationContext;
+import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.ObserveUIMode;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
+import javax.swing.JPanel;
+
+
+import static org.nuiton.i18n.I18n.n;
+
+/**
+ * Created by tchemit on 17/08/17.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ */
+public class QuitPresetsUIAction extends PresetsUIActionSupport {
+
+ public static final String ACTION_NAME = QuitPresetsUIAction.class.getName();
+
+ public QuitPresetsUIAction(ObserveMainUI mainUI) {
+ super(mainUI, ACTION_NAME, n("observe.action.quit"), n("observe.action.quit.tip"), "exit", 'Q');
+ }
+
+ @Override
+ protected void doActionPerformed(RemotePresetsUI ui) {
+
+ ObserveMainUI mainUI = ObserveSwingApplicationContext.get().getMainUI();
+ mainUI.getDataSourcePresets().setContentContainer(new JPanel());
+ if (ObserveSwingApplicationContext.get().getDataSourcesManager().getMainDataSource() == null) {
+ mainUI.getModel().setMode(ObserveUIMode.NO_DB);
+ } else {
+ mainUI.getModel().setMode(ObserveUIMode.DB);
+ }
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/ResetRemoteUIAction.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/ResetRemoteUIAction.java
@@ -0,0 +1,55 @@
+package fr.ird.observe.client.ui.actions.storage.presets;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ui.ObserveKeyStrokes;
+import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
+import fr.ird.observe.services.dto.presets.RemoteDataSourceConfiguration;
+
+
+import static org.nuiton.i18n.I18n.n;
+
+/**
+ * Created by tchemit on 17/08/17.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ */
+public class ResetRemoteUIAction extends PresetsUIActionSupport {
+
+ public static final String ACTION_NAME = ResetRemoteUIAction.class.getName();
+
+ public ResetRemoteUIAction(ObserveMainUI mainUI) {
+ super(mainUI, ACTION_NAME, n("observe.action.reset"), n("observe.action.reset.remote.tip"), "revert", ObserveKeyStrokes.KEY_STROKE_RESET_DATA);
+ }
+
+ @Override
+ protected void doActionPerformed(RemotePresetsUI ui) {
+
+ RemoteDataSourceConfiguration selectedValue = ui.getRemoteConfigurations().getSelectedValue();
+
+ ui.getModel().setRemoteDataSourceConfiguration(null);
+ ui.getModel().setRemoteDataSourceConfiguration(selectedValue);
+
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/ResetServerUIAction.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/ResetServerUIAction.java
@@ -0,0 +1,54 @@
+package fr.ird.observe.client.ui.actions.storage.presets;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ui.ObserveKeyStrokes;
+import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
+import fr.ird.observe.services.dto.presets.ServerDataSourceConfiguration;
+
+
+import static org.nuiton.i18n.I18n.n;
+
+/**
+ * Created by tchemit on 17/08/17.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ */
+public class ResetServerUIAction extends PresetsUIActionSupport {
+
+ public static final String ACTION_NAME = ResetServerUIAction.class.getName();
+
+ public ResetServerUIAction(ObserveMainUI mainUI) {
+ super(mainUI, ACTION_NAME, n("observe.action.reset"), n("observe.action.reset.server.tip"), "revert", ObserveKeyStrokes.KEY_STROKE_RESET_DATA);
+ }
+
+ @Override
+ protected void doActionPerformed(RemotePresetsUI ui) {
+
+ ServerDataSourceConfiguration selectedValue = ui.getServerConfigurations().getSelectedValue();
+ ui.getModel().setServerDataSourceConfiguration(null);
+ ui.getModel().setServerDataSourceConfiguration(selectedValue);
+
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/SaveRemoteUIAction.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/SaveRemoteUIAction.java
@@ -0,0 +1,65 @@
+package fr.ird.observe.client.ui.actions.storage.presets;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ObserveSwingApplicationContext;
+import fr.ird.observe.client.ui.ObserveKeyStrokes;
+import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
+import fr.ird.observe.services.dto.presets.RemoteDataSourceConfiguration;
+
+
+import static org.nuiton.i18n.I18n.n;
+
+/**
+ * Created by tchemit on 17/08/17.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ */
+public class SaveRemoteUIAction extends PresetsUIActionSupport {
+
+ public static final String ACTION_NAME = SaveRemoteUIAction.class.getName();
+
+ public SaveRemoteUIAction(ObserveMainUI mainUI) {
+ super(mainUI, ACTION_NAME, n("observe.action.save"), n("observe.action.save.remote.tip"), "save", ObserveKeyStrokes.KEY_STROKE_SAVE_DATA);
+ }
+
+ @Override
+ protected void doActionPerformed(RemotePresetsUI ui) {
+
+ RemoteDataSourceConfiguration remoteDataSourceConfiguration = ui.getModel().getRemoteDataSourceConfiguration();
+
+ remoteDataSourceConfiguration.setName(ui.getRemoteName().getText().trim());
+ remoteDataSourceConfiguration.setUrl(ui.getRemoteUrl().getText().trim());
+ remoteDataSourceConfiguration.setLogin(ui.getRemoteLogin().getText().trim());
+ remoteDataSourceConfiguration.setPassword(ui.getRemotePassword().getText().trim());
+ remoteDataSourceConfiguration.setUseSsl(ui.getRemoteUseSsl().isSelected());
+
+ ObserveSwingApplicationContext.get().getConfig().updateRemoteDataSourceConfiguration(remoteDataSourceConfiguration);
+
+ ui.getModel().setRemoteDataSourceConfiguration(null);
+ ui.getModel().setRemoteDataSourceConfiguration(remoteDataSourceConfiguration);
+ ui.getModel().setRemoteModified(false);
+
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/SaveServerUIAction.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/SaveServerUIAction.java
@@ -0,0 +1,66 @@
+package fr.ird.observe.client.ui.actions.storage.presets;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ObserveSwingApplicationContext;
+import fr.ird.observe.client.ui.ObserveKeyStrokes;
+import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
+import fr.ird.observe.services.dto.presets.ServerDataSourceConfiguration;
+
+
+import static org.nuiton.i18n.I18n.n;
+
+/**
+ * Created by tchemit on 17/08/17.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ */
+public class SaveServerUIAction extends PresetsUIActionSupport {
+
+ public static final String ACTION_NAME = SaveServerUIAction.class.getName();
+
+ public SaveServerUIAction(ObserveMainUI mainUI) {
+ super(mainUI, ACTION_NAME, n("observe.action.save"), n("observe.action.save.server.tip"), "save", ObserveKeyStrokes.KEY_STROKE_SAVE_DATA);
+ }
+
+ @Override
+ protected void doActionPerformed(RemotePresetsUI ui) {
+
+ ServerDataSourceConfiguration serverDataSourceConfiguration = ui.getModel().getServerDataSourceConfiguration();
+
+ serverDataSourceConfiguration.setName(ui.getServerName().getText().trim());
+ serverDataSourceConfiguration.setUrl(ui.getServerUrl().getText().trim());
+ serverDataSourceConfiguration.setLogin(ui.getServerLogin().getText().trim());
+ serverDataSourceConfiguration.setPassword(ui.getServerPassword().getText().trim());
+ String databaseName = ui.getServerDataBase().getText().trim();
+ serverDataSourceConfiguration.setDatabaseName(databaseName.isEmpty() ? null : databaseName);
+
+ ObserveSwingApplicationContext.get().getConfig().updateServerDataSourceConfiguration(serverDataSourceConfiguration);
+
+ ui.getModel().setServerDataSourceConfiguration(null);
+ ui.getModel().setServerDataSourceConfiguration(serverDataSourceConfiguration);
+ ui.getModel().setServerModified(false);
+
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/TestRemoteUIAction.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/TestRemoteUIAction.java
@@ -0,0 +1,109 @@
+package fr.ird.observe.client.ui.actions.storage.presets;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ObserveSwingApplicationContext;
+import fr.ird.observe.client.db.ObserveSwingDataSource;
+import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
+import fr.ird.observe.client.ui.util.UIHelper;
+import fr.ird.observe.services.configuration.ObserveDataSourceInformation;
+import fr.ird.observe.services.configuration.topia.ObserveDataSourceConfigurationTopiaPG;
+import fr.ird.observe.services.security.BadObserveWebUserPasswordException;
+import fr.ird.observe.services.security.UnknownObserveWebUserException;
+import fr.ird.observe.services.security.UnknownObserveWebUserForDatabaseException;
+import fr.ird.observe.services.security.UserLoginNotFoundException;
+import fr.ird.observe.services.security.UserPasswordNotFoundException;
+import org.nuiton.version.Version;
+
+
+import static org.nuiton.i18n.I18n.n;
+import static org.nuiton.i18n.I18n.t;
+
+/**
+ * Created by tchemit on 17/08/17.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ */
+public class TestRemoteUIAction extends PresetsUIActionSupport {
+
+ public static final String ACTION_NAME = TestRemoteUIAction.class.getName();
+
+ public TestRemoteUIAction(ObserveMainUI mainUI) {
+ super(mainUI, ACTION_NAME, n("observe.action.test.remote"), n("observe.action.test.remote.tip"), "connect_creating", 'V');
+ }
+
+ @Override
+ protected void doActionPerformed(RemotePresetsUI ui) {
+
+ ObserveDataSourceConfigurationTopiaPG config = new ObserveDataSourceConfigurationTopiaPG();
+ config.setJdbcUrl(ui.getRemoteUrl().getText().trim());
+ config.setUsername(ui.getRemoteLogin().getText().trim());
+ config.setPassword(ui.getRemotePassword().getText().trim().toCharArray());
+ config.setUseSsl(ui.getRemoteUseSsl().isSelected());
+
+ String connexionStatusError = null;
+
+ Version modelVersion = ObserveSwingApplicationContext.get().getConfig().getModelVersion();
+ ObserveSwingDataSource dataSource = ObserveSwingApplicationContext.get().getDataSourcesManager().newDataSource(config);
+ try {
+
+ ObserveDataSourceInformation dataSourceInformation = dataSource.checkCanConnect();
+
+ Version versionDataSource = dataSourceInformation.getVersion();
+
+ // en mise a jour de la base on ne test pas la version
+ if (!modelVersion.equals(versionDataSource)) {
+
+ connexionStatusError = t("observe.storage.error.dbVersionMismatch", versionDataSource, modelVersion);
+ }
+
+ } catch (UnknownObserveWebUserException e) {
+ connexionStatusError = t("observe.storage.error.rest.user.unknown", e.getUserLogin());
+ } catch (BadObserveWebUserPasswordException e) {
+ connexionStatusError = t("observe.storage.error.rest.password.bad", e.getUserLogin());
+ } catch (UnknownObserveWebUserForDatabaseException e) {
+ connexionStatusError = t("observe.storage.error.rest.database.unknownForUser", e.getDatabaseName(), e.getRole());
+ } catch (UserLoginNotFoundException e) {
+ connexionStatusError = t("observe.storage.error.rest.user.required");
+ } catch (UserPasswordNotFoundException e) {
+ connexionStatusError = t("observe.storage.error.rest.password.required");
+ } catch (Exception e) {
+ connexionStatusError = e.getMessage();
+ if (connexionStatusError == null || connexionStatusError.isEmpty()) {
+ connexionStatusError = e.getClass().getName();
+ }
+ } finally {
+ if (dataSource.isOpen()) {
+ dataSource.close();
+ }
+ }
+
+ if (connexionStatusError == null) {
+ UIHelper.displayInfo("Test de connexion", "Le connexion a été établie avec succès.");
+ } else {
+ UIHelper.displayWarning("Test de connexion", "Le test de connexion a échoué :\n" + connexionStatusError);
+ }
+
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/TestServerUIAction.java
=====================================
--- /dev/null
+++ b/client/src/main/java/fr/ird/observe/client/ui/actions/storage/presets/TestServerUIAction.java
@@ -0,0 +1,143 @@
+package fr.ird.observe.client.ui.actions.storage.presets;
+
+/*-
+ * #%L
+ * ObServe :: Client
+ * %%
+ * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * 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>.
+ * #L%
+ */
+
+import fr.ird.observe.client.ObserveSwingApplicationContext;
+import fr.ird.observe.client.db.ObserveSwingDataSource;
+import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.storage.presets.RemotePresetsUI;
+import fr.ird.observe.client.ui.util.UIHelper;
+import fr.ird.observe.services.configuration.ObserveDataSourceInformation;
+import fr.ird.observe.services.configuration.rest.ObserveDataSourceConfigurationRest;
+import fr.ird.observe.services.security.BadObserveWebUserPasswordException;
+import fr.ird.observe.services.security.UnknownObserveWebUserException;
+import fr.ird.observe.services.security.UnknownObserveWebUserForDatabaseException;
+import fr.ird.observe.services.security.UserLoginNotFoundException;
+import fr.ird.observe.services.security.UserPasswordNotFoundException;
+import fr.ird.observe.services.service.PingService;
+import java.net.MalformedURLException;
+import java.net.URL;
+import org.nuiton.version.Version;
+
+
+import static org.nuiton.i18n.I18n.n;
+import static org.nuiton.i18n.I18n.t;
+
+/**
+ * Created by tchemit on 17/08/17.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ */
+public class TestServerUIAction extends PresetsUIActionSupport {
+
+ public static final String ACTION_NAME = TestServerUIAction.class.getName();
+
+ public TestServerUIAction(ObserveMainUI mainUI) {
+ super(mainUI, ACTION_NAME, n("observe.action.test.server"), n("observe.action.test.server.tip"), "connect_creating", 'V');
+ }
+
+ @Override
+ protected void doActionPerformed(RemotePresetsUI ui) {
+
+ String connexionStatusError = null;
+ ObserveDataSourceConfigurationRest config = new ObserveDataSourceConfigurationRest();
+ String url = ui.getServerUrl().getText().trim();
+ try {
+ config.setServerUrl(new URL(url));
+ } catch (MalformedURLException e) {
+ connexionStatusError = t("observe.storage.error.badUrl", url);
+ }
+ config.setLogin(ui.getServerLogin().getText().trim());
+ config.setPassword(ui.getServerPassword().getText().trim().toCharArray());
+ String databaseName = ui.getServerDataBase().getText().trim();
+ config.setOptionalDatabaseName(databaseName.isEmpty() ? null : databaseName);
+
+ Version applicationVersion = ObserveSwingApplicationContext.get().getConfig().getVersion();
+ Version modelVersion = ObserveSwingApplicationContext.get().getConfig().getModelVersion();
+ ObserveSwingDataSource dataSource = ObserveSwingApplicationContext.get().getDataSourcesManager().newDataSource(config);
+ try {
+
+ PingService pingService = dataSource.getPingService();
+
+ if (getMainUI().getConfig().isCheckServerVersion()) {
+
+ Version serverVersion = pingService.getServerVersion();
+
+ if (!applicationVersion.equals(serverVersion)) {
+
+ connexionStatusError = t("observe.storage.error.serverVersionMismatch", serverVersion, applicationVersion);
+
+ }
+ }
+
+ if (connexionStatusError == null) {
+ Version modelServerVersion = pingService.getModelVersion();
+
+ if (!modelVersion.equals(modelServerVersion)) {
+
+ connexionStatusError = t("observe.storage.error.serverVersionModelMismatch", modelServerVersion, modelVersion);
+
+ }
+
+ }
+ if (connexionStatusError == null) {
+
+ ObserveDataSourceInformation dataSourceInformation = dataSource.checkCanConnect();
+
+ Version versionDataSource = dataSourceInformation.getVersion();
+
+ // en mise a jour de la base on ne test pas la version
+ if (!modelVersion.equals(versionDataSource)) {
+
+ connexionStatusError = t("observe.storage.error.dbVersionMismatch", versionDataSource, modelVersion);
+ }
+ }
+
+ } catch (UnknownObserveWebUserException e) {
+ connexionStatusError = t("observe.storage.error.rest.user.unknown", e.getUserLogin());
+ } catch (BadObserveWebUserPasswordException e) {
+ connexionStatusError = t("observe.storage.error.rest.password.bad", e.getUserLogin());
+ } catch (UnknownObserveWebUserForDatabaseException e) {
+ connexionStatusError = t("observe.storage.error.rest.database.unknownForUser", e.getDatabaseName(), e.getRole());
+ } catch (UserLoginNotFoundException e) {
+ connexionStatusError = t("observe.storage.error.rest.user.required");
+ } catch (UserPasswordNotFoundException e) {
+ connexionStatusError = t("observe.storage.error.rest.password.required");
+ } catch (Exception e) {
+ connexionStatusError = e.getMessage();
+ if (connexionStatusError == null || connexionStatusError.isEmpty()) {
+ connexionStatusError = e.getClass().getName();
+ }
+ } finally {
+ if (dataSource.isOpen()) {
+ dataSource.close();
+ }
+ }
+
+ if (connexionStatusError == null) {
+ UIHelper.displayInfo("Test de connexion", "Le connexion a été établie avec succès.");
+ } else {
+ UIHelper.displayWarning("Test de connexion", "Le test de connexion a échoué :\n" + connexionStatusError);
+ }
+ }
+}
=====================================
client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIModel.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIModel.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/storage/StorageUIModel.java
@@ -1764,7 +1764,7 @@ public class StorageUIModel extends WizardModel<StorageStep> {
} catch (UserPasswordNotFoundException e) {
- connexionStatusError = t("observe.storage.error.rest.pasword.required");
+ connexionStatusError = t("observe.storage.error.rest.password.required");
setConnexionStatus(ConnexionStatus.FAILED);
} catch (ObserveWebSecurityExceptionSupport e) {
=====================================
client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUI.jaxx
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUI.jaxx
+++ b/client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUI.jaxx
@@ -25,6 +25,17 @@
fr.ird.observe.services.dto.presets.RemoteDataSourceConfiguration
fr.ird.observe.services.dto.presets.ServerDataSourceConfiguration
+ fr.ird.observe.client.ui.actions.storage.presets.CreatePresetUIAction
+ fr.ird.observe.client.ui.actions.storage.presets.DeleteRemoteUIAction
+ fr.ird.observe.client.ui.actions.storage.presets.DeleteServerUIAction
+ fr.ird.observe.client.ui.actions.storage.presets.QuitPresetsUIAction
+ fr.ird.observe.client.ui.actions.storage.presets.ResetRemoteUIAction
+ fr.ird.observe.client.ui.actions.storage.presets.ResetServerUIAction
+ fr.ird.observe.client.ui.actions.storage.presets.SaveRemoteUIAction
+ fr.ird.observe.client.ui.actions.storage.presets.SaveServerUIAction
+ fr.ird.observe.client.ui.actions.storage.presets.TestRemoteUIAction
+ fr.ird.observe.client.ui.actions.storage.presets.TestServerUIAction
+
org.nuiton.jaxx.widgets.select.BeanComboBox
</import>
@@ -33,128 +44,130 @@
<JTabbedPane id='tabs' constraints='BorderLayout.CENTER'>
<tab id='remoteTab' title="observe.storage.remote.presets.title">
- <JPanel id="remotePanel" layout="{new BorderLayout()}">
- <BeanComboBox id='remoteConfigurations' constructorParams='this' genericType='RemoteDataSourceConfiguration'
- constraints='BorderLayout.NORTH'/>
- <JLabel id="noRemoteSelected" constraints='BorderLayout.CENTER'/>
- <Table id="remoteForm" constraints='BorderLayout.SOUTH' fill="both">
- <row>
- <cell anchor='west'>
- <JLabel text='observe.storage.remote.name'/>
- </cell>
- <cell weightx='1' fill="both" anchor='east'>
- <JTextField id="remoteName" onKeyReleased="model.setRemoteModified(true);"/>
- </cell>
- </row>
- <row>
- <cell anchor='west'>
- <JLabel text='observe.storage.remote.url'/>
- </cell>
- <cell weightx='1' fill="both" anchor='east'>
- <JTextField id="remoteUrl" onKeyReleased="model.setRemoteModified(true);"/>
- </cell>
- </row>
- <row>
- <cell anchor='west'>
- <JLabel text='observe.storage.remote.login'/>
- </cell>
- <cell weightx='1' fill="both" anchor='east'>
- <JTextField id="remoteLogin" onKeyReleased="model.setRemoteModified(true);"/>
- </cell>
- </row>
- <row>
- <cell anchor='west'>
- <JLabel text='observe.storage.remote.password'/>
- </cell>
- <cell weightx='1' fill="both" anchor='east'>
- <JTextField id="remotePassword" onKeyReleased="model.setRemoteModified(true);"/>
- </cell>
- </row>
- <row>
- <cell columns='2'>
- <JCheckBox id="remoteUseSsl" onActionPerformed="model.setRemoteModified(true);"/>
- </cell>
- </row>
+ <JSplitPane id="remotePanel">
+ <JList id='remoteConfigurations' genericType="RemoteDataSourceConfiguration"/>
+ <JPanel id="remoteContentPanel" layout="{new BorderLayout()}">
+ <JLabel id="noRemoteSelected" constraints='BorderLayout.CENTER'/>
+ <Table id="remoteForm" constraints='BorderLayout.SOUTH' fill="both">
+ <row>
+ <cell anchor='west'>
+ <JLabel text='observe.storage.remote.name'/>
+ </cell>
+ <cell weightx='1' fill="both" anchor='east'>
+ <JTextField id="remoteName" onKeyReleased="model.setRemoteModified(true);"/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='west'>
+ <JLabel text='observe.storage.remote.url'/>
+ </cell>
+ <cell weightx='1' fill="both" anchor='east'>
+ <JTextField id="remoteUrl" onKeyReleased="model.setRemoteModified(true);"/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='west'>
+ <JLabel text='observe.storage.remote.login'/>
+ </cell>
+ <cell weightx='1' fill="both" anchor='east'>
+ <JTextField id="remoteLogin" onKeyReleased="model.setRemoteModified(true);"/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='west'>
+ <JLabel text='observe.storage.remote.password'/>
+ </cell>
+ <cell weightx='1' fill="both" anchor='east'>
+ <JTextField id="remotePassword" onKeyReleased="model.setRemoteModified(true);"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2'>
+ <JCheckBox id="remoteUseSsl" onActionPerformed="model.setRemoteModified(true);"/>
+ </cell>
+ </row>
- <!-- tester la connexion -->
- <row>
- <cell columns='2'>
- <JPanel layout="{new GridLayout(1, 0)}">
- <JButton id="saveRemoteAction" onActionPerformed='handler.saveRemote()'/>
- <JButton id="deleteRemoteAction" onActionPerformed='handler.deleteRemote()'/>
- <JButton id="testRemoteAction" onActionPerformed='handler.testRemote()'/>
- </JPanel>
- </cell>
- </row>
- </Table>
- </JPanel>
+ <row>
+ <cell columns='2'>
+ <JPanel layout="{new GridLayout(1, 0)}">
+ <JButton id="resetRemoteAction"/>
+ <JButton id="saveRemoteAction"/>
+ <JButton id="deleteRemoteAction"/>
+ <JButton id="testRemoteAction"/>
+ </JPanel>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
+ </JSplitPane>
</tab>
<tab id='serverTab' title="observe.storage.server.presets.title">
- <JPanel id="serverPanel" layout="{new BorderLayout()}">
- <BeanComboBox id='serverConfigurations' constructorParams='this' genericType='ServerDataSourceConfiguration'
- constraints='BorderLayout.NORTH'/>
- <JLabel id="noServerSelected" constraints='BorderLayout.CENTER'/>
-
- <Table id="serverForm" constraints='BorderLayout.SOUTH' fill="both">
- <row>
- <cell anchor='west'>
- <JLabel text='observe.storage.remote.name'/>
- </cell>
- <cell weightx='1' fill="both" anchor='east'>
- <JTextField id="serverName" onKeyReleased="model.setServerModified(true);"/>
- </cell>
- </row>
- <row>
- <cell anchor='west'>
- <JLabel text='observe.storage.remote.url'/>
- </cell>
- <cell weightx='1' fill="both" anchor='east'>
- <JTextField id="serverUrl" onKeyReleased="model.setServerModified(true);"/>
- </cell>
- </row>
- <row>
- <cell anchor='west'>
- <JLabel text='observe.storage.remote.login'/>
- </cell>
- <cell weightx='1' fill="both" anchor='east'>
- <JTextField id="serverLogin" onKeyReleased="model.setServerModified(true);"/>
- </cell>
- </row>
- <row>
- <cell anchor='west'>
- <JLabel text='observe.storage.remote.password'/>
- </cell>
- <cell weightx='1' fill="both" anchor='east'>
- <JTextField id="serverPassword" onKeyReleased="model.setServerModified(true);"/>
- </cell>
- </row>
- <row>
- <cell anchor='west'>
- <JLabel id="serverDataBaseLabel" text='observe.storage.server.dataBase'/>
- </cell>
- <cell weightx='1' fill="both" anchor='east'>
- <JTextField id="serverDataBase" onKeyReleased="model.setServerModified(true);"/>
- </cell>
- </row>
+ <JSplitPane id="serverPanel">
+ <JList id='serverConfigurations' genericType="ServerDataSourceConfiguration"/>
+ <JPanel id="serverContentPanel" layout="{new BorderLayout()}">
+ <JLabel id="noServerSelected" constraints='BorderLayout.CENTER'/>
+ <Table id="serverForm" constraints='BorderLayout.SOUTH' fill="both">
+ <row>
+ <cell anchor='west'>
+ <JLabel text='observe.storage.remote.name'/>
+ </cell>
+ <cell weightx='1' fill="both" anchor='east'>
+ <JTextField id="serverName" onKeyReleased="model.setServerModified(true);"/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='west'>
+ <JLabel text='observe.storage.remote.url'/>
+ </cell>
+ <cell weightx='1' fill="both" anchor='east'>
+ <JTextField id="serverUrl" onKeyReleased="model.setServerModified(true);"/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='west'>
+ <JLabel text='observe.storage.remote.login'/>
+ </cell>
+ <cell weightx='1' fill="both" anchor='east'>
+ <JTextField id="serverLogin" onKeyReleased="model.setServerModified(true);"/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='west'>
+ <JLabel text='observe.storage.remote.password'/>
+ </cell>
+ <cell weightx='1' fill="both" anchor='east'>
+ <JTextField id="serverPassword" onKeyReleased="model.setServerModified(true);"/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='west'>
+ <JLabel id="serverDataBaseLabel" text='observe.storage.server.dataBase'/>
+ </cell>
+ <cell weightx='1' fill="both" anchor='east'>
+ <JTextField id="serverDataBase" onKeyReleased="model.setServerModified(true);"/>
+ </cell>
+ </row>
- <!-- tester la connexion -->
- <row>
- <cell columns='2'>
- <JPanel layout="{new GridLayout(1, 0)}">
- <JButton id="saveServerAction" onActionPerformed='handler.saveServer()'/>
- <JButton id="deleteServerAction" onActionPerformed='handler.deleteServer()'/>
- <JButton id="testServerAction" onActionPerformed='handler.testServer()'/>
- </JPanel>
- </cell>
- </row>
- </Table>
- </JPanel>
+ <row>
+ <cell columns='2'>
+ <JPanel layout="{new GridLayout(1, 0)}">
+ <JButton id="resetServerAction"/>
+ <JButton id="saveServerAction"/>
+ <JButton id="deleteServerAction"/>
+ <JButton id="testServerAction"/>
+ </JPanel>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
+ </JSplitPane>
</tab>
</JTabbedPane>
<JPanel constraints='BorderLayout.SOUTH' layout="{new GridLayout(1, 0)}">
- <JButton id="quitAction" onActionPerformed='handler.quit()'/>
+ <JButton id="createAction"/>
+ <JButton id="quitAction"/>
</JPanel>
</JPanel>
=====================================
client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUI.jcss
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUI.jcss
+++ b/client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUI.jcss
@@ -19,9 +19,6 @@
* <http://www.gnu.org/licenses/gpl-3.0.html>.
* #L%
*/
-#remoteConfigurations {
- selectedItem: {model.getRemoteDataSourceConfiguration()};
-}
#noRemoteSelected {
visible: true;
@@ -54,10 +51,6 @@
selected:{model.getRemoteDataSourceConfiguration().isUseSsl()};
}
-#serverConfigurations {
- selectedItem: {model.getServerDataSourceConfiguration()};
-}
-
#noServerSelected {
visible: true;
text:"observe.storage.presets.no.selected";
@@ -88,49 +81,45 @@
text:{SwingUtil.getStringValue(model.getServerDataSourceConfiguration().getDatabaseName())};
}
+#resetRemoteAction {
+ enabled:{model.isRemoteModified()};
+ _observeAction:{ResetRemoteUIAction.ACTION_NAME};
+}
+
#saveRemoteAction {
- text:"observe.action.save";
- actionIcon:"save";
- mnemonic:E;
enabled:{model.isRemoteModified()};
+ _observeAction:{SaveRemoteUIAction.ACTION_NAME};
}
#deleteRemoteAction {
- text:"observe.action.delete";
- actionIcon:"delete";
- mnemonic:S;
+ _observeAction:{DeleteRemoteUIAction.ACTION_NAME};
}
#testRemoteAction {
- text:"observe.action.test.remote";
- toolTipText:"observe.action.test.remote.tip";
- actionIcon:"connect_creating";
- mnemonic:V;
+ _observeAction:{TestRemoteUIAction.ACTION_NAME};
+}
+
+#resetServerAction {
+ enabled:{model.isServerModified()};
+ _observeAction:{ResetServerUIAction.ACTION_NAME};
}
#saveServerAction {
- text:"observe.action.save";
- actionIcon:"save";
- mnemonic:E;
enabled:{model.isServerModified()};
+ _observeAction:{SaveServerUIAction.ACTION_NAME};
}
#deleteServerAction {
- text:"observe.action.delete";
- actionIcon:"delete";
- mnemonic:S;
+ _observeAction:{DeleteServerUIAction.ACTION_NAME};
}
#testServerAction {
- text:"observe.action.test.remote";
- toolTipText:"observe.action.test.remote.tip";
- actionIcon:"connect_creating";
- mnemonic:V;
+ _observeAction:{TestServerUIAction.ACTION_NAME};
}
+#createAction {
+ _observeAction:{CreatePresetUIAction.ACTION_NAME};
+}
#quitAction {
- text:"observe.action.quit";
- toolTipText:"observe.action.quit.tip";
- actionIcon:"exit";
- mnemonic:Q;
+ _observeAction:{QuitPresetsUIAction.ACTION_NAME};
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIHandler.java
@@ -24,38 +24,27 @@ package fr.ird.observe.client.ui.storage.presets;
import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.client.configuration.ClientConfig;
-import fr.ird.observe.client.db.ObserveSwingDataSource;
-import fr.ird.observe.client.ui.ObserveKeyStrokes;
-import fr.ird.observe.client.ui.ObserveMainUI;
-import fr.ird.observe.client.ui.ObserveUIMode;
+import fr.ird.observe.client.ui.actions.UIActionSupport;
import fr.ird.observe.client.ui.util.UIHelper;
-import fr.ird.observe.services.configuration.ObserveDataSourceInformation;
-import fr.ird.observe.services.configuration.rest.ObserveDataSourceConfigurationRest;
-import fr.ird.observe.services.configuration.topia.ObserveDataSourceConfigurationTopiaPG;
import fr.ird.observe.services.dto.presets.RemoteDataSourceConfiguration;
import fr.ird.observe.services.dto.presets.ServerDataSourceConfiguration;
-import fr.ird.observe.services.security.BadObserveWebUserPasswordException;
-import fr.ird.observe.services.security.UnknownObserveWebUserException;
-import fr.ird.observe.services.security.UnknownObserveWebUserForDatabaseException;
-import fr.ird.observe.services.security.UserLoginNotFoundException;
-import fr.ird.observe.services.security.UserPasswordNotFoundException;
-import fr.ird.observe.services.service.PingService;
import java.awt.BorderLayout;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
import java.util.List;
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
+import java.util.Objects;
+import javax.swing.AbstractButton;
+import javax.swing.ActionMap;
+import javax.swing.DefaultListModel;
+import javax.swing.InputMap;
+import javax.swing.JComponent;
import javax.swing.SwingUtilities;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.nuiton.decorator.Decorator;
-import org.nuiton.decorator.JXPathDecorator;
import org.nuiton.jaxx.runtime.spi.UIHandler;
-import org.nuiton.jaxx.widgets.select.BeanComboBox;
-import org.nuiton.version.Version;
+import org.nuiton.jaxx.runtime.swing.renderer.DecoratorListCellRenderer;
-import static org.nuiton.i18n.I18n.t;
+import static fr.ird.observe.client.ui.content.ContentUIInitializer.OBSERVE_ACTION;
/**
* Created on 20/12/16.
@@ -65,6 +54,9 @@ import static org.nuiton.i18n.I18n.t;
*/
public class RemotePresetsUIHandler implements UIHandler<RemotePresetsUI> {
+ /** Logger. */
+ private static final Log log = LogFactory.getLog(RemotePresetsUIHandler.class);
+
private RemotePresetsUI ui;
@Override
@@ -80,262 +72,139 @@ public class RemotePresetsUIHandler implements UIHandler<RemotePresetsUI> {
@Override
public void afterInit(RemotePresetsUI ui) {
+ ActionMap actionMap = ObserveSwingApplicationContext.get().getActionMap();
+ InputMap inputMap = ui.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
+ for (Object o : ui.get$objectMap().values()) {
+
+ if (o instanceof AbstractButton) {
+ init(inputMap, actionMap, (AbstractButton) o);
+ }
+
+ }
+
Decorator<RemoteDataSourceConfiguration> remoteDecorator = ObserveSwingApplicationContext.get().getDecoratorService().getDecoratorByType(RemoteDataSourceConfiguration.class);
- ui.getRemoteConfigurations().init((JXPathDecorator<RemoteDataSourceConfiguration>) remoteDecorator, ui.getModel().getRemoteDataSourceConfigurations());
- Decorator<ServerDataSourceConfiguration> serverDecorator = ObserveSwingApplicationContext.get().getDecoratorService().getDecoratorByType(ServerDataSourceConfiguration.class);
- ui.getServerConfigurations().init((JXPathDecorator<ServerDataSourceConfiguration>) serverDecorator, ui.getModel().getServerDataSourceConfigurations());
+ ui.getRemoteConfigurations().setCellRenderer(new DecoratorListCellRenderer<>(remoteDecorator));
+ DefaultListModel<RemoteDataSourceConfiguration> remoteModel = new DefaultListModel<>();
+ ui.getModel().getRemoteDataSourceConfigurations().forEach(remoteModel::addElement);
- ui.getModel().addPropertyChangeListener("remoteDataSourceConfigurations", evt -> ui.getRemoteConfigurations().setData((List<RemoteDataSourceConfiguration>) evt.getNewValue()));
- ui.getModel().addPropertyChangeListener("serverDataSourceConfigurations", evt -> ui.getServerConfigurations().setData((List<ServerDataSourceConfiguration>) evt.getNewValue()));
+ ui.getRemoteConfigurations().setModel(remoteModel);
- ui.getServerConfigurations().addPropertyChangeListener(BeanComboBox.PROPERTY_SELECTED_ITEM, evt -> {
+ ui.getRemoteConfigurations().addListSelectionListener(evt -> {
- ServerDataSourceConfiguration oldValue = (ServerDataSourceConfiguration) evt.getOldValue();
- ui.getModel().setServerDataSourceConfiguration((ServerDataSourceConfiguration) evt.getNewValue());
+ if (ui.getRemoteConfigurations().isSelectionEmpty()) {
- if (ui.getModel().getServerDataSourceConfiguration() == null) {
- ui.getServerPanel().remove(ui.getServerForm());
- ui.getServerPanel().add(ui.getNoServerSelected(), BorderLayout.CENTER);
+ ui.getModel().setRemoteDataSourceConfiguration(null);
+ ui.getModel().setRemoteModified(false);
} else {
- if (oldValue == null) {
- ui.getServerForm().setVisible(true);
- ui.getServerPanel().remove(ui.getNoServerSelected());
- ui.getServerPanel().add(ui.getServerForm(), BorderLayout.CENTER);
- }
- ui.getModel().setServerModified(false);
+ ui.getModel().setRemoteDataSourceConfiguration(ui.getRemoteConfigurations().getSelectedValue());
}
- SwingUtilities.invokeLater(ui::repaint);
});
- ui.getRemoteConfigurations().addPropertyChangeListener(BeanComboBox.PROPERTY_SELECTED_ITEM, evt -> {
+
+ ui.getModel().addPropertyChangeListener("remoteDataSourceConfigurations", evt -> {
+
+ List newValue = (List) evt.getNewValue();
+
+ DefaultListModel<RemoteDataSourceConfiguration> model = (DefaultListModel<RemoteDataSourceConfiguration>) ui.getRemoteConfigurations().getModel();
+ model.clear();
+ for (Object remoteDataSourceConfiguration : newValue) {
+ model.addElement((RemoteDataSourceConfiguration) remoteDataSourceConfiguration);
+ }
+
+ });
+
+
+ ui.getModel().addPropertyChangeListener("remoteDataSourceConfiguration", evt -> {
RemoteDataSourceConfiguration oldValue = (RemoteDataSourceConfiguration) evt.getOldValue();
- ui.getModel().setRemoteDataSourceConfiguration((RemoteDataSourceConfiguration) evt.getNewValue());
if (ui.getModel().getRemoteDataSourceConfiguration() == null) {
- ui.getRemotePanel().remove(ui.getRemoteForm());
- ui.getRemotePanel().add(ui.getNoRemoteSelected(), BorderLayout.CENTER);
+ ui.getRemoteContentPanel().remove(ui.getRemoteForm());
+ ui.getRemoteContentPanel().add(ui.getNoRemoteSelected(), BorderLayout.CENTER);
+ UIHelper.askFocus(ui.getCreateAction());
} else {
if (oldValue == null) {
ui.getRemoteForm().setVisible(true);
- ui.getRemotePanel().remove(ui.getNoRemoteSelected());
- ui.getRemotePanel().add(ui.getRemoteForm(), BorderLayout.CENTER);
+ ui.getRemoteContentPanel().remove(ui.getNoRemoteSelected());
+ ui.getRemoteContentPanel().add(ui.getRemoteForm(), BorderLayout.CENTER);
+ UIHelper.askFocus(ui.getRemoteName());
}
ui.getModel().setRemoteModified(false);
}
SwingUtilities.invokeLater(ui::repaint);
});
- ObserveKeyStrokes.addKeyStrokeFromMnemonic(ui);
- }
-
- public void testRemote() {
-
- ObserveDataSourceConfigurationTopiaPG config = new ObserveDataSourceConfigurationTopiaPG();
- config.setJdbcUrl(ui.getRemoteUrl().getText().trim());
- config.setUsername(ui.getRemoteLogin().getText().trim());
- config.setPassword(ui.getRemotePassword().getText().trim().toCharArray());
- config.setUseSsl(ui.getRemoteUseSsl().isSelected());
-
- String connexionStatusError = null;
-
- Version modelVersion = ObserveSwingApplicationContext.get().getConfig().getModelVersion();
- ObserveSwingDataSource dataSource = ObserveSwingApplicationContext.get().getDataSourcesManager().newDataSource(config);
- try {
-
- ObserveDataSourceInformation dataSourceInformation = dataSource.checkCanConnect();
+ Decorator<ServerDataSourceConfiguration> serverDecorator = ObserveSwingApplicationContext.get().getDecoratorService().getDecoratorByType(ServerDataSourceConfiguration.class);
+ ui.getServerConfigurations().setCellRenderer(new DecoratorListCellRenderer<>(serverDecorator));
+ DefaultListModel<ServerDataSourceConfiguration> ServerModel = new DefaultListModel<>();
+ ui.getModel().getServerDataSourceConfigurations().forEach(ServerModel::addElement);
- Version versionDataSource = dataSourceInformation.getVersion();
+ ui.getServerConfigurations().setModel(ServerModel);
- // en mise a jour de la base on ne test pas la version
- if (!modelVersion.equals(versionDataSource)) {
+ ui.getServerConfigurations().addListSelectionListener(evt -> {
- connexionStatusError = t("observe.storage.error.dbVersionMismatch", versionDataSource, modelVersion);
- }
+ if (ui.getServerConfigurations().isSelectionEmpty()) {
- } catch (UnknownObserveWebUserException e) {
- connexionStatusError = t("observe.storage.error.rest.user.unknown", e.getUserLogin());
- } catch (BadObserveWebUserPasswordException e) {
- connexionStatusError = t("observe.storage.error.rest.password.bad", e.getUserLogin());
- } catch (UnknownObserveWebUserForDatabaseException e) {
- connexionStatusError = t("observe.storage.error.rest.database.unknownForUser", e.getDatabaseName(), e.getRole());
- } catch (UserLoginNotFoundException e) {
- connexionStatusError = t("observe.storage.error.rest.user.required");
- } catch (UserPasswordNotFoundException e) {
- connexionStatusError = t("observe.storage.error.rest.pasword.required");
- } catch (Exception e) {
- connexionStatusError = e.getMessage();
- if (connexionStatusError == null || connexionStatusError.isEmpty()) {
- connexionStatusError = e.getClass().getName();
- }
- } finally {
- if (dataSource.isOpen()) {
- dataSource.close();
+ ui.getModel().setServerDataSourceConfiguration(null);
+ ui.getModel().setServerModified(false);
+ } else {
+ ui.getModel().setServerDataSourceConfiguration(ui.getServerConfigurations().getSelectedValue());
}
- }
-
- if (connexionStatusError == null) {
- UIHelper.displayInfo("Test de connexion", "Le connexion a été établie avec succès.");
- } else {
- UIHelper.displayWarning("Test de connexion", "Le test de connexion a échoué :\n" + connexionStatusError);
- }
- }
-
- public void testServer() {
-
- String connexionStatusError = null;
- ObserveDataSourceConfigurationRest config = new ObserveDataSourceConfigurationRest();
- String url = ui.getServerUrl().getText().trim();
- try {
- config.setServerUrl(new URL(url));
- } catch (MalformedURLException e) {
- connexionStatusError = t("observe.storage.error.badUrl", url);
- }
- config.setLogin(ui.getServerLogin().getText().trim());
- config.setPassword(ui.getServerPassword().getText().trim().toCharArray());
- String databaseName = ui.getServerDataBase().getText().trim();
- config.setOptionalDatabaseName(databaseName.isEmpty() ? null : databaseName);
-
- Version modelVersion = ObserveSwingApplicationContext.get().getConfig().getModelVersion();
- ObserveSwingDataSource dataSource = ObserveSwingApplicationContext.get().getDataSourcesManager().newDataSource(config);
- try {
-
- PingService pingService = dataSource.getPingService();
-
- Version modelServerVersion = pingService.getModelVersion();
+ });
- if (!modelVersion.equals(modelServerVersion)) {
+ ui.getModel().addPropertyChangeListener("serverDataSourceConfigurations", evt -> {
- connexionStatusError = t("observe.storage.error.serverVersionMismatch", modelServerVersion, modelVersion);
+ List newValue = (List) evt.getNewValue();
+ DefaultListModel<ServerDataSourceConfiguration> model = (DefaultListModel<ServerDataSourceConfiguration>) ui.getServerConfigurations().getModel();
+ model.clear();
+ for (Object ServerDataSourceConfiguration : newValue) {
+ model.addElement((ServerDataSourceConfiguration) ServerDataSourceConfiguration);
}
- if (connexionStatusError == null) {
+ });
- ObserveDataSourceInformation dataSourceInformation = dataSource.checkCanConnect();
- Version versionDataSource = dataSourceInformation.getVersion();
+ ui.getModel().addPropertyChangeListener("serverDataSourceConfiguration", evt -> {
- // en mise a jour de la base on ne test pas la version
- if (!modelVersion.equals(versionDataSource)) {
+ ServerDataSourceConfiguration oldValue = (ServerDataSourceConfiguration) evt.getOldValue();
- connexionStatusError = t("observe.storage.error.dbVersionMismatch", versionDataSource, modelVersion);
+ if (ui.getModel().getServerDataSourceConfiguration() == null) {
+ ui.getServerContentPanel().remove(ui.getServerForm());
+ ui.getServerContentPanel().add(ui.getNoServerSelected(), BorderLayout.CENTER);
+ UIHelper.askFocus(ui.getCreateAction());
+ } else {
+ if (oldValue == null) {
+ ui.getServerForm().setVisible(true);
+ ui.getServerContentPanel().remove(ui.getNoServerSelected());
+ ui.getServerContentPanel().add(ui.getServerForm(), BorderLayout.CENTER);
+ UIHelper.askFocus(ui.getServerName());
}
+ ui.getModel().setServerModified(false);
}
+ SwingUtilities.invokeLater(ui::repaint);
+ });
- } catch (UnknownObserveWebUserException e) {
- connexionStatusError = t("observe.storage.error.rest.user.unknown", e.getUserLogin());
- } catch (BadObserveWebUserPasswordException e) {
- connexionStatusError = t("observe.storage.error.rest.password.bad", e.getUserLogin());
- } catch (UnknownObserveWebUserForDatabaseException e) {
- connexionStatusError = t("observe.storage.error.rest.database.unknownForUser", e.getDatabaseName(), e.getRole());
- } catch (UserLoginNotFoundException e) {
- connexionStatusError = t("observe.storage.error.rest.user.required");
- } catch (UserPasswordNotFoundException e) {
- connexionStatusError = t("observe.storage.error.rest.pasword.required");
- } catch (Exception e) {
- connexionStatusError = e.getMessage();
- if (connexionStatusError == null || connexionStatusError.isEmpty()) {
- connexionStatusError = e.getClass().getName();
- }
- } finally {
- if (dataSource.isOpen()) {
- dataSource.close();
- }
- }
+ UIHelper.askFocus(ui.getCreateAction());
- if (connexionStatusError == null) {
- UIHelper.displayInfo("Test de connexion", "Le connexion a été établie avec succès.");
- } else {
- UIHelper.displayWarning("Test de connexion", "Le test de connexion a échoué :\n" + connexionStatusError);
- }
}
- public void saveRemote() {
-
- RemoteDataSourceConfiguration remoteDataSourceConfiguration = ui.getModel().getRemoteDataSourceConfiguration();
-
- remoteDataSourceConfiguration.setName(ui.getRemoteName().getText().trim());
- remoteDataSourceConfiguration.setUrl(ui.getRemoteUrl().getText().trim());
- remoteDataSourceConfiguration.setLogin(ui.getRemoteLogin().getText().trim());
- remoteDataSourceConfiguration.setPassword(ui.getRemotePassword().getText().trim());
- remoteDataSourceConfiguration.setUseSsl(ui.getRemoteUseSsl().isSelected());
-
- ObserveSwingApplicationContext.get().getConfig().updateRemoteDataSourceConfiguration(remoteDataSourceConfiguration);
+ protected void init(InputMap inputMap, ActionMap actionMap, AbstractButton editor) {
+ String actionId = (String) editor.getClientProperty(OBSERVE_ACTION);
+ if (actionId == null) {
- ui.getModel().setRemoteDataSourceConfiguration(null);
- ui.getModel().setRemoteDataSourceConfiguration(remoteDataSourceConfiguration);
- ui.getModel().setRemoteModified(false);
-
- }
-
- public void deleteRemote() {
-
- int response = UIHelper.askUser(t("observe.storage.presets.delete.title"),
- t("observe.storage.presets.delete.message"),
- JOptionPane.QUESTION_MESSAGE,
- new Object[]{t("observe.action.delete"), t("observe.action.cancel")},
- 0);
- boolean delete = response == 0;
-
- if (delete) {
- RemoteDataSourceConfiguration remoteDataSourceConfiguration = ui.getModel().getRemoteDataSourceConfiguration();
- List<RemoteDataSourceConfiguration> remoteDataSourceConfigurations = new ArrayList<>(ui.getModel().getRemoteDataSourceConfigurations());
- remoteDataSourceConfigurations.remove(remoteDataSourceConfiguration);
- ui.getModel().setRemoteDataSourceConfigurations(remoteDataSourceConfigurations);
- ObserveSwingApplicationContext.get().getConfig().removeRemoteDataSourceConfiguration(remoteDataSourceConfiguration);
- ui.getModel().setRemoteDataSourceConfiguration(null);
+ return;
}
- }
- public void saveServer() {
+ UIActionSupport action = (UIActionSupport) actionMap.get(actionId);
+ Objects.requireNonNull(action, "action [" + actionId + "] not found for ui " + ui.getClass().getName());
- ServerDataSourceConfiguration serverDataSourceConfiguration = ui.getModel().getServerDataSourceConfiguration();
-
- serverDataSourceConfiguration.setName(ui.getServerName().getText().trim());
- serverDataSourceConfiguration.setUrl(ui.getServerUrl().getText().trim());
- serverDataSourceConfiguration.setLogin(ui.getServerLogin().getText().trim());
- serverDataSourceConfiguration.setPassword(ui.getServerPassword().getText().trim());
- String databaseName = ui.getServerDataBase().getText().trim();
- serverDataSourceConfiguration.setDatabaseName(databaseName.isEmpty() ? null : databaseName);
-
- ObserveSwingApplicationContext.get().getConfig().updateServerDataSourceConfiguration(serverDataSourceConfiguration);
-
- ui.getModel().setServerDataSourceConfiguration(null);
- ui.getModel().setServerDataSourceConfiguration(serverDataSourceConfiguration);
- ui.getModel().setServerModified(false);
-
- }
-
- public void deleteServer() {
-
- int response = UIHelper.askUser(t("observe.storage.presets.delete.title"),
- t("observe.storage.presets.delete.message"),
- JOptionPane.QUESTION_MESSAGE,
- new Object[]{t("observe.action.delete"), t("observe.action.cancel")},
- 0
- );
- boolean delete = response == 0;
-
- if (delete) {
- ServerDataSourceConfiguration serverDataSourceConfiguration = ui.getModel().getServerDataSourceConfiguration();
- List<ServerDataSourceConfiguration> serverDataSourceConfigurations = new ArrayList<>(ui.getModel().getServerDataSourceConfigurations());
- serverDataSourceConfigurations.remove(serverDataSourceConfiguration);
- ui.getModel().setServerDataSourceConfigurations(serverDataSourceConfigurations);
- ObserveSwingApplicationContext.get().getConfig().removeServerDataSourceConfiguration(serverDataSourceConfiguration);
- ui.getModel().setServerDataSourceConfiguration(null);
+ if (log.isDebugEnabled()) {
+ log.debug("init common action " + actionId);
}
- }
- public void quit() {
-
- ObserveMainUI mainUI = ObserveSwingApplicationContext.get().getMainUI();
- mainUI.getDataSourcePresets().setContentContainer(new JPanel());
- if (ObserveSwingApplicationContext.get().getDataSourcesManager().getMainDataSource() == null) {
- mainUI.getModel().setMode(ObserveUIMode.NO_DB);
- } else {
- mainUI.getModel().setMode(ObserveUIMode.DB);
- }
+ action.initForMainUi(editor, inputMap, actionMap);
+ editor.putClientProperty(UIActionSupport.CLIENT_PROPERTY_UI, ui);
}
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIModel.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIModel.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/storage/presets/RemotePresetsUIModel.java
@@ -66,8 +66,9 @@ public class RemotePresetsUIModel extends AbstractBean {
}
public void setRemoteDataSourceConfiguration(RemoteDataSourceConfiguration remoteDataSourceConfiguration) {
+ RemoteDataSourceConfiguration oldValue = getRemoteDataSourceConfiguration();
this.remoteDataSourceConfiguration = remoteDataSourceConfiguration;
- firePropertyChange("remoteDataSourceConfiguration", null, remoteDataSourceConfiguration);
+ firePropertyChange("remoteDataSourceConfiguration", oldValue, remoteDataSourceConfiguration);
}
public ServerDataSourceConfiguration getServerDataSourceConfiguration() {
@@ -75,8 +76,9 @@ public class RemotePresetsUIModel extends AbstractBean {
}
public void setServerDataSourceConfiguration(ServerDataSourceConfiguration serverDataSourceConfiguration) {
+ ServerDataSourceConfiguration oldValue = getServerDataSourceConfiguration();
this.serverDataSourceConfiguration = serverDataSourceConfiguration;
- firePropertyChange("serverDataSourceConfiguration", null, serverDataSourceConfiguration);
+ firePropertyChange("serverDataSourceConfiguration", oldValue, serverDataSourceConfiguration);
}
public boolean isRemoteModified() {
=====================================
client/src/main/resources/i18n/client_en_GB.properties
=====================================
--- a/client/src/main/resources/i18n/client_en_GB.properties
+++ b/client/src/main/resources/i18n/client_en_GB.properties
@@ -71,7 +71,9 @@ observe.action.delete.activity.tip=Delete activity
observe.action.delete.entry.tip=Delete entry in edition
observe.action.delete.floatingObject.tip=Delete floating object
observe.action.delete.maree.tip=Delete trip
+observe.action.delete.remote.tip=Delete remote configuration
observe.action.delete.route.tip=Delete route
+observe.action.delete.server.tip=Delete server configuration
observe.action.delete.set.tip=Delete set
observe.action.delete.tip=Delete
observe.action.detail=Details
@@ -108,6 +110,8 @@ observe.action.modify=Modify
observe.action.new.entry=Add
observe.action.new.entry.tip=Create a new entry
observe.action.open.screen=Opening screen <%1$s>
+observe.action.presets.create=New configuration
+observe.action.presets.create.tip=Create a new configuration
observe.action.quit=Quit
observe.action.quit.tip=Quit manager
observe.action.reload.application=reload application
@@ -120,12 +124,17 @@ observe.action.reloadResources=Reload i18n
observe.action.reloadResources.tip=Reload i18n translations
observe.action.remove.floatingObjectReference=Remove as reference
observe.action.remove.floatingObjectReference.tip=Remove as reference
+observe.action.reset=Reset
+observe.action.reset.remote.tip=Cancel modifications on remote configuration
+observe.action.reset.server.tip=Cancel modifications on server configuration
observe.action.resetComment.tip=Reset comment
observe.action.restart.application=Restart
observe.action.restart.application.tip=Restart application
observe.action.save=Save
observe.action.save.all.tip=Save all modifications
observe.action.save.entry.tip=Save modifications
+observe.action.save.remote.tip=Save remote configuration
+observe.action.save.server.tip=Save server configuration
observe.action.save.tip=Save modifications
observe.action.save.to.file=Backup storage
observe.action.save.to.file.tip=Make a backup of opened storage
@@ -148,6 +157,8 @@ observe.action.stop.server.mode.tip=Stop server mode on local database
observe.action.storage.applyAction=Apply
observe.action.test.remote=Test connexion
observe.action.test.remote.tip=Click here to validate remote connexion
+observe.action.test.server=Test connexion
+observe.action.test.server.tip=Click here to validate server connexion
observe.action.toFullScreen=Full screen mode
observe.action.toFullScreen.tip=Reload application in full screen mode
observe.action.toWindowScreen=Window screen mode
@@ -1488,7 +1499,7 @@ observe.storage.error.badUrl=The url format is not valid (%s)
observe.storage.error.dbVersionMismatch=Version of remote database (%s) is not compliant with the model version (%s)
observe.storage.error.rest.database.unknownForUser=Database "%s" is not defined for user "%s"
observe.storage.error.rest.password.bad=Password is not valid
-observe.storage.error.rest.pasword.required=Password is mandatory
+observe.storage.error.rest.password.required=Password is mandatory
observe.storage.error.rest.user.required=User login is mandatory
observe.storage.error.rest.user.unknown=User "%s" is not defined on server
observe.storage.error.serverVersionMismatch=Remote server version (%s) is not compliant with the client version (%s)
=====================================
client/src/main/resources/i18n/client_es_ES.properties
=====================================
--- a/client/src/main/resources/i18n/client_es_ES.properties
+++ b/client/src/main/resources/i18n/client_es_ES.properties
@@ -71,7 +71,9 @@ observe.action.delete.activity.tip=Eliminar la actividad
observe.action.delete.entry.tip=Cancelar la edición de la entrada actual
observe.action.delete.floatingObject.tip=Eliminar el objeto flotante actual
observe.action.delete.maree.tip=Eliminar la marea
+observe.action.delete.remote.tip=Delete remote configuration \#TODO
observe.action.delete.route.tip=Eliminar la ruta
+observe.action.delete.server.tip=Delete server configuration \#TODO
observe.action.delete.set.tip=Eliminar el lance
observe.action.delete.tip=Eliminar
observe.action.detail=Ver detalles
@@ -108,6 +110,8 @@ observe.action.modify=Modificar
observe.action.new.entry=Nuevo
observe.action.new.entry.tip=Crear una nueva entrada
observe.action.open.screen=Abrir pantalla <%1$s>
+observe.action.presets.create=Nouvelle configuration \#TODO
+observe.action.presets.create.tip=Créer une nouvelle configuration \#TODO
observe.action.quit=Quitter \#TODO
observe.action.quit.tip=Quitter le gestionnaire \#TODO
observe.action.reload.application=Reinicializar la aplicación
@@ -120,12 +124,17 @@ observe.action.reloadResources=Recargar las traducciones
observe.action.reloadResources.tip=Recargar las traducciones i18n
observe.action.remove.floatingObjectReference=Supprimer la référence \#TODO
observe.action.remove.floatingObjectReference.tip=Supprimer la référence \#TODO
+observe.action.reset=Reset \#TODO
+observe.action.reset.remote.tip=Reset remote configuration \#TODO
+observe.action.reset.server.tip=Cancel modifications on server configuration \#TODO
observe.action.resetComment.tip=Supprimer le commentaire \#TODO
observe.action.restart.application=Reiniciar
observe.action.restart.application.tip=Reiniciar la aplicación
observe.action.save=Grabar
observe.action.save.all.tip=Guardar todas las modificaciones
observe.action.save.entry.tip=Guardar la edición en curso
+observe.action.save.remote.tip=Save remote configuration \#TODO
+observe.action.save.server.tip=Save server configuration \#TODO
observe.action.save.tip=Guardar las modificaciones
observe.action.save.to.file=Guardar la base de datos
observe.action.save.to.file.tip=Hacer una copia de seguridad de la base de datos abierta
@@ -148,6 +157,8 @@ observe.action.stop.server.mode.tip=Parar el modo servidor de la base local
observe.action.storage.applyAction=Aplicar
observe.action.test.remote=Comprobar la conexión
observe.action.test.remote.tip=Pulsar para comprobar la conexión con el servidor remoto
+observe.action.test.server=Comprobar la conexión
+observe.action.test.server.tip=Pulsar para comprobar la conexión con el servidor \#TODO
observe.action.toFullScreen=Mode plein écran \#TODO
observe.action.toFullScreen.tip=Recharcher l'application en mode plein écran \#TODO
observe.action.toWindowScreen=Mode fenêtre \#TODO
@@ -1488,7 +1499,7 @@ observe.storage.error.badUrl=Error en el formato de la dirección (URL) %s
observe.storage.error.dbVersionMismatch=La versión de la base remota (%s) no es compatible con la versión del modelo (%s).
observe.storage.error.rest.database.unknownForUser=La base de datos "%s" no está configurada para el usuario "%s"
observe.storage.error.rest.password.bad=Le contraseña es invalida
-observe.storage.error.rest.pasword.required=Le contraseña es obligatoria
+observe.storage.error.rest.password.required=Le contraseña es obligatoria
observe.storage.error.rest.user.required=El usuario es obligatorio
observe.storage.error.rest.user.unknown=El usuario "%s" no es conocido del servidor
observe.storage.error.serverVersionMismatch=La versión del servidor remoto (%s) no es compatible con la versión del modelo (%s)
=====================================
client/src/main/resources/i18n/client_fr_FR.properties
=====================================
--- a/client/src/main/resources/i18n/client_fr_FR.properties
+++ b/client/src/main/resources/i18n/client_fr_FR.properties
@@ -71,7 +71,9 @@ observe.action.delete.activity.tip=Supprimer l'activité
observe.action.delete.entry.tip=Supprimer l'entrée en cours d'édition
observe.action.delete.floatingObject.tip=Supprimer l'objet flottant courant
observe.action.delete.maree.tip=Supprimer la marée
+observe.action.delete.remote.tip=Supprimer la configuration
observe.action.delete.route.tip=Supprimer la route
+observe.action.delete.server.tip=Supprimer la configuration
observe.action.delete.set.tip=Supprimer la calée
observe.action.delete.tip=Supprimer
observe.action.detail=Voir les détails
@@ -108,6 +110,8 @@ observe.action.modify=Modifier
observe.action.new.entry=Nouveau
observe.action.new.entry.tip=Créer une nouvelle entrée
observe.action.open.screen=Ouverture de l'écran <%1$s>
+observe.action.presets.create=Nouvelle configuration
+observe.action.presets.create.tip=Créer une nouvelle configuration
observe.action.quit=Quitter
observe.action.quit.tip=Quitter le gestionnaire
observe.action.reload.application=Redémarrer l'application
@@ -120,12 +124,17 @@ observe.action.reloadResources=Ressources par défaut
observe.action.reloadResources.tip=Rétablir les ressources par défaut (toute modification sera perdue)
observe.action.remove.floatingObjectReference=Supprimer la référence
observe.action.remove.floatingObjectReference.tip=Supprimer la référence
+observe.action.reset=Réinitialiser
+observe.action.reset.remote.tip=Annuler les modifications
+observe.action.reset.server.tip=Annuler les modifications
observe.action.resetComment.tip=Supprimer le commentaire
observe.action.restart.application=Redémarrer
observe.action.restart.application.tip=Redémarrer l'application
observe.action.save=Enregistrer
observe.action.save.all.tip=Sauver toutes les modifications
observe.action.save.entry.tip=Sauver l'entrée en cours d'édition
+observe.action.save.remote.tip=Enregister la configuration
+observe.action.save.server.tip=Enregister la configuration
observe.action.save.tip=Sauver les modifications
observe.action.save.to.file=Sauver la base
observe.action.save.to.file.tip=Effectuer une sauvegarde de la base ouverte
@@ -148,6 +157,8 @@ observe.action.stop.server.mode.tip=Arrêter le mode serveur de la base locale
observe.action.storage.applyAction=Appliquer
observe.action.test.remote=Valider la connexion
observe.action.test.remote.tip=Cliquer pour valider la connexion au serveur distant
+observe.action.test.server=Valider la connexion
+observe.action.test.server.tip=Cliquer pour valider la connexion au serveur
observe.action.toFullScreen=Mode plein écran
observe.action.toFullScreen.tip=Recharcher l'application en mode plein écran
observe.action.toWindowScreen=Mode fenêtre
@@ -1488,7 +1499,7 @@ observe.storage.error.badUrl=Erreur dans le format de l'URL %s
observe.storage.error.dbVersionMismatch=La version de la base distante (%s) n'est pas compatible avec la version du modèle (%s)
observe.storage.error.rest.database.unknownForUser=La base de données "%s" n'est pas définie pour l'utilisateur "%s"
observe.storage.error.rest.password.bad=Le mot de passe est invalide
-observe.storage.error.rest.pasword.required=Le mot de passe est obligatoire
+observe.storage.error.rest.password.required=Le mot de passe est obligatoire
observe.storage.error.rest.user.required=L'utilisateur est obligatoire
observe.storage.error.rest.user.unknown=L'utilisateur "%s" est inconnu sur le serveur
observe.storage.error.serverVersionMismatch=La version du serveur distant (%s) n'est pas compatible avec la version du client (%s)
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/08505b7ca91cbf74a9de7f199a1…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/08505b7ca91cbf74a9de7f199a1…
You're receiving this email because of your account on gitlab.com.
1
0