You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by ha...@apache.org on 2015/11/19 00:42:49 UTC

[05/24] incubator-brooklyn git commit: [BROOKLYN-185] Move from custom Apidoc annotation to standard swagger

[BROOKLYN-185] Move from custom Apidoc annotation to standard swagger

The classes used when implementing the internals of handling the Apidoc
annotation are no longer available in swagger-1.5.3. Porting to the new
internals of swagger may be an option, but the actual number of classes
involved in the API is low enough to allow easy use of standard swagger
annotations.


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

Branch: refs/heads/master
Commit: fe0071fa9e4126eee5e84b4710a6b049a3a62740
Parents: ab086fe
Author: Ciprian Ciubotariu <ch...@gmx.net>
Authored: Tue Oct 20 18:55:42 2015 +0300
Committer: Ciprian Ciubotariu <ch...@gmx.net>
Committed: Wed Nov 11 17:42:43 2015 +0200

----------------------------------------------------------------------
 .../brooklyn/camp/server/rest/resource/ApidocRestResource.java  | 4 ++--
 .../server/rest/resource/ApplicationComponentRestResource.java  | 4 ++--
 .../rest/resource/ApplicationComponentTemplateRestResource.java | 4 ++--
 .../camp/server/rest/resource/AssemblyRestResource.java         | 4 ++--
 .../camp/server/rest/resource/AssemblyTemplateRestResource.java | 4 ++--
 .../server/rest/resource/PlatformComponentRestResource.java     | 4 ++--
 .../rest/resource/PlatformComponentTemplateRestResource.java    | 4 ++--
 .../camp/server/rest/resource/PlatformRestResource.java         | 4 ++--
 .../src/main/java/org/apache/brooklyn/rest/api/AccessApi.java   | 3 +--
 .../src/main/java/org/apache/brooklyn/rest/api/ActivityApi.java | 4 ++--
 .../main/java/org/apache/brooklyn/rest/api/ApplicationApi.java  | 4 ++--
 .../src/main/java/org/apache/brooklyn/rest/api/CatalogApi.java  | 4 ++--
 .../src/main/java/org/apache/brooklyn/rest/api/EffectorApi.java | 4 ++--
 .../src/main/java/org/apache/brooklyn/rest/api/EntityApi.java   | 4 ++--
 .../main/java/org/apache/brooklyn/rest/api/EntityConfigApi.java | 4 ++--
 .../src/main/java/org/apache/brooklyn/rest/api/LocationApi.java | 4 ++--
 .../src/main/java/org/apache/brooklyn/rest/api/PolicyApi.java   | 4 ++--
 .../main/java/org/apache/brooklyn/rest/api/PolicyConfigApi.java | 4 ++--
 .../src/main/java/org/apache/brooklyn/rest/api/ScriptApi.java   | 4 ++--
 .../src/main/java/org/apache/brooklyn/rest/api/SensorApi.java   | 4 ++--
 .../src/main/java/org/apache/brooklyn/rest/api/ServerApi.java   | 4 ++--
 .../src/main/java/org/apache/brooklyn/rest/api/UsageApi.java    | 4 ++--
 .../src/main/java/org/apache/brooklyn/rest/api/VersionApi.java  | 4 ++--
 .../java/org/apache/brooklyn/rest/resources/ApidocResource.java | 5 ++---
 24 files changed, 47 insertions(+), 49 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApidocRestResource.java
----------------------------------------------------------------------
diff --git a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApidocRestResource.java b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApidocRestResource.java
index 57ae02a..e410f4c 100644
--- a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApidocRestResource.java
+++ b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApidocRestResource.java
@@ -18,12 +18,12 @@
  */
 package org.apache.brooklyn.camp.server.rest.resource;
 
+import io.swagger.annotations.Api;
 import javax.ws.rs.Path;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 
 @Path(ApidocRestResource.API_URI_PATH)
