This is an automated email from the git hooks/post-receive script. New commit to branch feature/8124-VerifConfigurationSource in repository tutti. See https://gitlab.nuiton.org/codelutin/tutti.git commit d0a63e4f5e1c37b9cd377698c129d015f96e5a67 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Mon Mar 14 17:40:29 2016 +0100 A l'utilisation d'un source distante, autoriser le mode serveur en plus du mode base distante (see #8124). --- .../observe/ObserveSwingApplicationContext.java | 15 +++++++------- .../observe/ui/actions/ChangeStorageAction.java | 13 +++++++----- .../ird/observe/ui/storage/StorageUILauncher.java | 23 ++++++++++++---------- 3 files changed, 29 insertions(+), 22 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java index e523539..636449c 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java @@ -100,8 +100,10 @@ import java.io.Closeable; import java.io.File; import java.io.IOException; import java.util.Arrays; +import java.util.EnumSet; import java.util.List; import java.util.Locale; +import java.util.Set; import java.util.UUID; import static org.nuiton.i18n.I18n.n; @@ -663,24 +665,23 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im log.debug("response : " + reponse); } - DbMode dbMode = null; + Set<DbMode> dbModes = EnumSet.noneOf(DbMode.class); String title = null; if (reponse != JOptionPane.CLOSED_OPTION && reponse < 2) { if (reponse == 1) { // creation de la base locale - dbMode = DbMode.CREATE_LOCAL; + dbModes.add(DbMode.CREATE_LOCAL); title = n("observe.title.create.local.db"); } else { // connexion à une base distante - dbMode = DbMode.USE_REMOTE; + dbModes.add(DbMode.USE_REMOTE); + dbModes.add(DbMode.USE_SERVER); title = n("observe.title.load.remote.db"); } } - if (dbMode != null) { -// uiHandler.launchChangeStorage(getObserveMainUI(), dbMode, title); - - new ChangeStorageAction(getObserveMainUI(), dbMode, title).run(); + if (! dbModes.isEmpty()) { + new ChangeStorageAction(getObserveMainUI(), dbModes, title).run(); } } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/ChangeStorageAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/ChangeStorageAction.java index 7e9a1d7..8a57573 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/ChangeStorageAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/ChangeStorageAction.java @@ -32,6 +32,9 @@ import org.apache.commons.logging.LogFactory; import javax.swing.AbstractAction; import java.awt.event.ActionEvent; +import java.util.EnumSet; +import java.util.Set; +import java.util.stream.Collectors; import static org.nuiton.i18n.I18n.t; @@ -51,7 +54,7 @@ public class ChangeStorageAction extends AbstractAction { private final ObserveMainUI ui; - private final DbMode dbMode; + private final Set<DbMode> dbModes; private final String title; @@ -59,11 +62,11 @@ public class ChangeStorageAction extends AbstractAction { this(ui, null, null); } - public ChangeStorageAction(ObserveMainUI ui, DbMode dbMode, String title) { + public ChangeStorageAction(ObserveMainUI ui, Set<DbMode> dbModes, String title) { super(t("observe.action.change.storage"), SwingUtil.getUIManagerActionIcon("db-change")); this.ui = ui; - this.dbMode = dbMode; + this.dbModes = dbModes == null ? EnumSet.noneOf(DbMode.class) : dbModes; this.title = title; putValue(SHORT_DESCRIPTION, t("observe.action.change.storage.tip")); putValue(MNEMONIC_KEY, (int) 'C'); @@ -83,10 +86,10 @@ public class ChangeStorageAction extends AbstractAction { if (canContinue) { if (log.isInfoEnabled()) { - log.info("Start change storage with dbMode: " + dbMode); + log.info("Start change storage with dbMode: " + dbModes.stream().map(DbMode::name).collect(Collectors.joining(", "))); } - StorageUILauncher.changeStorage(ui, ui, dbMode, t(title)); + StorageUILauncher.changeStorage(ui, ui, dbModes, t(title)); } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUILauncher.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUILauncher.java index 9e844ea..4e13da8 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUILauncher.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUILauncher.java @@ -31,11 +31,14 @@ import jaxx.runtime.JAXXObject; import jaxx.runtime.swing.wizard.BusyChangeListener; import jaxx.runtime.swing.wizard.WizardModel; import jaxx.runtime.swing.wizard.WizardUILancher; +import org.apache.commons.collections.CollectionUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import java.awt.Window; import java.util.Arrays; +import java.util.Set; +import java.util.stream.Collectors; import static org.nuiton.i18n.I18n.t; @@ -126,14 +129,14 @@ public class StorageUILauncher extends WizardUILancher<StorageStep, StorageUIMod * * @param rootContext le context applicatif * @param mainUI main ui - * @param mode le mode optionnel à utiliser + * @param modes les modes optionnel à utiliser * @param title le titre de la fenetre * @see StorageUIHandler * @see StorageUI */ public static void changeStorage(final JAXXContext rootContext, final Window mainUI, - final DbMode mode, + final Set<DbMode> modes, final String title) { new StorageUILauncher(rootContext, mainUI, title) { @@ -142,12 +145,12 @@ public class StorageUILauncher extends WizardUILancher<StorageStep, StorageUIMod protected void init(StorageUI ui) { super.init(ui); if (log.isDebugEnabled()) { - log.debug("Incoming dbmode : " + mode); + log.debug("Incoming dbmode : " + modes.stream().map(DbMode::name).collect(Collectors.joining(", "))); } StorageUIModel model = ui.getModel(); - if (mode != null) { + if (CollectionUtils.isNotEmpty(modes)) { if (log.isInfoEnabled()) { - log.info("will use incoming mode " + mode); + log.info("will use incoming mode " + modes.stream().map(DbMode::name).collect(Collectors.joining(", "))); } model.setExcludeSteps( @@ -157,13 +160,13 @@ public class StorageUILauncher extends WizardUILancher<StorageStep, StorageUIMod StorageStep.CONFIG_DATA, StorageStep.ROLES) ); - model.setCanCreateLocalService(DbMode.CREATE_LOCAL.equals(mode)); - model.setCanUseLocalService(DbMode.USE_LOCAL.equals(mode)); - model.setCanUseRemoteService(DbMode.USE_REMOTE.equals(mode)); - model.setCanUseServerService(DbMode.USE_SERVER.equals(mode)); + model.setCanCreateLocalService(modes.contains(DbMode.CREATE_LOCAL)); + model.setCanUseLocalService(modes.contains(DbMode.USE_LOCAL)); + model.setCanUseRemoteService(modes.contains(DbMode.USE_REMOTE)); + model.setCanUseServerService(modes.contains(DbMode.USE_SERVER)); model.updateUniverse(); - model.setDbMode(mode); + model.setDbMode(modes.stream().findFirst().get()); } else { ObserveSwingApplicationConfig config = -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.