Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe Commits: 97b53d5e by tchemit at 2019-02-14T16:14:29Z Ergonomie assistant sauvegarde - Closes #1229 - - - - - 3 changed files: - client-core/src/main/java/fr/ird/observe/client/ui/storage/StorageUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/storage/tabs/BackupUI.jcss - client-core/src/main/java/fr/ird/observe/client/ui/storage/tabs/BackupUIHandler.java Changes: ===================================== client-core/src/main/java/fr/ird/observe/client/ui/storage/StorageUIModel.java ===================================== @@ -92,6 +92,7 @@ public class StorageUIModel extends WizardModel<StorageStep> { public static final String CREATION_MODE_PROPERTY_NAME = "creationMode"; public static final String DO_BACKUP_PROPERTY_NAME = "doBackup"; public static final String BACKUP_FILE_PROPERTY_NAME = "backupFile"; + public static final String BACKUP_FILE_NAME_PROPERTY_NAME = "backupFileName"; public static final String DUMP_FILE_PROPERTY_NAME = "dumpFile"; public static final String LOCAL_STORAGE_EXIST_PROPERTY_NAME = "localStorageExist"; public static final String USE_SSL_PROPERTY_NAME = "useSsl"; @@ -117,6 +118,7 @@ public class StorageUIModel extends WizardModel<StorageStep> { private static final String CAN_USE_REMOTE_SERVICE_PROPERTY_NAME = "canUseRemoteService"; private static final String CAN_USE_SERVER_SERVICE_PROPERTY_NAME = "canUseServerService"; private static final char[] EMPTY_PASSWORD = new char[0]; + public static final String SQL_GZ_EXTENSION = ".sql.gz"; // private static final String LOGIN_REFERENTIEL = "referentiel"; private final ProgressModel progressModel = new ProgressModel(); @@ -991,7 +993,11 @@ public class StorageUIModel extends WizardModel<StorageStep> { break; case BACKUP: - validate = !doBackup || backupFile != null && !backupFile.exists() && backupFile.getName().endsWith(".sql.gz"); + validate = !doBackup || backupFile != null && !backupFile.exists() && backupFile.getName().endsWith(SQL_GZ_EXTENSION); + if (validate) { + String filename = getBackupFileName(); + validate = !filename.isEmpty() && !filename.contains("."); + } break; case SELECT_DATA: // chemit 20100525 : aucune contrainte dans ce cas @@ -1149,10 +1155,14 @@ public class StorageUIModel extends WizardModel<StorageStep> { return backupFile; } + public String getBackupFileName() { + return StringUtils.removeEnd(backupFile.getName(),SQL_GZ_EXTENSION); + } public void setBackupFile(File backupFile) { File oldValue = this.backupFile; this.backupFile = backupFile; firePropertyChange(BACKUP_FILE_PROPERTY_NAME, oldValue, backupFile); + firePropertyChange(BACKUP_FILE_NAME_PROPERTY_NAME, oldValue, getBackupFileName()); validate(); } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/storage/tabs/BackupUI.jcss ===================================== @@ -50,5 +50,5 @@ #filenameText { enabled:{model.isDoBackup()}; - text:{model.getBackupFile().getName()}; + text:{model.getBackupFileName()}; } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/storage/tabs/BackupUIHandler.java ===================================== @@ -24,6 +24,7 @@ package fr.ird.observe.client.ui.storage.tabs; import fr.ird.observe.client.ui.ObserveKeyStrokes; import fr.ird.observe.client.ui.storage.StorageStep; +import fr.ird.observe.client.ui.storage.StorageUIModel; import fr.ird.observe.client.ui.util.UIHelper; import org.apache.commons.lang3.StringUtils; import org.nuiton.jaxx.runtime.spi.UIHandler; @@ -91,9 +92,7 @@ public class BackupUIHandler extends StorageTabUIHandler<BackupUI> implements UI } public void changeFilename(String filename) { - if (StringUtils.isNoneEmpty(filename)) { - ui.getModel().setBackupFile(new File(ui.getDirectoryText().getText(), filename)); - } + ui.getModel().setBackupFile(new File(ui.getDirectoryText().getText(), filename + StorageUIModel.SQL_GZ_EXTENSION)); } } View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/97b53d5ed89020260ea2524ba3ac... -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/97b53d5ed89020260ea2524ba3ac... You're receiving this email because of your account on gitlab.com.