Repository: incubator-brooklyn Updated Branches: refs/heads/master f271d5ccf -> dfa34b617
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab086feb/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 b36f557..0625ad6 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 @@ -39,10 +39,10 @@ import org.apache.brooklyn.rest.domain.HighAvailabilitySummary; import org.apache.brooklyn.rest.domain.VersionSummary; import com.google.common.annotations.Beta; -import com.wordnik.swagger.core.ApiError; -import com.wordnik.swagger.core.ApiErrors; -import com.wordnik.swagger.core.ApiOperation; -import com.wordnik.swagger.core.ApiParam; +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") @@ -79,7 +79,9 @@ public interface ServerApi { @GET @Path("/version") - @ApiOperation(value = "Return version identifier information for this Brooklyn instance", responseClass = "String", multiValueResponse = false) + @ApiOperation(value = "Return version identifier information for this Brooklyn instance", + response = String.class, + responseContainer = "List") public VersionSummary getVersion(); @GET @@ -101,8 +103,8 @@ public interface ServerApi { @GET @Path("/status") @ApiOperation(value = "Returns the status of this Brooklyn instance [DEPRECATED; see ../ha/state]", - responseClass = "String", - multiValueResponse = false) + response = String.class, + responseContainer = "List") public String getStatus(); @GET @@ -113,10 +115,10 @@ public interface ServerApi { @GET @Path("/config/{configKey}") @ApiOperation(value = "Get the value of the specified config key from brooklyn properties") - @ApiErrors(value = { + @ApiResponses(value = { // TODO: This should probably return a 404 if the key is not present, and should return a predictable // value if the value is not set. Behaviour should be consistent with EntityConfigApi.get() - @ApiError(code = 204, reason = "Could not find config key") + @ApiResponse(code = 204, message = "Could not find config key") }) public String getConfig( @ApiParam(value = "Config key ID", required = true) @@ -126,7 +128,7 @@ public interface ServerApi { @GET @Path("/highAvailability") @ApiOperation(value = "Returns the status of all Brooklyn instances in the management plane [DEPRECATED; see ../ha/states]", - responseClass = "org.apache.brooklyn.rest.domain.HighAvailabilitySummary") + response = org.apache.brooklyn.rest.domain.HighAvailabilitySummary.class) public HighAvailabilitySummary getHighAvailability(); @GET @@ -149,7 +151,7 @@ public interface ServerApi { @GET @Path("/ha/states") @ApiOperation(value = "Returns the HA states and detail for all nodes in this management plane", - responseClass = "org.apache.brooklyn.rest.domain.HighAvailabilitySummary") + response = org.apache.brooklyn.rest.domain.HighAvailabilitySummary.class) public HighAvailabilitySummary getHighAvailabilityPlaneStates(); @POST @@ -197,7 +199,8 @@ public interface ServerApi { @GET @Path("/user") @ApiOperation(value = "Return user information for this Brooklyn instance", - responseClass = "String", multiValueResponse = false) + response = String.class, + responseContainer = "List") public String getUser(); } http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab086feb/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 f8773cd..f4f2ab8 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 @@ -31,10 +31,10 @@ import javax.ws.rs.core.MediaType; import org.apache.brooklyn.swagger.annotations.Apidoc; import org.apache.brooklyn.rest.domain.UsageStatistics; -import com.wordnik.swagger.core.ApiError; -import com.wordnik.swagger.core.ApiErrors; -import com.wordnik.swagger.core.ApiOperation; -import com.wordnik.swagger.core.ApiParam; +import io.swagger.annotations.ApiResponse; +import io.swagger.annotations.ApiResponses; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; @Path("/v1/usage") @Apidoc("Usage") @@ -50,9 +50,9 @@ public interface UsageApi { @Path("/applications") @ApiOperation( value = "Retrieve usage information about all applications", - responseClass = "org.apache.brooklyn.rest.domain.UsageStatistics" + response = org.apache.brooklyn.rest.domain.UsageStatistics.class ) - @ApiErrors(value = {}) + @ApiResponses(value = {}) public List<UsageStatistics> listApplicationsUsage( @ApiParam( name = "start", @@ -71,10 +71,10 @@ public interface UsageApi { @Path("/applications/{application}") @ApiOperation( value = "Retrieve usage information about a specified application", - responseClass = "org.apache.brooklyn.rest.domain.UsageStatistics" + response = org.apache.brooklyn.rest.domain.UsageStatistics.class ) - @ApiErrors(value = { - @ApiError(code = 404, reason = "Application not found") + @ApiResponses(value = { + @ApiResponse(code = 404, message = "Application not found") }) public UsageStatistics getApplicationUsage( @ApiParam( @@ -100,10 +100,10 @@ public interface UsageApi { @Path("/machines") @ApiOperation( value = "Retrieve usage information about all machine locations, optionally filtering for a specific application and/or time range", - responseClass = "org.apache.brooklyn.rest.domain.UsageStatistics" + response = org.apache.brooklyn.rest.domain.UsageStatistics.class ) - @ApiErrors(value = { - @ApiError(code = 404, reason = "Application not found") + @ApiResponses(value = { + @ApiResponse(code = 404, message = "Application not found") }) public List<UsageStatistics> listMachinesUsage( @ApiParam( @@ -129,10 +129,10 @@ public interface UsageApi { @Path("/machines/{machine}") @ApiOperation( value = "Retrieve usage information about a specific machine location", - responseClass = "org.apache.brooklyn.rest.domain.UsageStatistics" + response = org.apache.brooklyn.rest.domain.UsageStatistics.class ) - @ApiErrors(value = { - @ApiError(code = 404, reason = "Machine not found") + @ApiResponses(value = { + @ApiResponse(code = 404, message = "Machine not found") }) public UsageStatistics getMachineUsage( @ApiParam( http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab086feb/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 4c9f05f..b55cfae 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 @@ -19,7 +19,7 @@ package org.apache.brooklyn.rest.api; import org.apache.brooklyn.swagger.annotations.Apidoc; -import com.wordnik.swagger.core.ApiOperation; +import io.swagger.annotations.ApiOperation; import javax.ws.rs.Consumes; import javax.ws.rs.GET; @@ -37,6 +37,7 @@ public interface VersionApi { @GET @ApiOperation(value = "Return version identifier information for this Brooklyn instance; deprecated, use /server/version", - responseClass = "String", multiValueResponse = false) + response = String.class, + responseContainer = "List") public String getVersion(); } http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab086feb/usage/rest-client/src/main/java/org/apache/brooklyn/rest/client/BrooklynApi.java ---------------------------------------------------------------------- diff --git a/usage/rest-client/src/main/java/org/apache/brooklyn/rest/client/BrooklynApi.java b/usage/rest-client/src/main/java/org/apache/brooklyn/rest/client/BrooklynApi.java index 0f3fab3..30351b2 100644 --- a/usage/rest-client/src/main/java/org/apache/brooklyn/rest/client/BrooklynApi.java +++ b/usage/rest-client/src/main/java/org/apache/brooklyn/rest/client/BrooklynApi.java @@ -70,7 +70,7 @@ import org.apache.brooklyn.rest.api.VersionApi; import org.apache.brooklyn.rest.client.util.http.BuiltResponsePreservingError; import org.apache.brooklyn.util.exceptions.Exceptions; -import com.wordnik.swagger.core.ApiOperation; +import io.swagger.annotations.ApiOperation; /** * @author Adam Lowe @@ -285,8 +285,7 @@ public class BrooklynApi { private Class<?> getClassFromMethodAnnotationOrDefault(Method method, Class<?> def){ Class<?> type; try{ - String responseClass = method.getAnnotation(ApiOperation.class).responseClass(); - type = Class.forName(responseClass); + type = method.getAnnotation(ApiOperation.class).response(); } catch (Exception e) { type = def; LOG.debug("Unable to get class from annotation: {}. Defaulting to {}", e.getMessage(), def.getName()); http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab086feb/usage/rest-server/pom.xml ---------------------------------------------------------------------- diff --git a/usage/rest-server/pom.xml b/usage/rest-server/pom.xml index 28cfc7e..a44098f 100644 --- a/usage/rest-server/pom.xml +++ b/usage/rest-server/pom.xml @@ -80,10 +80,6 @@ <artifactId>snakeyaml</artifactId> </dependency> <dependency> - <groupId>com.wordnik</groupId> - <artifactId>swagger-core_2.9.1</artifactId> - </dependency> - <dependency> <groupId>org.reflections</groupId> <artifactId>reflections</artifactId> </dependency> http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab086feb/utils/rest-swagger/pom.xml ---------------------------------------------------------------------- diff --git a/utils/rest-swagger/pom.xml b/utils/rest-swagger/pom.xml index eea644a..8628d48 100644 --- a/utils/rest-swagger/pom.xml +++ b/utils/rest-swagger/pom.xml @@ -37,12 +37,6 @@ <dependencies> - <!-- need this to get the right ServletConfig as used elsewhere :( --> - <dependency> - <groupId>org.eclipse.jetty</groupId> - <artifactId>jetty-webapp</artifactId> - </dependency> - <!-- ATTN: this moves jersey-server from 1.7 to 1.12 --> <dependency> <groupId>com.sun.jersey</groupId> @@ -82,8 +76,8 @@ </dependency> <dependency> - <groupId>com.wordnik</groupId> - <artifactId>swagger-core_2.9.1</artifactId> + <groupId>io.swagger</groupId> + <artifactId>swagger-core</artifactId> <exclusions> <exclusion> <groupId>org.slf4j</groupId> @@ -92,8 +86,8 @@ </exclusions> </dependency> <dependency> - <groupId>com.wordnik</groupId> - <artifactId>swagger-jaxrs_2.9.1</artifactId> + <groupId>io.swagger</groupId> + <artifactId>swagger-jaxrs</artifactId> <exclusions> <exclusion> <groupId>javax.servlet</groupId> @@ -105,6 +99,7 @@ </exclusion> </exclusions> </dependency> + </dependencies> </project> http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab086feb/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocEndpoint.java ---------------------------------------------------------------------- diff --git a/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocEndpoint.java b/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocEndpoint.java index 790eb1f..9260c26 100644 --- a/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocEndpoint.java +++ b/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocEndpoint.java @@ -20,9 +20,9 @@ package org.apache.brooklyn.rest.apidoc; import java.util.Comparator; -import org.codehaus.jackson.annotate.JsonCreator; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; import com.wordnik.swagger.core.DocumentationEndPoint; http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab086feb/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocResource.java ---------------------------------------------------------------------- diff --git a/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocResource.java b/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocResource.java index 3461f79..2c0330e 100644 --- a/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocResource.java +++ b/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocResource.java @@ -40,14 +40,14 @@ import javax.ws.rs.core.UriInfo; import com.google.common.collect.ImmutableList; import com.sun.jersey.api.core.ResourceConfig; -import com.wordnik.swagger.core.Api; -import com.wordnik.swagger.core.ApiOperation; -import com.wordnik.swagger.core.Documentation; -import com.wordnik.swagger.core.DocumentationEndPoint; -import com.wordnik.swagger.jaxrs.ConfigReader; -import com.wordnik.swagger.jaxrs.HelpApi; -import com.wordnik.swagger.jaxrs.JaxrsApiReader; -import com.wordnik.swagger.jaxrs.JaxrsApiSpecParser; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.core.Documentation; +import io.swagger.core.DocumentationEndPoint; +import io.swagger.jaxrs.ConfigReader; +import io.swagger.jaxrs.HelpApi; +import io.swagger.jaxrs.JaxrsApiReader; +import io.swagger.jaxrs.JaxrsApiSpecParser; @Produces({"application/json"}) /** create a concrete subclass for this annotated with the Path where @@ -125,7 +125,8 @@ abstract public class ApidocResource { @GET @ApiOperation(value = "Returns list of all available API resource endpoints", - responseClass = "ApidocRoot", multiValueResponse = true) + response = ApidocRoot.class, + responseContainer = "List") public Response getAllApis( @Context ResourceConfig rc, @Context HttpHeaders headers, @@ -207,7 +208,8 @@ abstract public class ApidocResource { @GET @Path("/{resource}") @ApiOperation(value = "Returns detail on the given API resource endpoint", - responseClass = "DocumentationEndPoint", multiValueResponse = true) + response = DocumentationEndPoint.class, + responseContainer = "List") public Response details( @Context ResourceConfig rc, @Context HttpHeaders headers, http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab086feb/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocRoot.java ---------------------------------------------------------------------- diff --git a/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocRoot.java b/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocRoot.java index 9229be4..e88f1ed 100644 --- a/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocRoot.java +++ b/utils/rest-swagger/src/main/java/org/apache/brooklyn/rest/apidoc/ApidocRoot.java @@ -20,11 +20,11 @@ package org.apache.brooklyn.rest.apidoc; import java.util.List; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.annotate.JsonSetter; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonSetter; -import com.wordnik.swagger.core.Documentation; +import io.swagger.core.Documentation; @JsonIgnoreProperties({ "com$wordnik$swagger$core$Documentation$$apis", http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab086feb/utils/swagger-annotations/pom.xml ---------------------------------------------------------------------- diff --git a/utils/swagger-annotations/pom.xml b/utils/swagger-annotations/pom.xml index 36e5959..2664e2b 100644 --- a/utils/swagger-annotations/pom.xml +++ b/utils/swagger-annotations/pom.xml @@ -36,8 +36,8 @@ <dependencies> <dependency> - <groupId>com.wordnik</groupId> - <artifactId>swagger-core_2.9.1</artifactId> + <groupId>io.swagger</groupId> + <artifactId>swagger-annotations</artifactId> </dependency> </dependencies>
