This is an automated email from the git hooks/post-receive script. New commit to branch feature/6688 in repository tutti. See http://git.codelutin.com/tutti.git commit 8ff80ceb3ead8a9ac6a4164cce3f4f2fb8465e4c Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Mar 4 16:43:28 2015 +0100 finir l'interface d'import --- .../genericformat/GenericFormatImportUI.css | 4 +- .../genericformat/GenericFormatImportUI.jaxx | 6 +-- .../GenericFormatImportUIHandler.java | 6 ++- .../genericformat/GenericFormatImportUIModel.java | 6 +-- .../actions/GenericFormatImportAction.java | 53 ++++++++++++---------- .../actions/GenericFormatValidateAction.java | 14 ++---- .../resources/i18n/tutti-ui-swing_en_GB.properties | 6 +++ .../resources/i18n/tutti-ui-swing_fr_FR.properties | 8 +++- 8 files changed, 55 insertions(+), 48 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.css index eae2dd6..d911feb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.css @@ -70,7 +70,7 @@ JTextField { } #validateResultPanel { - visible: false; + visible: {model.getValidateResult() != null}; _help: {"tutti.genericFormatImport.field.validateResult.help"}; } @@ -122,7 +122,7 @@ JTextField { } #importResultPanel { - visible: false; + visible: {model.getImportResult() != null}; _help: {"tutti.genericFormatImport.field.importResult.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.jaxx index 1a3ebc0..dcd6800 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.jaxx @@ -111,7 +111,7 @@ <!-- Import options --> <row fill='both'> - <cell fill='both' columns="2"> + <cell fill='both' weightx='1'> <JPanel layout='{new GridLayout(0, 1)}'> <JCheckBox id='cleanWeightsCheckBox' onItemStateChanged='handler.setBoolean(event, "cleanWeights")'/> <JCheckBox id='checkWeightsCheckBox' onItemStateChanged='handler.setBoolean(event, "checkWeights")'/> @@ -121,7 +121,7 @@ <!-- Import actions --> <row anchor='south'> - <cell columns='2'> + <cell> <JPanel layout='{new GridLayout(1, 0)}'> <JButton id='importButton'/> </JPanel> @@ -130,7 +130,7 @@ <!-- import result --> <row> - <cell columns='2'> + <cell> <JPanel id='importResultPanel' layout='{new BorderLayout()}'> <JLabel id='importResultText' constraints='BorderLayout.WEST'/> <JToolBar constraints='BorderLayout.EAST'> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUIHandler.java index 90eda64..f13eefe 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUIHandler.java @@ -53,7 +53,7 @@ public class GenericFormatImportUIHandler extends AbstractTuttiUIHandler<Generic final Set<String> propertyNamesToCanValidate = Sets.newHashSet(GenericFormatImportUIModel.PROPERTY_IMPORT_FILE, GenericFormatImportUIModel.PROPERTY_PROGRAM, GenericFormatImportUIModel.PROPERTY_OVERRIDE_DATA); - final Set<String> propertyNamesToCanImport = Sets.newHashSet(GenericFormatImportUIModel.PROPERTY_IMPORT_FILE, GenericFormatImportUIModel.PROPERTY_PROGRAM, GenericFormatImportUIModel.PROPERTY_OVERRIDE_DATA); + final Set<String> propertyNamesToCanImport = Sets.newHashSet(GenericFormatImportUIModel.PROPERTY_VALIDATE_DONE, GenericFormatImportUIModel.PROPERTY_PROGRAM, GenericFormatImportUIModel.PROPERTY_VALIDATE_RESULT); @Override public void propertyChange(PropertyChangeEvent evt) { @@ -64,6 +64,8 @@ public class GenericFormatImportUIHandler extends AbstractTuttiUIHandler<Generic boolean canValidate = source.computeIsCanValidate(); source.setCanValidate(canValidate); + source.setValidateResult(null); + source.setValidateReportFile(null); } @@ -71,6 +73,8 @@ public class GenericFormatImportUIHandler extends AbstractTuttiUIHandler<Generic boolean canImport = source.computeIsCanImport(); source.setCanImport(canImport); + source.setImportResult(null); + source.setImportReportFile(null); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUIModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUIModel.java index 9654271..a5150ba 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUIModel.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUIModel.java @@ -220,15 +220,11 @@ public class GenericFormatImportUIModel extends AbstractSerializableBean { public boolean computeIsCanValidate() { - - return canValidate = program != null && importFile != null && importFile.exists(); - + return program != null && importFile != null && importFile.exists(); } public boolean computeIsCanImport() { - return isValidateDone() && isValidateValid(); - } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatImportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatImportAction.java index 7584ebc..6307ffb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatImportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatImportAction.java @@ -39,7 +39,7 @@ public class GenericFormatImportAction extends AbstractTuttiAction<GenericFormat private GenericFormatImportResult importResult; public GenericFormatImportAction(GenericFormatImportUIHandler handler) { - super(handler, true); + super(handler, false); } @Override @@ -55,24 +55,23 @@ public class GenericFormatImportAction extends AbstractTuttiAction<GenericFormat // Do a backup before import - if (doAction) { + if (doAction && !getConfig().isGenericFormatImportSkipBackup()) { // choose file to export backupFile = saveFileWithStartDirectory( getConfig().getDbBackupDirectory(), false, "tutti-db-" + df.format(new Date()), + "zip", t("tutti.genericFormat.title.choose.dbBackupFile"), t("tutti.genericFormat.action.chooseDbBackupFile"), - "^.+\\.zip$", t("tutti.common.file.zip") - ); + "^.+\\.zip$", t("tutti.common.file.genericFormat")); if (backupFile == null) { displayWarningMessage( t("tutti.dbManager.title.backup.db"), - t("tutti.dbManager.action.importdb.no.backup.db.choosen") - ); + t("tutti.dbManager.action.importdb.no.backup.db.choosen")); doAction = false; } @@ -99,24 +98,36 @@ public class GenericFormatImportAction extends AbstractTuttiAction<GenericFormat GenericFormatImportService service = getContext().getGenericFormatImportService(); - int nbSteps = 3 + service.getImportProgramNbSteps(configuration); + boolean doBackup = !getConfig().isGenericFormatImportSkipBackup() && backupFile != null; + + int nbSteps = service.getImportProgramNbSteps(configuration); + if (doBackup) { + nbSteps += 3; + } if (log.isInfoEnabled()) { log.info("Import nb steps: " + nbSteps); } createProgressionModelIfRequired(nbSteps); - // close db - getProgressionModel().increments(t("tutti.genericFormatImport.step.closeDb")); - getContext().closePersistenceService(); + if (doBackup) { + + // close db + getProgressionModel().increments(t("tutti.genericFormatImport.step.closeDb")); + getContext().closePersistenceService(); + + // backup db + getProgressionModel().increments(t("tutti.genericFormatImport.step.backupDb", backupFile)); + getContext().getPersistenceService().exportDb(backupFile); - // backup db - getProgressionModel().increments(t("tutti.genericFormatImport.step.backupDb", backupFile)); - getContext().getPersistenceService().exportDb(backupFile); + // reopen db + getProgressionModel().increments(t("tutti.genericFormatImport.step.reopenDb", backupFile)); + getContext().openPersistenceService(); - // reopen db - getProgressionModel().increments(t("tutti.genericFormatImport.step.reopenDb", backupFile)); - getContext().openPersistenceService(); + // Must reload service + service = getContext().getGenericFormatImportService(); + + } Program program = getModel().getProgram(); @@ -148,15 +159,7 @@ public class GenericFormatImportAction extends AbstractTuttiAction<GenericFormat getModel().setImportResult(result); - if (result == null) { - - // result removed - getUI().getImportResultPanel().setVisible(false); - - } else { - - // result added - getUI().getImportResultPanel().setVisible(true); + if (result != null) { Icon icon; String text; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatValidateAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatValidateAction.java index 5281eb4..7722000 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatValidateAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatValidateAction.java @@ -28,10 +28,10 @@ public class GenericFormatValidateAction extends AbstractTuttiAction<GenericForm /** Logger. */ private static final Log log = LogFactory.getLog(GenericFormatValidateAction.class); - GenericFormatValidateFileResult validateFileResult; + private GenericFormatValidateFileResult validateFileResult; public GenericFormatValidateAction(GenericFormatImportUIHandler handler) { - super(handler, true); + super(handler, false); } @Override @@ -99,15 +99,7 @@ public class GenericFormatValidateAction extends AbstractTuttiAction<GenericForm getModel().setValidateResult(result); - if (result == null) { - - // result removed - getUI().getValidateResultPanel().setVisible(false); - - } else { - - // result added - getUI().getValidateResultPanel().setVisible(true); + if (result != null) { Icon icon; String text; 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 f01a330..2a580bd 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 @@ -165,6 +165,7 @@ tutti.config.option.ui.config.file.shortLabel= tutti.config.option.ui.coordinateEditorType.shortLabel= tutti.config.option.ui.dateFormat.shortLabel= tutti.config.option.ui.fullBluetoothScan.shortLabel= +tutti.config.option.ui.genericFormat.import.skipBackup.shortLabel= tutti.config.option.ui.individualObservationRowsToCreate.shortLabel= tutti.config.option.ui.showBatchLog.shortLabel= tutti.config.option.update.application.url.shortLabel= @@ -1751,6 +1752,11 @@ tutti.openDb.step.checkSchemaVersion= tutti.openDb.step.open= tutti.openDb.step.updateReferential= tutti.openDb.step.will.migrateSchema= +tutti.openGenericFormatImportScreen.step.loading.allGear= +tutti.openGenericFormatImportScreen.step.loading.allPerson= +tutti.openGenericFormatImportScreen.step.loading.allSpecies= +tutti.openGenericFormatImportScreen.step.loading.allVessel= +tutti.openGenericFormatImportScreen.step.loading.ui= tutti.openReplaceTemporaryGearUI.loading.source= tutti.openReplaceTemporaryGearUI.loading.target= tutti.openReplaceTemporaryGearUI.open.dialog= 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 5611602..02769a6 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 @@ -81,7 +81,7 @@ tutti.common.askBeforeUpdate.help=Que voulez-vous faire ?<ul><li><strong>Annuler tutti.common.cancel=Annuler tutti.common.cancel.mnemonic=A tutti.common.file.csv=Extension d'un fichier csv -tutti.common.file.genericFormat=Extension d'une archive zip +tutti.common.file.genericFormat=Extension d'un import / export générique (archive zip) tutti.common.file.iwa=Fichier d'import Psion tutti.common.file.pdf=Extension d'un fichier pdf tutti.common.file.protocol=Extension d'un fichier de protocole Allegro Campagne @@ -147,6 +147,7 @@ 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.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énriqugénérique tutti.config.option.ui.individualObservationRowsToCreate.shortLabel=Nombre max de données individuelles tutti.config.option.ui.showBatchLog.shortLabel=Voir la structure des lots dans les logs tutti.config.option.update.application.url.shortLabel=URL de mise à jour des applicatifs @@ -1671,6 +1672,11 @@ tutti.openDb.step.checkSchemaVersion=Vérification de la compatibilité de la ba tutti.openDb.step.open=Ouverture de la base <strong>%s</strong> tutti.openDb.step.updateReferential= tutti.openDb.step.will.migrateSchema=Démarrage de la mise à jour du schéma de la base depuis la version %s vers la version %s +tutti.openGenericFormatImportScreen.step.loading.allGear=Chargement du référentiel engin +tutti.openGenericFormatImportScreen.step.loading.allPerson=Chargement du référentiel Personne +tutti.openGenericFormatImportScreen.step.loading.allSpecies=Chargement du référentiel Taxinomique +tutti.openGenericFormatImportScreen.step.loading.allVessel=Chargement du référentiel Navire +tutti.openGenericFormatImportScreen.step.loading.ui=Chargement des interfaces graphiques tutti.openReplaceTemporaryUI.loading.source=Chargement des référentiels temporaires de type %s tutti.openReplaceTemporaryUI.loading.target=Chargement des référentiels officiels de type %s tutti.openReplaceTemporaryUI.open.dialog=Ouverture de l'interface graphique -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.