Repository: brooklyn-server
Updated Branches:
  refs/heads/master 2dbfe7cdb -> 6e5c2c252


Adds /v1/server/planeid

Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/7bf13ae7
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/7bf13ae7
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/7bf13ae7

Branch: refs/heads/master
Commit: 7bf13ae7e09a953561d75bbdb561192e7605153c
Parents: 2dbfe7c
Author: Aled Sage <[email protected]>
Authored: Mon Jul 17 13:21:55 2017 +0100
Committer: Aled Sage <[email protected]>
Committed: Mon Jul 17 13:21:55 2017 +0100

----------------------------------------------------------------------
 .../main/java/org/apache/brooklyn/rest/api/ServerApi.java |  5 +++++
 .../apache/brooklyn/rest/resources/ServerResource.java    | 10 ++++++++++
 .../brooklyn/rest/resources/ServerResourceTest.java       |  6 ++++++
 .../apache/brooklyn/rest/testing/BrooklynRestApiTest.java |  2 ++
 4 files changed, 23 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/7bf13ae7/rest/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
----------------------------------------------------------------------
diff --git 
a/rest/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java 
b/rest/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
index 12e2c1c..766dcca 100644
--- a/rest/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
+++ b/rest/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
@@ -85,6 +85,11 @@ public interface ServerApi {
     public VersionSummary getVersion();
 
     @GET
+    @Path("/planeid")
+    @ApiOperation(value = "Return the plane id (an identifier that is stable 
across restarts and HA failovers)")
+    public String getPlaneId();
+
+    @GET
     @Path("/up")
     @ApiOperation(value = "Returns whether this server is up - fully started, 
and not stopping, though it may have errors")
     public boolean isUp();

http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/7bf13ae7/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ServerResource.java
----------------------------------------------------------------------
diff --git 
a/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ServerResource.java
 
b/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ServerResource.java
index 20a371a..d1215bc 100644
--- 
a/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ServerResource.java
+++ 
b/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ServerResource.java
@@ -346,6 +346,16 @@ public class ServerResource extends 
AbstractBrooklynRestResource implements Serv
     }
 
     @Override
+    public String getPlaneId() {
+        if (!Entitlements.isEntitled(mgmt().getEntitlementManager(), 
Entitlements.SERVER_STATUS, null))
+            throw WebResourceUtils.forbidden("User '%s' is not authorized for 
this operation", Entitlements.getEntitlementContext().user());
+
+        Maybe<ManagementContext> mm = mgmtMaybe();
+        Maybe<String> result = (mm.isPresent()) ? 
mm.get().getManagementPlaneIdMaybe() : Maybe.absent();
+        return result.isPresent() ? result.get() : "";
+    }
+
+    @Override
     public boolean isUp() {
         if (!Entitlements.isEntitled(mgmt().getEntitlementManager(), 
Entitlements.SERVER_STATUS, null))
             throw WebResourceUtils.forbidden("User '%s' is not authorized for 
this operation", Entitlements.getEntitlementContext().user());

http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/7bf13ae7/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
----------------------------------------------------------------------
diff --git 
a/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
 
b/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
index e423951..3087186 100644
--- 
a/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
+++ 
b/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
@@ -59,6 +59,12 @@ public class ServerResourceTest extends 
BrooklynRestResourceTest {
     }
 
     @Test
+    public void testGetPlaneId() throws Exception {
+        String planeId = client().path("/server/planeid").get(String.class);
+        assertEquals(planeId, manager.getManagementPlaneIdMaybe().get());
+    }
+
+    @Test
     public void testGetStatus() throws Exception {
         ManagementNodeState nodeState = 
client().path("/server/ha/state").get(ManagementNodeState.class);
         assertEquals(nodeState.name(), "MASTER");

http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/7bf13ae7/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/testing/BrooklynRestApiTest.java
----------------------------------------------------------------------
diff --git 
a/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/testing/BrooklynRestApiTest.java
 
b/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/testing/BrooklynRestApiTest.java
index 6c0b747..0d38eaa 100644
--- 
a/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/testing/BrooklynRestApiTest.java
+++ 
b/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/testing/BrooklynRestApiTest.java
@@ -146,6 +146,8 @@ public abstract class BrooklynRestApiTest {
                 manager = new LocalManagementContextForTests();
             }
             manager.getHighAvailabilityManager().disabled();
+            ((LocalManagementContext)manager).generateManagementPlaneId();
+
             BasicLocationRegistry.addNamedLocationLocalhost(manager);
             
             new BrooklynCampPlatformLauncherNoServer()

Reply via email to