X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.backup%2Fsrc%2Forg%2Fsimantics%2Fbackup%2FBackups.java;h=24f59909024a8f5a4b34fdd92fc11e0194a6282d;hp=b6842965d8dad5c0023c75537f8f53d2b7177519;hb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;hpb=24e2b34260f219f0d1644ca7a138894980e25b14 diff --git a/bundles/org.simantics.backup/src/org/simantics/backup/Backups.java b/bundles/org.simantics.backup/src/org/simantics/backup/Backups.java index b6842965d..24f599090 100644 --- a/bundles/org.simantics.backup/src/org/simantics/backup/Backups.java +++ b/bundles/org.simantics.backup/src/org/simantics/backup/Backups.java @@ -1,96 +1,96 @@ -package org.simantics.backup; - -import java.nio.file.Path; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.concurrent.Future; - -/** - * @author Tuukka Lehtonen - */ -public class Backups { - - /** - * - * @param providers - * @throws BackupException - */ - public static void lock(List providers) throws BackupException { - int i = 0; - int count = providers.size(); - try { - for (; i < count; ++i) { - providers.get(i).lock(); - } - } catch (BackupException e) { - for (int j = i-1; j >= 0; --j) { - try { - providers.get(j).unlock(); - } catch (BackupException ex) { - // TODO: proper logging. - ex.printStackTrace(); - } - } - throw e; - } - } - - public static List> syncBackup(List providers, Path targetPath, int revision) throws BackupException { - // Initiate all backup providers, possibly to execute concurrently. - List> futures = new ArrayList<>(providers.size()); - for (IBackupProvider provider : providers) - futures.add( provider.backup(targetPath, revision) ); - - return futures; - } - - public static void unlock(Collection providers) { - for (IBackupProvider provider : providers) { - try { - provider.unlock(); - } catch (BackupException e) { - // TODO: proper logging - e.printStackTrace(); - } - } - } - -// private static class BackupResultFuture implements Future { -// -// public static final BackupResultFuture SUCCESS = new BackupResultFuture(null); -// -// private final BackupException e; -// -// public BackupResultFuture(BackupException e) { -// this.e = e; -// } -// -// @Override -// public boolean cancel(boolean mayInterruptIfRunning) { -// return false; -// } -// -// @Override -// public boolean isCancelled() { -// return false; -// } -// -// @Override -// public boolean isDone() { -// return true; -// } -// -// @Override -// public BackupException get() throws InterruptedException, ExecutionException { -// return e; -// } -// -// @Override -// public BackupException get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException { -// return e; -// } -// -// } - -} +package org.simantics.backup; + +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.concurrent.Future; + +/** + * @author Tuukka Lehtonen + */ +public class Backups { + + /** + * + * @param providers + * @throws BackupException + */ + public static void lock(List providers) throws BackupException { + int i = 0; + int count = providers.size(); + try { + for (; i < count; ++i) { + providers.get(i).lock(); + } + } catch (BackupException e) { + for (int j = i-1; j >= 0; --j) { + try { + providers.get(j).unlock(); + } catch (BackupException ex) { + // TODO: proper logging. + ex.printStackTrace(); + } + } + throw e; + } + } + + public static List> syncBackup(List providers, Path targetPath, int revision) throws BackupException { + // Initiate all backup providers, possibly to execute concurrently. + List> futures = new ArrayList<>(providers.size()); + for (IBackupProvider provider : providers) + futures.add( provider.backup(targetPath, revision) ); + + return futures; + } + + public static void unlock(Collection providers) { + for (IBackupProvider provider : providers) { + try { + provider.unlock(); + } catch (BackupException e) { + // TODO: proper logging + e.printStackTrace(); + } + } + } + +// private static class BackupResultFuture implements Future { +// +// public static final BackupResultFuture SUCCESS = new BackupResultFuture(null); +// +// private final BackupException e; +// +// public BackupResultFuture(BackupException e) { +// this.e = e; +// } +// +// @Override +// public boolean cancel(boolean mayInterruptIfRunning) { +// return false; +// } +// +// @Override +// public boolean isCancelled() { +// return false; +// } +// +// @Override +// public boolean isDone() { +// return true; +// } +// +// @Override +// public BackupException get() throws InterruptedException, ExecutionException { +// return e; +// } +// +// @Override +// public BackupException get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException { +// return e; +// } +// +// } + +}