Merge remote-tracking branch 'sjcorbett/management-context-uri' into reviews
Conflicts: core/src/test/java/brooklyn/entity/rebind/RebindTestUtils.java - add'l objectStore argument to rebindAll method usage/launcher/src/main/java/brooklyn/launcher/BrooklynLauncher.java - imports Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/9f425654 Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/9f425654 Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/9f425654 Branch: refs/heads/master Commit: 9f425654022a42da1aefc2ad80f916655c77a00a Parents: 26c6542 d39d79c Author: Alex Heneveld <alex.henev...@cloudsoftcorp.com> Authored: Tue Jun 10 01:18:20 2014 +0100 Committer: Alex Heneveld <alex.henev...@cloudsoftcorp.com> Committed: Tue Jun 10 01:18:20 2014 +0100 ---------------------------------------------------------------------- .../brooklyn/management/ManagementContext.java | 10 +++- .../ha/HighAvailabilityManagerImpl.java | 1 + .../internal/AbstractManagementContext.java | 14 ++++++ .../internal/ManagementContextInternal.java | 3 ++ .../NonDeploymentManagementContext.java | 17 ++++++- .../brooklyn/entity/rebind/RebindTestUtils.java | 51 ++++++++++++++------ .../basic/EmptySoftwareProcessSshDriver.java | 8 ++- usage/cli/src/main/java/brooklyn/cli/Main.java | 16 ++++++ usage/jsgui/src/main/webapp/assets/js/router.js | 5 +- .../assets/tpl/home/server-not-ha-master.html | 2 +- .../brooklyn/launcher/BrooklynLauncher.java | 15 +++++- .../brooklyn/launcher/BrooklynWebServer.java | 33 ++++++++++--- 12 files changed, 146 insertions(+), 29 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9f425654/core/src/main/java/brooklyn/management/ha/HighAvailabilityManagerImpl.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9f425654/core/src/test/java/brooklyn/entity/rebind/RebindTestUtils.java ---------------------------------------------------------------------- diff --cc core/src/test/java/brooklyn/entity/rebind/RebindTestUtils.java index 4df0995,6fadf97..df1720a --- a/core/src/test/java/brooklyn/entity/rebind/RebindTestUtils.java +++ b/core/src/test/java/brooklyn/entity/rebind/RebindTestUtils.java @@@ -4,8 -4,10 +4,9 @@@ import static com.google.common.base.Pr import static com.google.common.base.Preconditions.checkNotNull; import java.io.File; + import java.util.Collection; import java.util.List; import java.util.Map; -import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; import org.slf4j.Logger; @@@ -69,14 -70,15 +72,15 @@@ public class RebindTestUtils throw e; } } + + public static void deleteMementoDir(String path) { + deleteMementoDir(new File(path)); + } + public static void deleteMementoDir(File f) { - if (f.isDirectory()) { - for (File c : f.listFiles()) - deleteMementoDir(c); - } - f.delete(); + FileBasedObjectStore.deleteCompletely(f); } - + public static void checkMementoSerializable(Application app) throws Exception { BrooklynMemento memento = MementosGenerators.newBrooklynMemento(app.getManagementContext()); checkMementoSerializable(memento); @@@ -185,18 -180,21 +199,25 @@@ } public static Application rebind(ManagementContext newManagementContext, File mementoDir, ClassLoader classLoader) throws Exception { - return rebind(newManagementContext, mementoDir, classLoader, (RebindExceptionHandler)null); + return rebind(newManagementContext, mementoDir, classLoader, null); } - + public static Application rebind(ManagementContext newManagementContext, File mementoDir, ClassLoader classLoader, RebindExceptionHandler exceptionHandler) throws Exception { - return Iterables.getFirst(rebindAll(newManagementContext, mementoDir, classLoader, exceptionHandler), null); + PersistenceObjectStore objectStore = new FileBasedObjectStore(mementoDir); + return rebind(newManagementContext, mementoDir, classLoader, exceptionHandler, objectStore); + } + public static Application rebind(ManagementContext newManagementContext, File mementoDir, + ClassLoader classLoader, RebindExceptionHandler exceptionHandler, PersistenceObjectStore objectStore) throws Exception { ++ return Iterables.getFirst(rebindAll(newManagementContext, mementoDir, classLoader, exceptionHandler, objectStore), null); + } - + public static Collection<Application> rebindAll(ManagementContext newManagementContext, File mementoDir, ClassLoader classLoader) throws Exception { - return rebindAll(newManagementContext, mementoDir, classLoader, null); ++ return rebindAll(newManagementContext, mementoDir, classLoader, null, new FileBasedObjectStore(mementoDir)); + } + - public static Collection<Application> rebindAll(ManagementContext newManagementContext, File mementoDir, ClassLoader classLoader, RebindExceptionHandler exceptionHandler) throws Exception { ++ public static Collection<Application> rebindAll(ManagementContext newManagementContext, File mementoDir, ClassLoader classLoader, RebindExceptionHandler exceptionHandler, PersistenceObjectStore objectStore) throws Exception { LOG.info("Rebinding app, using directory "+mementoDir); - + - BrooklynMementoPersisterToMultiFile newPersister = new BrooklynMementoPersisterToMultiFile(mementoDir, classLoader); + BrooklynMementoPersisterToObjectStore newPersister = new BrooklynMementoPersisterToObjectStore(objectStore, classLoader); newManagementContext.getRebindManager().setPersister(newPersister); List<Application> newApps; if (exceptionHandler == null) { http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9f425654/usage/cli/src/main/java/brooklyn/cli/Main.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9f425654/usage/launcher/src/main/java/brooklyn/launcher/BrooklynLauncher.java ---------------------------------------------------------------------- diff --cc usage/launcher/src/main/java/brooklyn/launcher/BrooklynLauncher.java index 1f4086e,5157d13..4c3af5a --- a/usage/launcher/src/main/java/brooklyn/launcher/BrooklynLauncher.java +++ b/usage/launcher/src/main/java/brooklyn/launcher/BrooklynLauncher.java @@@ -9,9 -9,13 +9,10 @@@ import io.brooklyn.camp.spi.instantiate import java.io.Closeable; import java.io.File; -import java.io.IOException; import java.io.StringReader; import java.net.InetAddress; + import java.net.URI; -import java.text.SimpleDateFormat; import java.util.ArrayList; -import java.util.Date; import java.util.LinkedHashMap; import java.util.List; import java.util.Map;