]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - org.argeo.sync/src/org/argeo/sync/cli/Sync.java
Introduce Argeo Sync
[lgpl/argeo-commons.git] / org.argeo.sync / src / org / argeo / sync / cli / Sync.java
diff --git a/org.argeo.sync/src/org/argeo/sync/cli/Sync.java b/org.argeo.sync/src/org/argeo/sync/cli/Sync.java
new file mode 100644 (file)
index 0000000..6bb098b
--- /dev/null
@@ -0,0 +1,35 @@
+package org.argeo.sync.cli;
+
+import java.net.URI;
+import java.util.List;
+
+import org.apache.commons.cli.CommandLine;
+import org.apache.commons.cli.CommandLineParser;
+import org.apache.commons.cli.DefaultParser;
+import org.apache.commons.cli.Option;
+import org.apache.commons.cli.Options;
+import org.argeo.sync.fs.PathSync;
+
+public class Sync {
+
+       public static void main(String[] args) {
+               Options options = new Options();
+               options.addOption("r", "recursive", false, "recurse into directories");
+               options.addOption(Option.builder().longOpt("progress").hasArg(false).desc("").build());
+
+               CommandLineParser parser = new DefaultParser();
+               try {
+                       CommandLine line = parser.parse(options, args);
+                       List<String> remaining = line.getArgList();
+
+                       URI sourceUri = new URI(remaining.get(0));
+                       URI targetUri = new URI(remaining.get(1));
+                       PathSync pathSync = new PathSync(sourceUri, targetUri);
+                       pathSync.run();
+               } catch (Exception exp) {
+                       exp.printStackTrace();
+
+               }
+       }
+
+}