Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
-
7190c0a1
by tchemit at 2019-02-14T16:44:51Z
4 changed files:
- client-core/src/main/java/fr/ird/observe/client/ui/admin/save/SaveLocalModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/admin/save/SaveLocalUI.jcss
- client-core/src/main/java/fr/ird/observe/client/ui/admin/save/SaveLocalUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/storage/StorageUIModel.java
Changes:
| ... | ... | @@ -26,6 +26,7 @@ import fr.ird.observe.client.configuration.ClientConfig; |
| 26 | 26 |
import fr.ird.observe.client.ui.admin.AdminActionModel;
|
| 27 | 27 |
import fr.ird.observe.client.ui.admin.AdminStep;
|
| 28 | 28 |
import fr.ird.observe.client.ui.admin.AdminUIModel;
|
| 29 |
+import org.apache.commons.lang3.StringUtils;
|
|
| 29 | 30 |
import org.apache.logging.log4j.Logger;
|
| 30 | 31 |
import org.apache.logging.log4j.LogManager;
|
| 31 | 32 |
import org.nuiton.jaxx.runtime.swing.wizard.ext.WizardState;
|
| ... | ... | @@ -35,6 +36,8 @@ import java.io.File; |
| 35 | 36 |
import java.util.HashSet;
|
| 36 | 37 |
import java.util.Set;
|
| 37 | 38 |
|
| 39 |
+import static fr.ird.observe.client.ui.storage.StorageUIModel.SQL_GZ_EXTENSION;
|
|
| 40 |
+ |
|
| 38 | 41 |
/**
|
| 39 | 42 |
* Le modèle d'une opération d'export de données observers.
|
| 40 | 43 |
*
|
| ... | ... | @@ -45,6 +48,8 @@ public class SaveLocalModel extends AdminActionModel { |
| 45 | 48 |
|
| 46 | 49 |
public static final String BACKUP_FILE_PROPERTY_NAME = "backupFile";
|
| 47 | 50 |
|
| 51 |
+ public static final String BACKUP_FILE_NAME_PROPERTY_NAME = "backupFileName";
|
|
| 52 |
+ |
|
| 48 | 53 |
public static final String DO_BACKUP_PROPERTY_NAME = "doBackup";
|
| 49 | 54 |
|
| 50 | 55 |
public static final String CAN_SAVE_LOCAL_PROPERTY_NAME = "canSaveLocal";
|
| ... | ... | @@ -99,11 +104,17 @@ public class SaveLocalModel extends AdminActionModel { |
| 99 | 104 |
return backupFile;
|
| 100 | 105 |
}
|
| 101 | 106 |
|
| 107 |
+ public String getBackupFileName() {
|
|
| 108 |
+ return StringUtils.removeEnd(backupFile.getName(), SQL_GZ_EXTENSION);
|
|
| 109 |
+ }
|
|
| 110 |
+ |
|
| 102 | 111 |
public void setBackupFile(File backupFile) {
|
| 103 | 112 |
boolean canSave = isCanSaveLocal();
|
| 104 | 113 |
File oldValue = this.backupFile;
|
| 114 |
+ String oldBackupFileName = getBackupFileName();
|
|
| 105 | 115 |
this.backupFile = backupFile;
|
| 106 | 116 |
firePropertyChange(BACKUP_FILE_PROPERTY_NAME, oldValue, backupFile);
|
| 117 |
+ firePropertyChange(BACKUP_FILE_NAME_PROPERTY_NAME, oldBackupFileName, getBackupFileName());
|
|
| 107 | 118 |
firePropertyChange(CAN_SAVE_LOCAL_PROPERTY_NAME, canSave, isCanSaveLocal());
|
| 108 | 119 |
}
|
| 109 | 120 |
|
| ... | ... | @@ -125,9 +136,11 @@ public class SaveLocalModel extends AdminActionModel { |
| 125 | 136 |
public boolean isCanSaveLocal() {
|
| 126 | 137 |
boolean validate = !doBackup ||
|
| 127 | 138 |
backupFile != null &&
|
| 128 |
- !backupFile.exists() &&
|
|
| 129 |
- backupFile.getName().endsWith(".sql.gz") &&
|
|
| 130 |
- backupFile.getParentFile().exists();
|
|
| 139 |
+ !backupFile.exists() && backupFile.getParentFile().exists() && backupFile.getName().endsWith(SQL_GZ_EXTENSION);
|
|
| 140 |
+ if (validate) {
|
|
| 141 |
+ String filename = getBackupFileName();
|
|
| 142 |
+ validate = !filename.isEmpty() && !filename.contains(".");
|
|
| 143 |
+ };
|
|
| 131 | 144 |
|
| 132 | 145 |
if (log.isDebugEnabled()) {
|
| 133 | 146 |
log.debug("can save ? " + validate);
|
| ... | ... | @@ -75,7 +75,7 @@ |
| 75 | 75 |
|
| 76 | 76 |
#filenameText {
|
| 77 | 77 |
enabled:{stepModel.isDoBackup()};
|
| 78 |
- text:{stepModel.getBackupFile().getName()};
|
|
| 78 |
+ text:{stepModel.getBackupFileName()};
|
|
| 79 | 79 |
}
|
| 80 | 80 |
|
| 81 | 81 |
#startAction {
|
| ... | ... | @@ -26,6 +26,7 @@ import fr.ird.observe.client.ui.ObserveKeyStrokes; |
| 26 | 26 |
import fr.ird.observe.client.ui.admin.AdminStep;
|
| 27 | 27 |
import fr.ird.observe.client.ui.admin.AdminTabUIHandler;
|
| 28 | 28 |
import fr.ird.observe.client.ui.admin.synchronize.referential.legacy.SynchronizeModel;
|
| 29 |
+import fr.ird.observe.client.ui.storage.StorageUIModel;
|
|
| 29 | 30 |
import fr.ird.observe.client.ui.util.UIHelper;
|
| 30 | 31 |
import fr.ird.observe.services.service.actions.synchro.referential.legacy.UnidirectionalReferentialSynchronizeContext;
|
| 31 | 32 |
import fr.ird.observe.services.service.sql.AddSqlScriptProducerRequest;
|
| ... | ... | @@ -106,7 +107,7 @@ public class SaveLocalUIHandler extends AdminTabUIHandler<SaveLocalUI> implement |
| 106 | 107 |
}
|
| 107 | 108 |
|
| 108 | 109 |
public void changeFilename(String filename) {
|
| 109 |
- getUi().getStepModel().setBackupFile(new File(getUi().directoryText.getText(), filename));
|
|
| 110 |
+ getUi().getStepModel().setBackupFile(new File(ui.getDirectoryText().getText(), filename + StorageUIModel.SQL_GZ_EXTENSION));
|
|
| 110 | 111 |
}
|
| 111 | 112 |
|
| 112 | 113 |
public void doStartAction() {
|
| ... | ... | @@ -1160,9 +1160,10 @@ public class StorageUIModel extends WizardModel<StorageStep> { |
| 1160 | 1160 |
}
|
| 1161 | 1161 |
public void setBackupFile(File backupFile) {
|
| 1162 | 1162 |
File oldValue = this.backupFile;
|
| 1163 |
+ String oldBackupFileName = getBackupFileName();
|
|
| 1163 | 1164 |
this.backupFile = backupFile;
|
| 1164 | 1165 |
firePropertyChange(BACKUP_FILE_PROPERTY_NAME, oldValue, backupFile);
|
| 1165 |
- firePropertyChange(BACKUP_FILE_NAME_PROPERTY_NAME, oldValue, getBackupFileName());
|
|
| 1166 |
+ firePropertyChange(BACKUP_FILE_NAME_PROPERTY_NAME, oldBackupFileName, getBackupFileName());
|
|
| 1166 | 1167 |
validate();
|
| 1167 | 1168 |
}
|
| 1168 | 1169 |
|