-@Apidoc("Web API Documentation")
+@Api(value = "org.apache.brooklyn.camp.server.rest.resource.ApidocRestResource", description = "Web API Documentation")
 public class ApidocRestResource extends org.apache.brooklyn.rest.apidoc.ApidocResource {
 
     public static final String API_URI_PATH = PlatformRestResource.CAMP_URI_PATH + "/apidoc";

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApplicationComponentRestResource.java
----------------------------------------------------------------------
diff --git a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApplicationComponentRestResource.java b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApplicationComponentRestResource.java
index 154a5fd..fa649b0 100644
--- a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApplicationComponentRestResource.java
+++ b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApplicationComponentRestResource.java
@@ -18,19 +18,19 @@
  */
 package org.apache.brooklyn.camp.server.rest.resource;
 
+import io.swagger.annotations.Api;
 import javax.ws.rs.GET;
 import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;
 
 import org.apache.brooklyn.camp.server.dto.ApplicationComponentDto;
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path(ApplicationComponentRestResource.URI_PATH)
-@Apidoc("Application Component resources")
+@Api(value = "org.apache.brooklyn.camp.server.rest.resource.ApplicationComponentRestResource", description = "Application Component resources")
 @Produces("application/json")
 public class ApplicationComponentRestResource extends AbstractCampRestResource {
 

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApplicationComponentTemplateRestResource.java
----------------------------------------------------------------------
diff --git a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApplicationComponentTemplateRestResource.java b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApplicationComponentTemplateRestResource.java
index be552c0..758a867 100644
--- a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApplicationComponentTemplateRestResource.java
+++ b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/ApplicationComponentTemplateRestResource.java
@@ -18,19 +18,19 @@
  */
 package org.apache.brooklyn.camp.server.rest.resource;
 
+import io.swagger.annotations.Api;
 import javax.ws.rs.GET;
 import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;
 
 import org.apache.brooklyn.camp.server.dto.ApplicationComponentTemplateDto;
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path(ApplicationComponentTemplateRestResource.URI_PATH)
-@Apidoc("Application Component Template resources")
+@Api(value = "org.apache.brooklyn.camp.server.rest.resource.ApplicationComponentTemplateRestResource", description = "Application Component Template resources")
 @Produces("application/json")
 public class ApplicationComponentTemplateRestResource extends AbstractCampRestResource {
 

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/AssemblyRestResource.java
----------------------------------------------------------------------
diff --git a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/AssemblyRestResource.java b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/AssemblyRestResource.java
index 27125f3..a5b22f3 100644
--- a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/AssemblyRestResource.java
+++ b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/AssemblyRestResource.java
@@ -18,19 +18,19 @@
  */
 package org.apache.brooklyn.camp.server.rest.resource;
 
+import io.swagger.annotations.Api;
 import javax.ws.rs.GET;
 import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;
 
 import org.apache.brooklyn.camp.server.dto.AssemblyDto;
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path(AssemblyRestResource.URI_PATH)
-@Apidoc("Assembly resources")
+@Api(value = "org.apache.brooklyn.camp.server.rest.resource.AssemblyRestResource", description = "Assembly resources")
 @Produces("application/json")
 public class AssemblyRestResource extends AbstractCampRestResource {
 

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/AssemblyTemplateRestResource.java
----------------------------------------------------------------------
diff --git a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/AssemblyTemplateRestResource.java b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/AssemblyTemplateRestResource.java
index 62f10a0..9066d0d 100644
--- a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/AssemblyTemplateRestResource.java
+++ b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/AssemblyTemplateRestResource.java
@@ -18,6 +18,7 @@
  */
 package org.apache.brooklyn.camp.server.rest.resource;
 
+import io.swagger.annotations.Api;
 import java.net.URI;
 
 import javax.ws.rs.GET;
@@ -34,14 +35,13 @@ import org.slf4j.LoggerFactory;
 import org.apache.brooklyn.camp.server.dto.AssemblyTemplateDto;
 import org.apache.brooklyn.camp.spi.Assembly;
 import org.apache.brooklyn.camp.spi.AssemblyTemplate;
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 import org.apache.brooklyn.util.exceptions.Exceptions;
 
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path(AssemblyTemplateRestResource.URI_PATH)
-@Apidoc("Assembly Template resources")
+@Api(value = "org.apache.brooklyn.camp.server.rest.resource.AssemblyTemplateRestResource", description = "Assembly Template resources")
 @Produces("application/json")
 public class AssemblyTemplateRestResource extends AbstractCampRestResource {
 

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformComponentRestResource.java
----------------------------------------------------------------------
diff --git a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformComponentRestResource.java b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformComponentRestResource.java
index af7a3ba..e006bc5 100644
--- a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformComponentRestResource.java
+++ b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformComponentRestResource.java
@@ -18,19 +18,19 @@
  */
 package org.apache.brooklyn.camp.server.rest.resource;
 
+import io.swagger.annotations.Api;
 import javax.ws.rs.GET;
 import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;
 
 import org.apache.brooklyn.camp.server.dto.PlatformComponentDto;
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path(PlatformComponentRestResource.URI_PATH)
-@Apidoc("Platform Component resources")
+@Api(value = "org.apache.brooklyn.camp.server.rest.resource.PlatformComponentRestResource", description = "Platform Component resources")
 @Produces("application/json")
 public class PlatformComponentRestResource extends AbstractCampRestResource {
 

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformComponentTemplateRestResource.java
----------------------------------------------------------------------
diff --git a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformComponentTemplateRestResource.java b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformComponentTemplateRestResource.java
index 3600e2b..63e96d4 100644
--- a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformComponentTemplateRestResource.java
+++ b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformComponentTemplateRestResource.java
@@ -18,19 +18,19 @@
  */
 package org.apache.brooklyn.camp.server.rest.resource;
 
+import io.swagger.annotations.Api;
 import javax.ws.rs.GET;
 import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;
 
 import org.apache.brooklyn.camp.server.dto.PlatformComponentTemplateDto;
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path(PlatformComponentTemplateRestResource.URI_PATH)
-@Apidoc("Platform Component Template resources")
+@Api(value = "org.apache.brooklyn.camp.server.rest.resource.PlatformComponentTemplateRestResource", description = "Platform Component Template resources")
 @Produces("application/json")
 public class PlatformComponentTemplateRestResource extends AbstractCampRestResource {
 

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformRestResource.java
----------------------------------------------------------------------
diff --git a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformRestResource.java b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformRestResource.java
index 45b8c98..4259fb4 100644
--- a/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformRestResource.java
+++ b/camp/camp-server/src/main/java/org/apache/brooklyn/camp/server/rest/resource/PlatformRestResource.java
@@ -18,6 +18,7 @@
  */
 package org.apache.brooklyn.camp.server.rest.resource;
 
+import io.swagger.annotations.Api;
 import java.io.InputStream;
 import java.io.StringReader;
 
@@ -36,14 +37,13 @@ import org.slf4j.LoggerFactory;
 import org.apache.brooklyn.camp.server.dto.PlatformDto;
 import org.apache.brooklyn.camp.server.rest.util.WebResourceUtils;
 import org.apache.brooklyn.camp.spi.AssemblyTemplate;
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 
 import io.swagger.annotations.ApiOperation;
 
 //import io.brooklyn.camp.rest.apidoc.Apidoc;
 
 @Path(PlatformRestResource.CAMP_URI_PATH)
-@Apidoc("Platform (root)")
+@Api(value = "org.apache.brooklyn.camp.server.rest.resource.PlatformRestResource", description = "Platform (root)")
 @Produces("application/json")
 public class PlatformRestResource extends AbstractCampRestResource {
 

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/AccessApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/AccessApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/AccessApi.java
index 2e3a91c..50f5c05 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/AccessApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/AccessApi.java
@@ -27,7 +27,6 @@ import javax.ws.rs.QueryParam;
 import javax.ws.rs.core.MediaType;
 import javax.ws.rs.core.Response;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 import org.apache.brooklyn.rest.domain.AccessSummary;
 
 import com.google.common.annotations.Beta;
@@ -37,7 +36,7 @@ import io.swagger.annotations.ApiParam;
 
 @Beta
 @Path("/v1/access")
-@Apidoc("Access Control")
+@Api(value = "org.apache.brooklyn.rest.api.AccessApi", description = "Access Control")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface AccessApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ActivityApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ActivityApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ActivityApi.java
index d438f7e..7bf02e5 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ActivityApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ActivityApi.java
@@ -18,9 +18,9 @@
  */
 package org.apache.brooklyn.rest.api;
 
+import io.swagger.annotations.Api;
 import java.util.List;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 import org.apache.brooklyn.rest.domain.TaskSummary;
 
 import io.swagger.annotations.ApiOperation;
@@ -32,7 +32,7 @@ import javax.ws.rs.*;
 import javax.ws.rs.core.MediaType;
 
 @Path("/v1/activities")
-@Apidoc("Activities")
+@Api(value = "org.apache.brooklyn.rest.api.ActivityApi", description = "Activities")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface ActivityApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ApplicationApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ApplicationApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ApplicationApi.java
index 8fd4fb1..8686a66 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ApplicationApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ApplicationApi.java
@@ -18,6 +18,7 @@
  */
 package org.apache.brooklyn.rest.api;
 
+import io.swagger.annotations.Api;
 import java.util.List;
 import java.util.Map;
 
@@ -36,7 +37,6 @@ import javax.ws.rs.core.Response;
 
 import org.codehaus.jackson.JsonNode;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 import org.apache.brooklyn.rest.domain.ApplicationSpec;
 import org.apache.brooklyn.rest.domain.ApplicationSummary;
 import org.apache.brooklyn.rest.domain.EntitySummary;
@@ -47,7 +47,7 @@ import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path("/v1/applications")
-@Apidoc("Applications")
+@Api(value = "org.apache.brooklyn.rest.api.ApplicationApi", description = "Applications")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface ApplicationApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/CatalogApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/CatalogApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/CatalogApi.java
index 5f20ea0..79b36f3 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/CatalogApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/CatalogApi.java
@@ -34,7 +34,6 @@ import javax.ws.rs.QueryParam;
 import javax.ws.rs.core.MediaType;
 import javax.ws.rs.core.Response;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 import org.apache.brooklyn.rest.domain.CatalogEntitySummary;
 import org.apache.brooklyn.rest.domain.CatalogItemSummary;
 import org.apache.brooklyn.rest.domain.CatalogLocationSummary;
@@ -42,13 +41,14 @@ import org.apache.brooklyn.rest.domain.CatalogPolicySummary;
 
 import com.sun.jersey.core.header.FormDataContentDisposition;
 import com.sun.jersey.multipart.FormDataParam;
+import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiResponse;
 import io.swagger.annotations.ApiResponses;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path("/v1/catalog")
-@Apidoc("Catalog")
+@Api(value = "org.apache.brooklyn.rest.api.CatalogApi", description = "Catalog")
 @Consumes(MediaType.APPLICATION_JSON)
 @Produces(MediaType.APPLICATION_JSON)
 public interface CatalogApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EffectorApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EffectorApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EffectorApi.java
index fcd52d8..f05ba72 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EffectorApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EffectorApi.java
@@ -18,7 +18,7 @@
  */
 package org.apache.brooklyn.rest.api;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
+import io.swagger.annotations.Api;
 import org.apache.brooklyn.rest.domain.EffectorSummary;
 import io.swagger.annotations.ApiResponse;
 import io.swagger.annotations.ApiResponses;
@@ -33,7 +33,7 @@ import java.util.List;
 import java.util.Map;
 
 @Path("/v1/applications/{application}/entities/{entity}/effectors")
-@Apidoc("Entity Effectors")
+@Api(value = "org.apache.brooklyn.rest.api.EffectorApi", description = "Entity Effectors")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface EffectorApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EntityApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EntityApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EntityApi.java
index 57eae42..b553c39 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EntityApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EntityApi.java
@@ -18,7 +18,7 @@
  */
 package org.apache.brooklyn.rest.api;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
+import io.swagger.annotations.Api;
 import org.apache.brooklyn.rest.domain.EntitySummary;
 import org.apache.brooklyn.rest.domain.LocationSummary;
 import org.apache.brooklyn.rest.domain.TaskSummary;
@@ -36,7 +36,7 @@ import java.util.List;
 import java.util.Map;
 
 @Path("/v1/applications/{application}/entities")
-@Apidoc("Entities")
+@Api(value = "org.apache.brooklyn.rest.api.EntityApi", description = "Entities")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface EntityApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EntityConfigApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EntityConfigApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EntityConfigApi.java
index a1672bc..e7558e0 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EntityConfigApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/EntityConfigApi.java
@@ -18,6 +18,7 @@
  */
 package org.apache.brooklyn.rest.api;
 
+import io.swagger.annotations.Api;
 import java.util.List;
 import java.util.Map;
 
@@ -31,7 +32,6 @@ import javax.ws.rs.Produces;
 import javax.ws.rs.QueryParam;
 import javax.ws.rs.core.MediaType;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 import org.apache.brooklyn.rest.domain.EntityConfigSummary;
 
 import io.swagger.annotations.ApiResponse;
@@ -40,7 +40,7 @@ import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path("/v1/applications/{application}/entities/{entity}/config")
-@Apidoc("Entity Config")
+@Api(value = "org.apache.brooklyn.rest.api.EntityConfigApi", description = "Entity Config")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface EntityConfigApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/LocationApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/LocationApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/LocationApi.java
index a6bbcbf..47e8426 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/LocationApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/LocationApi.java
@@ -18,6 +18,7 @@
  */
 package org.apache.brooklyn.rest.api;
 
+import io.swagger.annotations.Api;
 import java.util.List;
 import java.util.Map;
 
@@ -34,7 +35,6 @@ import javax.ws.rs.QueryParam;
 import javax.ws.rs.core.MediaType;
 import javax.ws.rs.core.Response;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 import org.apache.brooklyn.rest.domain.LocationSpec;
 import org.apache.brooklyn.rest.domain.LocationSummary;
 
@@ -43,7 +43,7 @@ import io.swagger.annotations.ApiParam;
 
 @SuppressWarnings("deprecation")
 @Path("/v1/locations")
-@Apidoc("Locations")
+@Api(value = "org.apache.brooklyn.rest.api.LocationApi", description = "Locations")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface LocationApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/PolicyApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/PolicyApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/PolicyApi.java
index 222976f..d992d7d 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/PolicyApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/PolicyApi.java
@@ -18,7 +18,7 @@
  */
 package org.apache.brooklyn.rest.api;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
+import io.swagger.annotations.Api;
 import org.apache.brooklyn.rest.domain.PolicySummary;
 import org.apache.brooklyn.rest.domain.Status;
 import io.swagger.annotations.ApiResponse;
@@ -33,7 +33,7 @@ import java.util.List;
 import java.util.Map;
 
 @Path("/v1/applications/{application}/entities/{entity}/policies")
-@Apidoc("Entity Policies")
+@Api(value = "org.apache.brooklyn.rest.api.PolicyApi", description = "Entity Policies")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface PolicyApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/PolicyConfigApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/PolicyConfigApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/PolicyConfigApi.java
index 2421ca5..b546425 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/PolicyConfigApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/PolicyConfigApi.java
@@ -18,7 +18,7 @@
  */
 package org.apache.brooklyn.rest.api;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
+import io.swagger.annotations.Api;
 import org.apache.brooklyn.rest.domain.PolicyConfigSummary;
 import io.swagger.annotations.ApiResponse;
 import io.swagger.annotations.ApiResponses;
@@ -32,7 +32,7 @@ import java.util.List;
 import java.util.Map;
 
 @Path("/v1/applications/{application}/entities/{entity}/policies/{policy}/config")
-@Apidoc("Entity Policy Config")
+@Api(value = "org.apache.brooklyn.rest.api.PolicyConfigApi", description = "Entity Policy Config")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface PolicyConfigApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ScriptApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ScriptApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ScriptApi.java
index 6f809dd..b0e89eb 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ScriptApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ScriptApi.java
@@ -18,7 +18,7 @@
  */
 package org.apache.brooklyn.rest.api;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
+import io.swagger.annotations.Api;
 import org.apache.brooklyn.rest.domain.ScriptExecutionSummary;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -32,7 +32,7 @@ import javax.ws.rs.core.Context;
 import javax.ws.rs.core.MediaType;
 
 @Path("/v1/script")
-@Apidoc(value="Scripting")
+@Api(value = "org.apache.brooklyn.rest.api.ScriptApi", description = "Scripting")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface ScriptApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/SensorApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/SensorApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/SensorApi.java
index 63bb119..4025b7f 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/SensorApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/SensorApi.java
@@ -18,6 +18,7 @@
  */
 package org.apache.brooklyn.rest.api;
 
+import io.swagger.annotations.Api;
 import java.util.List;
 import java.util.Map;
 
@@ -32,7 +33,6 @@ import javax.ws.rs.Produces;
 import javax.ws.rs.QueryParam;
 import javax.ws.rs.core.MediaType;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 import org.apache.brooklyn.rest.domain.SensorSummary;
 
 import io.swagger.annotations.ApiResponse;
@@ -41,7 +41,7 @@ import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path("/v1/applications/{application}/entities/{entity}/sensors")
-@Apidoc("Entity Sensors")
+@Api(value = "org.apache.brooklyn.rest.api.SensorApi", description = "Entity Sensors")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface SensorApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
index 0625ad6..77254cf 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
@@ -34,18 +34,18 @@ import javax.ws.rs.core.Response;
 
 import org.apache.brooklyn.api.mgmt.ha.HighAvailabilityMode;
 import org.apache.brooklyn.api.mgmt.ha.ManagementNodeState;
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 import org.apache.brooklyn.rest.domain.HighAvailabilitySummary;
 import org.apache.brooklyn.rest.domain.VersionSummary;
 
 import com.google.common.annotations.Beta;
+import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiResponse;
 import io.swagger.annotations.ApiResponses;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path("/v1/server")
-@Apidoc("Server")
+@Api(value = "org.apache.brooklyn.rest.api.ServerApi", description = "Server")
 @Produces(MediaType.APPLICATION_JSON)
 @Beta
 public interface ServerApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/UsageApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/UsageApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/UsageApi.java
index f4f2ab8..a294c7f 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/UsageApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/UsageApi.java
@@ -18,6 +18,7 @@
  */
 package org.apache.brooklyn.rest.api;
 
+import io.swagger.annotations.Api;
 import java.util.List;
 
 import javax.ws.rs.Consumes;
@@ -28,7 +29,6 @@ import javax.ws.rs.Produces;
 import javax.ws.rs.QueryParam;
 import javax.ws.rs.core.MediaType;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
 import org.apache.brooklyn.rest.domain.UsageStatistics;
 
 import io.swagger.annotations.ApiResponse;
@@ -37,7 +37,7 @@ import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 @Path("/v1/usage")
-@Apidoc("Usage")
+@Api(value = "org.apache.brooklyn.rest.api.UsageApi", description = "Usage")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 public interface UsageApi {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/VersionApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/VersionApi.java b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/VersionApi.java
index b55cfae..eac0cb1 100644
--- a/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/VersionApi.java
+++ b/usage/rest-api/src/main/java/org/apache/brooklyn/rest/api/VersionApi.java
@@ -18,7 +18,7 @@
  */
 package org.apache.brooklyn.rest.api;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
+import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 
 import javax.ws.rs.Consumes;
@@ -28,7 +28,7 @@ import javax.ws.rs.Produces;
 import javax.ws.rs.core.MediaType;
 
 @Path("/v1/version")
-@Apidoc("Version")
+@Api(value = "org.apache.brooklyn.rest.api.VersionApi", description = "Version")
 @Produces(MediaType.APPLICATION_JSON)
 @Consumes(MediaType.APPLICATION_JSON)
 /** @deprecated since 0.7.0; use /v1/server/version */

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/fe0071fa/usage/rest-server/src/main/java/org/apache/brooklyn/rest/resources/ApidocResource.java
----------------------------------------------------------------------
diff --git a/usage/rest-server/src/main/java/org/apache/brooklyn/rest/resources/ApidocResource.java b/usage/rest-server/src/main/java/org/apache/brooklyn/rest/resources/ApidocResource.java
index 500c93c..e15ce80 100644
--- a/usage/rest-server/src/main/java/org/apache/brooklyn/rest/resources/ApidocResource.java
+++ b/usage/rest-server/src/main/java/org/apache/brooklyn/rest/resources/ApidocResource.java
@@ -18,11 +18,10 @@
  */
 package org.apache.brooklyn.rest.resources;
 
-import org.apache.brooklyn.swagger.annotations.Apidoc;
-
+import io.swagger.annotations.Api;
 import javax.ws.rs.Path;
 
-@Apidoc("API Documentation")
+@Api(value = "org.apache.brooklyn.rest.resources.ApidocRestResource", description = "API Documentation")
 @Path("/v1/apidoc")
 public class ApidocResource extends org.apache.brooklyn.rest.apidoc.ApidocResource {