branch develop updated (6e9e8f9 -> 3f02507)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository tutti. See http://git.codelutin.com/tutti.git from 6e9e8f9 fixes #6901: [TECH] Uniformisation du comportement des listes d'actions Merge branch 'feature/6901' into develop new 8b7bf60 ajout de l'option qui permet de ne pas faire une sauvegarde avant d'importer ou installer une base new b8eac0f ajout aussi d'un drapeau pour fermer sauvagemment la base new 3f02507 fixes #6902: [TECH] Ajouter une option pour pouvoir ne pas effectuer une sauvegarde avant chaque import de base Merge branch 'feature/6902' into develop The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 3f02507bbccfa7c50425c21fbb941ece22257ec0 Merge: 6e9e8f9 b8eac0f Author: Tony CHEMIT <chemit@codelutin.com> Date: Sat Apr 4 10:38:57 2015 +0200 fixes #6902: [TECH] Ajouter une option pour pouvoir ne pas effectuer une sauvegarde avant chaque import de base Merge branch 'feature/6902' into develop commit b8eac0f758c09d36435f0091f4a6db50bcc40fa1 Author: Tony CHEMIT <chemit@codelutin.com> Date: Sat Apr 4 10:38:52 2015 +0200 ajout aussi d'un drapeau pour fermer sauvagemment la base commit 8b7bf6080930da65f3f7136e248006aefe5e738d Author: Tony CHEMIT <chemit@codelutin.com> Date: Sat Apr 4 10:20:22 2015 +0200 ajout de l'option qui permet de ne pas faire une sauvegarde avant d'importer ou installer une base Summary of changes: .../java/fr/ifremer/tutti/TuttiConfiguration.java | 5 ++ .../fr/ifremer/tutti/TuttiConfigurationOption.java | 6 ++ .../tutti/persistence/TuttiPersistence.java | 2 + .../tutti/persistence/TuttiPersistenceImpl.java | 31 +++++++-- .../persistence/TuttiPersistenceNoDbImpl.java | 5 ++ .../i18n/tutti-persistence_en_GB.properties | 1 + .../i18n/tutti-persistence_fr_FR.properties | 1 + .../ifremer/tutti/service/PersistenceService.java | 5 ++ .../ifremer/tutti/service/ServiceDbResource.java | 17 +++-- .../swing/content/config/TuttiConfigUIHandler.java | 3 + .../swing/content/db/actions/ReimportDbAction.java | 75 +++++++++++++++------- .../content/db/actions/ReinstallDbAction.java | 73 +++++++++++++-------- .../resources/i18n/tutti-ui-swing_en_GB.properties | 1 + .../resources/i18n/tutti-ui-swing_fr_FR.properties | 1 + 14 files changed, 167 insertions(+), 59 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository tutti. See http://git.codelutin.com/tutti.git commit 8b7bf6080930da65f3f7136e248006aefe5e738d Author: Tony CHEMIT <chemit@codelutin.com> Date: Sat Apr 4 10:20:22 2015 +0200 ajout de l'option qui permet de ne pas faire une sauvegarde avant d'importer ou installer une base --- .../java/fr/ifremer/tutti/TuttiConfiguration.java | 5 ++ .../fr/ifremer/tutti/TuttiConfigurationOption.java | 6 ++ .../i18n/tutti-persistence_en_GB.properties | 1 + .../i18n/tutti-persistence_fr_FR.properties | 1 + .../swing/content/config/TuttiConfigUIHandler.java | 3 + .../swing/content/db/actions/ReimportDbAction.java | 67 ++++++++++++++-------- .../content/db/actions/ReinstallDbAction.java | 67 ++++++++++++++-------- .../resources/i18n/tutti-ui-swing_en_GB.properties | 1 + .../resources/i18n/tutti-ui-swing_fr_FR.properties | 1 + 9 files changed, 104 insertions(+), 48 deletions(-) diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfiguration.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfiguration.java index 4b10a48..7e809b3 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfiguration.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfiguration.java @@ -434,6 +434,11 @@ public class TuttiConfiguration extends ApplicationConfiguration { return result; } + public boolean isImportDbSkipBackup() { + boolean result = applicationConfig.getOptionAsBoolean(TuttiConfigurationOption.IMPORT_DB_SKIP_BACKUP.getKey()); + return result; + } + @Override public String getApplicationName() { return "Allegro Campagne"; diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfigurationOption.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfigurationOption.java index 06f4747..acca259 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfigurationOption.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfigurationOption.java @@ -259,6 +259,12 @@ public enum TuttiConfigurationOption implements ConfigOptionDef { Boolean.FALSE.toString(), Boolean.class, false), + IMPORT_DB_SKIP_BACKUP( + "tutti.db.import.skipBackup", + n("tutti.config.option.db.import.skipBackup.description"), + Boolean.FALSE.toString(), + Boolean.class, + false), SAMPLE_CATEGORY_MODEL( "tutti.persistence.SampleCategoryModel", diff --git a/tutti-persistence/src/main/resources/i18n/tutti-persistence_en_GB.properties b/tutti-persistence/src/main/resources/i18n/tutti-persistence_en_GB.properties index 0cfe9dc..cbfbec1 100644 --- a/tutti-persistence/src/main/resources/i18n/tutti-persistence_en_GB.properties +++ b/tutti-persistence/src/main/resources/i18n/tutti-persistence_en_GB.properties @@ -12,6 +12,7 @@ tutti.config.option.basedir.description= tutti.config.option.cruiseId.description= tutti.config.option.csv.separator.description= tutti.config.option.data.directory.description= +tutti.config.option.db.import.skipBackup.description= tutti.config.option.export.backup.directory.description= tutti.config.option.export.countryId.description= tutti.config.option.genericFormat.import.skipBackup.description= diff --git a/tutti-persistence/src/main/resources/i18n/tutti-persistence_fr_FR.properties b/tutti-persistence/src/main/resources/i18n/tutti-persistence_fr_FR.properties index c1a6336..49dae1d 100644 --- a/tutti-persistence/src/main/resources/i18n/tutti-persistence_fr_FR.properties +++ b/tutti-persistence/src/main/resources/i18n/tutti-persistence_fr_FR.properties @@ -8,6 +8,7 @@ tutti.config.option.basedir.description=Répertoire principale tutti.config.option.cruiseId.description=Identifiant de la dernière campagne utilisée tutti.config.option.csv.separator.description=Caractère séparateur pour les import / export de fichier au format csv. tutti.config.option.data.directory.description=Répertoire de données de l'application. Vous pouvez utiliser l'expression ${tutti.data.directory} pour le référence dans d'autres propriétés de configuration (ex\: ${tutti.data.directory}/tmp). +tutti.config.option.db.import.skipBackup.description=Pour ne pas effectuer une sauvegarde avant un import de base tutti.config.option.export.backup.directory.description=Répertoire où sont enregistrées les exports génériques tutti.config.option.export.countryId.description=L'id du pays à utiliser pour les exports (il s'agit de la valeur LOCATION.ID). tutti.config.option.genericFormat.import.skipBackup.description=Pour ne pas effectuer une sauvegarde avant chaque import générique diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java index aa6f6e8..7479c04 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java @@ -146,6 +146,9 @@ public class TuttiConfigUIHandler extends AbstractTuttiUIHandler<TuttiUIContext, .addOption(TuttiConfigurationOption.GENERIC_FORMAT_IMPORT_SKIP_BACKUP) .setOptionShortLabel(t("tutti.config.option.ui.genericFormat.import.skipBackup.shortLabel")) + .addOption(TuttiConfigurationOption.IMPORT_DB_SKIP_BACKUP) + .setOptionShortLabel(t("tutti.config.option.ui.db.import.skipBackup.shortLabel")) + ; TuttiUIContext context = getContext(); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReimportDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReimportDbAction.java index 31e8372..37ef867 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReimportDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReimportDbAction.java @@ -25,8 +25,10 @@ package fr.ifremer.tutti.ui.swing.content.db.actions; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.ui.swing.RunTutti; -import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.nuiton.jaxx.application.ApplicationIOUtil; import java.io.File; @@ -42,6 +44,9 @@ import static org.nuiton.i18n.I18n.t; */ public class ReimportDbAction extends AbstractMainUITuttiAction { + /** Logger. */ + private static final Log log = LogFactory.getLog(ReimportDbAction.class); + protected File backupFile; protected File importFile; @@ -67,30 +72,41 @@ public class ReimportDbAction extends AbstractMainUITuttiAction { if (getModel().isDbExist()) { - displayInfoMessage( - t("tutti.dbManager.title.backup.db"), - t("tutti.dbManager.action.importDb.backup.db") - ); + if (getConfig().isImportDbSkipBackup()) { - // choose backup file - backupFile = saveFile( - getConfig().getDbBackupDirectory(), - "tutti-db-" + ExportDbAction.df.format(new Date()), - "zip", - t("tutti.dbManager.title.choose.dbExportFile"), - t("tutti.dbManager.action.chooseDbExportFile"), - "^.*\\.zip", t("tutti.common.file.zip") - ); + if (log.isInfoEnabled()) { + log.info("Skip backup before import, lucky you..."); + } - if (backupFile == null) { + } else { - displayWarningMessage( + displayInfoMessage( t("tutti.dbManager.title.backup.db"), - t("tutti.dbManager.action.importdb.no.backup.db.choosen") + t("tutti.dbManager.action.importDb.backup.db") ); - doAction = false; + // choose backup file + backupFile = saveFile( + getConfig().getDbBackupDirectory(), + "tutti-db-" + ExportDbAction.df.format(new Date()), + "zip", + t("tutti.dbManager.title.choose.dbExportFile"), + t("tutti.dbManager.action.chooseDbExportFile"), + "^.*\\.zip", t("tutti.common.file.zip") + ); + + if (backupFile == null) { + + displayWarningMessage( + t("tutti.dbManager.title.backup.db"), + t("tutti.dbManager.action.importdb.no.backup.db.choosen") + ); + + doAction = false; + } + } + } if (doAction && importFile == null) { @@ -116,7 +132,7 @@ public class ReimportDbAction extends AbstractMainUITuttiAction { if (doAction) { ProgressionModel progressionModel = new ProgressionModel(); - progressionModel.setTotal(3); + progressionModel.setTotal(3 + (backupFile == null ? 0 : 1)); setProgressionModel(progressionModel); getContext().getPersistenceService().checkImportStructure(importFile); @@ -133,8 +149,8 @@ public class ReimportDbAction extends AbstractMainUITuttiAction { @Override public void doAction() throws Exception { + Preconditions.checkNotNull(importFile); - Preconditions.checkNotNull(backupFile); ProgressionModel progressionModel = getProgressionModel(); @@ -142,9 +158,13 @@ public class ReimportDbAction extends AbstractMainUITuttiAction { progressionModel.increments(t("tutti.reimport.step.closeDb", jdbcUrl)); getContext().closePersistenceService(); - // backup db - progressionModel.increments(t("tutti.reimport.step.backupDb", backupFile)); - getContext().getPersistenceService().exportDb(backupFile); + if (backupFile != null) { + + // backup db + progressionModel.increments(t("tutti.reimport.step.backupDb", backupFile)); + getContext().getPersistenceService().exportDb(backupFile); + + } // clean db context getContext().clearDbContext(); @@ -161,6 +181,7 @@ public class ReimportDbAction extends AbstractMainUITuttiAction { // restart application progressionModel.increments(t("tutti.reimport.step.reloadApplication")); RunTutti.closeTutti(getHandler(), RunTutti.RESTART_EXIT_CODE); + } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReinstallDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReinstallDbAction.java index f71874a..2c8c0eb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReinstallDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReinstallDbAction.java @@ -22,12 +22,13 @@ package fr.ifremer.tutti.ui.swing.content.db.actions; * #L% */ -import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.ui.swing.RunTutti; import fr.ifremer.tutti.ui.swing.TuttiUIContext; -import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.nuiton.jaxx.application.ApplicationIOUtil; import java.io.File; @@ -43,6 +44,9 @@ import static org.nuiton.i18n.I18n.t; */ public class ReinstallDbAction extends AbstractMainUITuttiAction { + /** Logger. */ + private static final Log log = LogFactory.getLog(ReinstallDbAction.class); + protected File backupFile; protected String jdbcUrl; @@ -74,37 +78,48 @@ public class ReinstallDbAction extends AbstractMainUITuttiAction { if (getModel().isDbExist()) { - displayInfoMessage( - t("tutti.dbManager.title.backup.db"), - t("tutti.dbManager.action.installDb.backup.db") - ); + if (getConfig().isImportDbSkipBackup()) { - // choose backup file - backupFile = saveFile( - getConfig().getDbBackupDirectory(), - "tutti-db-" + ExportDbAction.df.format(new Date()), - "zip", - t("tutti.dbManager.title.choose.dbExportFile"), - t("tutti.dbManager.action.chooseDbExportFile"), - "^.*\\.zip", t("tutti.common.file.zip") - ); + if (log.isInfoEnabled()) { + log.info("Skip backup before import, lucky you..."); + } - if (backupFile == null) { + } else { - displayWarningMessage( + displayInfoMessage( t("tutti.dbManager.title.backup.db"), - t("tutti.dbManager.action.installDb.no.backup.db.choosen") + t("tutti.dbManager.action.installDb.backup.db") ); - doAction = false; + // choose backup file + backupFile = saveFile( + getConfig().getDbBackupDirectory(), + "tutti-db-" + ExportDbAction.df.format(new Date()), + "zip", + t("tutti.dbManager.title.choose.dbExportFile"), + t("tutti.dbManager.action.chooseDbExportFile"), + "^.*\\.zip", t("tutti.common.file.zip") + ); + + if (backupFile == null) { + + displayWarningMessage( + t("tutti.dbManager.title.backup.db"), + t("tutti.dbManager.action.installDb.no.backup.db.choosen") + ); + + doAction = false; + } + } + } } if (doAction) { ProgressionModel progressionModel = new ProgressionModel(); - progressionModel.setTotal(3); + progressionModel.setTotal(3 + (backupFile == null ? 0 : 1)); setProgressionModel(progressionModel); } return doAction; @@ -113,17 +128,19 @@ public class ReinstallDbAction extends AbstractMainUITuttiAction { @Override public void doAction() { - Preconditions.checkNotNull(backupFile); - ProgressionModel progressionModel = getProgressionModel(); // close db progressionModel.increments(t("tutti.reinstallDb.step.closeDb", jdbcUrl)); getContext().closePersistenceService(); - // backup db - progressionModel.increments(t("tutti.reinstallDb.step.backupDb", backupFile)); - getContext().getPersistenceService().exportDb(backupFile); + if (backupFile != null) { + + // backup db + progressionModel.increments(t("tutti.reinstallDb.step.backupDb", backupFile)); + getContext().getPersistenceService().exportDb(backupFile); + + } // clean db context getContext().clearDbContext(); diff --git a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties index d9daf42..6861de9 100644 --- a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties +++ b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties @@ -166,6 +166,7 @@ tutti.config.option.ui.color.speciesOrBenthosUnsortedComputedWeightInWarning.sho tutti.config.option.ui.config.file.shortLabel= tutti.config.option.ui.coordinateEditorType.shortLabel= tutti.config.option.ui.dateFormat.shortLabel= +tutti.config.option.ui.db.import.skipBackup.shortLabel= tutti.config.option.ui.fullBluetoothScan.shortLabel= tutti.config.option.ui.genericFormat.import.skipBackup.shortLabel= tutti.config.option.ui.individualObservationRowsToCreate.shortLabel= diff --git a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties index 3787664..975c698 100644 --- a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties +++ b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties @@ -148,6 +148,7 @@ tutti.config.option.ui.color.speciesOrBenthosUnsortedComputedWeightInWarning.sho tutti.config.option.ui.config.file.shortLabel=Chemin du fichier de confirmation tutti.config.option.ui.coordinateEditorType.shortLabel=Formateur de coordonnées tutti.config.option.ui.dateFormat.shortLabel=Format des dates +tutti.config.option.ui.db.import.skipBackup.shortLabel=Ne pas faire de sauvegarde avant un import de base tutti.config.option.ui.fullBluetoothScan.shortLabel=Recherche complète des périphériques bluetooth tutti.config.option.ui.genericFormat.import.skipBackup.shortLabel=Ne pas faire de sauvegarde avant un import au format générique tutti.config.option.ui.individualObservationRowsToCreate.shortLabel=Nombre max de données individuelles -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository tutti. See http://git.codelutin.com/tutti.git commit b8eac0f758c09d36435f0091f4a6db50bcc40fa1 Author: Tony CHEMIT <chemit@codelutin.com> Date: Sat Apr 4 10:38:52 2015 +0200 ajout aussi d'un drapeau pour fermer sauvagemment la base --- .../tutti/persistence/TuttiPersistence.java | 2 ++ .../tutti/persistence/TuttiPersistenceImpl.java | 31 ++++++++++++++++++---- .../persistence/TuttiPersistenceNoDbImpl.java | 5 ++++ .../ifremer/tutti/service/PersistenceService.java | 5 ++++ .../ifremer/tutti/service/ServiceDbResource.java | 17 +++++++----- .../swing/content/db/actions/ReimportDbAction.java | 10 ++++++- .../content/db/actions/ReinstallDbAction.java | 8 +++++- 7 files changed, 65 insertions(+), 13 deletions(-) diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistence.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistence.java index d3a2912..6726305 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistence.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistence.java @@ -74,6 +74,8 @@ public interface TuttiPersistence extends TuttiPersistenceServiceImplementor, String getImplementationName(); + void setSkipShutdownDbWhenClosing(); + /** * To load a program with all his cruises and fishing operations. * diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceImpl.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceImpl.java index 918ba4f..7785bbd 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceImpl.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceImpl.java @@ -167,12 +167,19 @@ public class TuttiPersistenceImpl implements TuttiPersistence { @Resource(name = "technicalPersistenceService") protected TechnicalPersistenceService technicalPersistenceService; + private boolean skipShutdownDbWhenClosing; + @Override public String getImplementationName() { return "Persistence Adagio implementation"; } @Override + public void setSkipShutdownDbWhenClosing() { + this.skipShutdownDbWhenClosing = true; + } + + @Override public void lazyInit() { // this service does not used lazy init } @@ -258,14 +265,28 @@ public class TuttiPersistenceImpl implements TuttiPersistence { protocolService.close(); attachmentService.close(); - try { - Jdbcs.shutdown(TuttiConfiguration.getInstance()); - } catch (SQLException e) { - if (log.isErrorEnabled()) { - log.error("Could not shutdown the database", e); + if (skipShutdownDbWhenClosing) { + + if (log.isInfoEnabled()) { + log.info("Skip to shutdown db while closing, lucky you..."); + } + + } else { + + if (log.isInfoEnabled()) { + log.info("Do shutdown db nicely"); + } + try { + Jdbcs.shutdown(TuttiConfiguration.getInstance()); + } catch (SQLException e) { + if (log.isErrorEnabled()) { + log.error("Could not shutdown the database", e); + } } + } + TuttiPersistenceServiceLocator.shutdownTutti(); } } diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceNoDbImpl.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceNoDbImpl.java index 22aec96..f818246 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceNoDbImpl.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceNoDbImpl.java @@ -73,6 +73,11 @@ public class TuttiPersistenceNoDbImpl implements TuttiPersistence { } @Override + public void setSkipShutdownDbWhenClosing() { + throw notImplemented(); + } + + @Override public ProgramDataModel loadProgram(String programId, boolean loadFishingOperation) { throw notImplemented(); } diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java index 6d25201..e6ea9c2 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java @@ -237,6 +237,11 @@ public class PersistenceService extends AbstractTuttiService implements TuttiPer } @Override + public void setSkipShutdownDbWhenClosing() { + driver.setSkipShutdownDbWhenClosing(); + } + + @Override public ProgramDataModel loadProgram(String programId, boolean loadFishingOperation) { return driver.loadProgram(programId, loadFishingOperation); } diff --git a/tutti-service/src/test/java/fr/ifremer/tutti/service/ServiceDbResource.java b/tutti-service/src/test/java/fr/ifremer/tutti/service/ServiceDbResource.java index bf9e553..fe078ff 100644 --- a/tutti-service/src/test/java/fr/ifremer/tutti/service/ServiceDbResource.java +++ b/tutti-service/src/test/java/fr/ifremer/tutti/service/ServiceDbResource.java @@ -138,14 +138,19 @@ public class ServiceDbResource extends DatabaseResource { @Override public <S extends TuttiService> S getService(Class<S> serviceType) { S service = super.getService(serviceType); - if (PersistenceService.class.equals(serviceType) && isUseLegacyPersonDepartement()) { + if (PersistenceService.class.equals(serviceType)) { - if (log.isWarnEnabled()) { - log.warn("Use legacy departement codes..."); - } - DepartmentId.UNKNOWN_RECORDER_DEPARTMENT.setValue(181); - DepartmentCode.INSIDE_PREFIX.setValue("PDG-"); + ((PersistenceService)service).setSkipShutdownDbWhenClosing(); + + if (isUseLegacyPersonDepartement()) { + if (log.isWarnEnabled()) { + log.warn("Use legacy departement codes..."); + } + DepartmentId.UNKNOWN_RECORDER_DEPARTMENT.setValue(181); + DepartmentCode.INSIDE_PREFIX.setValue("PDG-"); + + } } return service; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReimportDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReimportDbAction.java index 37ef867..adeba06 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReimportDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReimportDbAction.java @@ -154,11 +154,19 @@ public class ReimportDbAction extends AbstractMainUITuttiAction { ProgressionModel progressionModel = getProgressionModel(); + boolean doBackup = backupFile != null; + // close db progressionModel.increments(t("tutti.reimport.step.closeDb", jdbcUrl)); + + if (!doBackup) { + getContext().getPersistenceService().setSkipShutdownDbWhenClosing(); + } + getContext().closePersistenceService(); - if (backupFile != null) { + + if (doBackup) { // backup db progressionModel.increments(t("tutti.reimport.step.backupDb", backupFile)); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReinstallDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReinstallDbAction.java index 2c8c0eb..8782fd5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReinstallDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReinstallDbAction.java @@ -130,11 +130,17 @@ public class ReinstallDbAction extends AbstractMainUITuttiAction { ProgressionModel progressionModel = getProgressionModel(); + boolean doBackup = backupFile != null; + // close db progressionModel.increments(t("tutti.reinstallDb.step.closeDb", jdbcUrl)); + + if (!doBackup) { + getContext().getPersistenceService().setSkipShutdownDbWhenClosing(); + } getContext().closePersistenceService(); - if (backupFile != null) { + if (doBackup) { // backup db progressionModel.increments(t("tutti.reinstallDb.step.backupDb", backupFile)); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository tutti. See http://git.codelutin.com/tutti.git commit 3f02507bbccfa7c50425c21fbb941ece22257ec0 Merge: 6e9e8f9 b8eac0f Author: Tony CHEMIT <chemit@codelutin.com> Date: Sat Apr 4 10:38:57 2015 +0200 fixes #6902: [TECH] Ajouter une option pour pouvoir ne pas effectuer une sauvegarde avant chaque import de base Merge branch 'feature/6902' into develop .../java/fr/ifremer/tutti/TuttiConfiguration.java | 5 ++ .../fr/ifremer/tutti/TuttiConfigurationOption.java | 6 ++ .../tutti/persistence/TuttiPersistence.java | 2 + .../tutti/persistence/TuttiPersistenceImpl.java | 31 +++++++-- .../persistence/TuttiPersistenceNoDbImpl.java | 5 ++ .../i18n/tutti-persistence_en_GB.properties | 1 + .../i18n/tutti-persistence_fr_FR.properties | 1 + .../ifremer/tutti/service/PersistenceService.java | 5 ++ .../ifremer/tutti/service/ServiceDbResource.java | 17 +++-- .../swing/content/config/TuttiConfigUIHandler.java | 3 + .../swing/content/db/actions/ReimportDbAction.java | 75 +++++++++++++++------- .../content/db/actions/ReinstallDbAction.java | 73 +++++++++++++-------- .../resources/i18n/tutti-ui-swing_en_GB.properties | 1 + .../resources/i18n/tutti-ui-swing_fr_FR.properties | 1 + 14 files changed, 167 insertions(+), 59 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm