diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs index 939eb9a..396a291 100644 --- a/.settings/org.eclipse.jdt.core.prefs +++ b/.settings/org.eclipse.jdt.core.prefs @@ -1,4 +1,14 @@ eclipse.preferences.version=1 +org.eclipse.jdt.core.codeComplete.argumentPrefixes= +org.eclipse.jdt.core.codeComplete.argumentSuffixes= +org.eclipse.jdt.core.codeComplete.fieldPrefixes= +org.eclipse.jdt.core.codeComplete.fieldSuffixes= +org.eclipse.jdt.core.codeComplete.localPrefixes= +org.eclipse.jdt.core.codeComplete.localSuffixes= +org.eclipse.jdt.core.codeComplete.staticFieldPrefixes= +org.eclipse.jdt.core.codeComplete.staticFieldSuffixes= +org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes= +org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes= org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve diff --git a/.settings/org.eclipse.jdt.ui.prefs b/.settings/org.eclipse.jdt.ui.prefs index 6c7707e..ace80d3 100644 --- a/.settings/org.eclipse.jdt.ui.prefs +++ b/.settings/org.eclipse.jdt.ui.prefs @@ -61,6 +61,12 @@ eclipse.preferences.version=1 editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true formatter_profile=_Siba formatter_settings_version=12 +org.eclipse.jdt.ui.exception.name=exception +org.eclipse.jdt.ui.gettersetter.use.is=true +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.keywordthis=true +org.eclipse.jdt.ui.overrideannotation=true +org.eclipse.jdt.ui.text.custom_code_templates= sp_cleanup.add_default_serial_version_id=true sp_cleanup.add_generated_serial_version_id=false sp_cleanup.add_missing_annotations=true diff --git a/lib/Siba.jar b/lib/Siba.jar index 145ffe3..e7f1241 100644 Binary files a/lib/Siba.jar and b/lib/Siba.jar differ diff --git a/src/org/dclermonte/siba/Siba.java b/src/org/dclermonte/siba/Siba.java index 62bb986..8464b97 100644 --- a/src/org/dclermonte/siba/Siba.java +++ b/src/org/dclermonte/siba/Siba.java @@ -35,12 +35,12 @@ public class Siba if (args.length == 0) { - SibaGUI.main(args); + SibaGUI.run(args); } else { - SibaCLI.main(args); + SibaCLI.run(args); } } diff --git a/src/org/dclermonte/siba/cli/SibaCLI.java b/src/org/dclermonte/siba/cli/SibaCLI.java index bd3dbdb..32125fb 100644 --- a/src/org/dclermonte/siba/cli/SibaCLI.java +++ b/src/org/dclermonte/siba/cli/SibaCLI.java @@ -30,14 +30,14 @@ import org.dclermonte.siba.model.SibaManager; public class SibaCLI { - private static final ResourceBundle BUNDLE = ResourceBundle.getBundle("org.dclermonte.siba.gui.messages"); //$NON-NLS-1$ + private static final ResourceBundle BUNDLE = ResourceBundle.getBundle("org.dclermonte.siba.cli.messages"); //$NON-NLS-1$ - public static void backup(final File directoryToSave, final String targetDirectory) + public static void backup(final File directoryToSave, final File targetDirectory) throws ArchiveException, IOException { File result; result = SibaManager.backup(directoryToSave, targetDirectory); - System.out.println(BUNDLE.getString("BackupPanel.confirmDialogMessage.text") + result.getName()); + System.out.println(BUNDLE.getString("confirmDialog.text") + result.getName()); //$NON-NLS-1$ return; } @@ -46,9 +46,9 @@ public class SibaCLI { boolean result; result = SibaManager.check(fileToCheck); - String yourFile = BUNDLE.getString("CheckPanel.confirmDialogYourString.text"); - String good = BUNDLE.getString("CheckPanel.confirmDialogGood.text"); - String bad = BUNDLE.getString("CheckPanel.confirmDialogBad.text"); + String yourFile = BUNDLE.getString("confirmDialogYourString.text"); //$NON-NLS-1$ + String good = BUNDLE.getString("confirmDialogGood.text"); //$NON-NLS-1$ + String bad = BUNDLE.getString("confirmDialogBad.text"); //$NON-NLS-1$ if (result) { System.out.println(yourFile + fileToCheck.getName() + good); @@ -63,69 +63,125 @@ public class SibaCLI public static void help() { - System.out.println("usage : "); - System.out.println("Siba : "); + System.out.println("usage :"); + System.out.println("Siba :"); System.out.println("Siba [-h |-help| --help]"); - System.out.println("siba -backup directoryToSave [-target]"); - System.out.println("siba -check [filename | file.tgz | file.md5]"); + System.out.println("siba backup directoryToSave [target]"); + System.out.println("siba check [filename | filename.tgz | filename.tgz.md5]"); } - public static void main(final String[] args) throws ArchiveException, IOException, NoSuchAlgorithmException + public static void run(final String[] args) throws ArchiveException, IOException, NoSuchAlgorithmException { + int numberParameter = args.length; - switch (numberParameter) + if (numberParameter == 0) { - case 0: - SibaGUI.main(args); - break; - case 1: + SibaGUI.run(args); + } + else + { + + if ((args[0].equals("-h")) || (args[0].equals("-help")) || (args[0].equals("--help"))) + { help(); - break; - case 2: - if (args[0].equals("-backup")) + } + else if (args[0].equals("backup")) + { + + if (numberParameter == 1) + { + System.out.println(BUNDLE.getString("missingDirectoryToSave.text")); + help(); + } + else if (numberParameter == 2) { File directoryToSave = new File(args[1]); if (directoryToSave.exists()) + { + backup(directoryToSave, new File(System.getProperty("user.dir"))); + } + else + { + System.out.println(BUNDLE.getString("directoryToSaveNotExist.text")); + help(); + } + } + else if (numberParameter == 3) + { + File directoryToSave = new File(args[1]); + File targetDirectory = new File(args[2]); + if (directoryToSave.exists() && targetDirectory.exists()) + { + backup(directoryToSave, targetDirectory); + } + else + { + System.out.println(BUNDLE.getString("directoryNotExist.text")); + help(); + + } + } + else + { + System.out.println(BUNDLE.getString("badUsage.text")); + help(); + } + + } + else if (args[0].equals("check")) + { + if (numberParameter == 1) + { + System.out.println(BUNDLE.getString("missingFileToCheck.text")); + help(); + } + else + { + String fileToCheckName = args[1]; + if (!args[1].endsWith("tgz") && !args[1].endsWith("md5")) + { + fileToCheckName = fileToCheckName.concat(".tgz.md5"); + } + else if (args[1].endsWith("tgz")) + { + fileToCheckName = fileToCheckName.concat(".md5"); + } + else + { + fileToCheckName = args[1]; + } + File fileToCheck = new File(fileToCheckName); + File fileToCheckFinal; + if (!fileToCheck.isAbsolute()) + { + fileToCheckFinal = new File(System.getProperty("user.dir") + "/" + fileToCheckName); + } + else + { + fileToCheckFinal = new File(fileToCheckName); + } + + if (fileToCheckFinal.exists()) { - backup(directoryToSave, directoryToSave.getParent()); - System.out.println(BUNDLE.getString("BackupPanel.parentDirectory.text")); - return; + check(fileToCheckFinal); + } - } - if (args[0].equals("-check")) - { - File fileToCheck = new File(args[1]); - if (fileToCheck.exists()) + else { - check(fileToCheck); - return; + System.out.println(BUNDLE.getString("missingFileToCheck.text")); + help(); } + } - else - { - help(); - } - break; - case 3: - if (args[0].equals("-backup")) - { - File directoryToSave = new File(args[1]); - if (directoryToSave.exists()) - { - backup(directoryToSave, args[2]); - return; - } - } - else - { - help(); - } - break; - default: + } + else + { + System.out.println(BUNDLE.getString("badUsage.text")); help(); - break; + + } } } diff --git a/src/org/dclermonte/siba/cli/messages.properties b/src/org/dclermonte/siba/cli/messages.properties new file mode 100644 index 0000000..e982243 --- /dev/null +++ b/src/org/dclermonte/siba/cli/messages.properties @@ -0,0 +1,9 @@ +confirmDialog.text=Your directory has been backup \n in the file :\n +confirmDialogYourString.text=Your File +confirmDialogGood.text=has been check and is good +confirmDialogBad.text = is corrupted +badUsage.text = Bad usage +missingDirectoryToSave.text = Missing the directory to backup +directoryToSaveNotExist.text = The directory to save do not exist +directoryNotExist.text = one of the directories does not exist +missingFileToCheck.text = Missing the file to check diff --git a/src/org/dclermonte/siba/cli/messages_fr_FR.properties b/src/org/dclermonte/siba/cli/messages_fr_FR.properties new file mode 100644 index 0000000..4666b10 --- /dev/null +++ b/src/org/dclermonte/siba/cli/messages_fr_FR.properties @@ -0,0 +1,9 @@ +confirmDialog.text = Votre répertoire a été sauvegardé \n dans le fichier :\n +confirmDialogYourString.text=Votre fichier +confirmDialogGood.text=a été vérifié et ne comporte pas d'erreurs +confirmDialogBad.text = comporte des erreurs +badUsage.text = mauvais usage +missingDirectoryToSave.text = Il manque le répertoire à sauvegarder +directoryToSaveNotExist.text = Le répertoire à sauvegarder n'existe pas +directoryNotExist.text = L'un des répertoires n'existe pas +missingFileToCheck.text = Il manque le fichier à vérifier diff --git a/src/org/dclermonte/siba/gui/BackupPanel.java b/src/org/dclermonte/siba/gui/BackupPanel.java index ba1e9c3..774644e 100644 --- a/src/org/dclermonte/siba/gui/BackupPanel.java +++ b/src/org/dclermonte/siba/gui/BackupPanel.java @@ -176,7 +176,7 @@ public class BackupPanel extends JPanel File targetDirectory = new File(BackupPanel.this.textField_1.getText()); if (directoryToSave1.exists() && targetDirectory.exists()) { - File output1 = SibaManager.backup(directoryToSave1, BackupPanel.this.textField_1.getText()); + File output1 = SibaManager.backup(directoryToSave1, targetDirectory); String message = BUNDLE.getString("BackupPanel.confirmDialogMessage.text") + output1.getName(); String titre = BUNDLE.getString("BackupPanel.confirmDialogTitle.text"); diff --git a/src/org/dclermonte/siba/gui/SibaGUI.java b/src/org/dclermonte/siba/gui/SibaGUI.java index 44a4ba9..0128fbc 100644 --- a/src/org/dclermonte/siba/gui/SibaGUI.java +++ b/src/org/dclermonte/siba/gui/SibaGUI.java @@ -50,7 +50,7 @@ public class SibaGUI { private static final ResourceBundle BUNDLE = ResourceBundle.getBundle("org.dclermonte.siba.gui.messages"); //$NON-NLS-1$ - public static void main(final String[] args) + public static void run(final String[] args) { EventQueue.invokeLater(new Runnable() { diff --git a/src/org/dclermonte/siba/gui/messages.properties b/src/org/dclermonte/siba/gui/messages.properties index a7562e5..005c79a 100644 --- a/src/org/dclermonte/siba/gui/messages.properties +++ b/src/org/dclermonte/siba/gui/messages.properties @@ -28,4 +28,3 @@ CheckPanel.confirmDialogGood.text = has been check and is good CheckPanel.confirmDialogBad.text = is corrupted BackupPanel.dataMissing.text = Data Missing BackupPanel.TitleWarning.text = Warning -BackupPanel.parentDirectory.text= Your backup File is in the parent directory \ No newline at end of file diff --git a/src/org/dclermonte/siba/gui/messages_fr_FR.properties b/src/org/dclermonte/siba/gui/messages_fr_FR.properties index 47e3bfa..196e65f 100644 --- a/src/org/dclermonte/siba/gui/messages_fr_FR.properties +++ b/src/org/dclermonte/siba/gui/messages_fr_FR.properties @@ -28,4 +28,3 @@ CheckPanel.confirmDialogGood.text = a CheckPanel.confirmDialogBad.text = comporte des erreurs BackupPanel.dataMissing.text = Données incomplètes BackupPanel.TitleWarning.text = Attention -BackupPanel.parentDirectory.text= Votre fichier de sauvegarde est dans le répertoire parent \ No newline at end of file diff --git a/src/org/dclermonte/siba/model/SibaManager.java b/src/org/dclermonte/siba/model/SibaManager.java index 63fc839..27288df 100644 --- a/src/org/dclermonte/siba/model/SibaManager.java +++ b/src/org/dclermonte/siba/model/SibaManager.java @@ -41,7 +41,7 @@ import org.apache.commons.compress.utils.IOUtils; public class SibaManager { - public static File backup(final File fileToSave, final String target) throws ArchiveException, IOException + public static File backup(final File fileToSave, final File target) throws ArchiveException, IOException { File result;