Repository: incubator-stratos Updated Branches: refs/heads/master f11734824 -> 5ebdf863b
changing return type of REST endpints to Response Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/ed1ddd56 Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/ed1ddd56 Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/ed1ddd56 Branch: refs/heads/master Commit: ed1ddd567206b6f1c0112c19c1aa358d14a4fce6 Parents: 1ff07c6 Author: Udara Liyanage <[email protected]> Authored: Thu May 8 19:12:52 2014 +0530 Committer: Udara Liyanage <[email protected]> Committed: Thu May 8 19:12:52 2014 +0530 ---------------------------------------------------------------------- .../manager/CartridgeSubscriptionManager.java | 4 ++- .../subscription/SubscriptionDomain.java | 4 ++- .../rest/endpoint/services/StratosAdmin.java | 31 +++++++++++++------- 3 files changed, 26 insertions(+), 13 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ed1ddd56/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/manager/CartridgeSubscriptionManager.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/manager/CartridgeSubscriptionManager.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/manager/CartridgeSubscriptionManager.java index 1a7fbf3..5f4b7e0 100644 --- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/manager/CartridgeSubscriptionManager.java +++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/manager/CartridgeSubscriptionManager.java @@ -21,6 +21,7 @@ package org.apache.stratos.manager.manager; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.apache.openjpa.util.java$util$ArrayList$proxy; import org.apache.stratos.cloud.controller.stub.CloudControllerServiceUnregisteredCartridgeExceptionException; import org.apache.stratos.cloud.controller.stub.pojo.CartridgeInfo; import org.apache.stratos.cloud.controller.stub.pojo.LoadbalancerConfig; @@ -457,7 +458,8 @@ public class CartridgeSubscriptionManager { throw new ADCException("Cartridge subscription not found"); } - return (List<SubscriptionDomain>) cartridgeSubscription.getSubscriptionDomains(); + //return (List<SubscriptionDomain>) cartridgeSubscription.getSubscriptionDomains(); + return new ArrayList<SubscriptionDomain>(cartridgeSubscription.getSubscriptionDomains()); } catch (Exception e) { String errorMsg = "Could not get domains of cartridge subscription: [tenant-id] " + tenantId + " [subscription-alias] " + subscriptionAlias; log.error(errorMsg); http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ed1ddd56/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/SubscriptionDomain.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/SubscriptionDomain.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/SubscriptionDomain.java index 8c68f33..9fed0b0 100644 --- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/SubscriptionDomain.java +++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/SubscriptionDomain.java @@ -19,10 +19,12 @@ package org.apache.stratos.manager.subscription; +import java.io.Serializable; + /** * Subscription domain definition. */ -public class SubscriptionDomain { +public class SubscriptionDomain implements Serializable{ private final String domainName; private final String applicationContext; http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ed1ddd56/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/StratosAdmin.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/StratosAdmin.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/StratosAdmin.java index b766ffa..7a2c175 100644 --- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/StratosAdmin.java +++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/StratosAdmin.java @@ -1025,31 +1025,41 @@ public class StratosAdmin extends AbstractAdmin { @Path("/cartridge/{cartridgeType}/subscription/{subscriptionAlias}/domains") @Consumes("application/json") @AuthorizationAction("/permission/protected/manage/monitor/tenants") - public StratosAdminResponse addSubscriptionDomains(@PathParam("cartridgeType") String cartridgeType, - @PathParam("subscriptionAlias") String subscriptionAlias, - SubscriptionDomainRequest request) throws RestAPIException { + public Response addSubscriptionDomains(@PathParam("cartridgeType") String cartridgeType, + @PathParam("subscriptionAlias") String subscriptionAlias, + SubscriptionDomainRequest request) throws RestAPIException { - return ServiceUtils.addSubscriptionDomains(getConfigContext(), cartridgeType, subscriptionAlias, request); + StratosAdminResponse stratosAdminResponse = ServiceUtils.addSubscriptionDomains(getConfigContext(), cartridgeType, subscriptionAlias, request); + return Response.ok().entity(stratosAdminResponse).build(); } @GET @Path("/cartridge/{cartridgeType}/subscription/{subscriptionAlias}/domains") @Consumes("application/json") @AuthorizationAction("/permission/protected/manage/monitor/tenants") - public SubscriptionDomainBean[] getSubscriptionDomains(@PathParam("cartridgeType") String cartridgeType, + public Response getSubscriptionDomains(@PathParam("cartridgeType") String cartridgeType, @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException { + SubscriptionDomainBean[] subscriptionDomainBean = ServiceUtils.getSubscriptionDomains(getConfigContext(), cartridgeType, subscriptionAlias).toArray(new SubscriptionDomainBean[0]); - return ServiceUtils.getSubscriptionDomains(getConfigContext(), cartridgeType, subscriptionAlias).toArray(new SubscriptionDomainBean[0]); + if(subscriptionDomainBean.length == 0){ + return Response.status(Response.Status.NOT_FOUND).build(); + }else{ + return Response.ok().entity(subscriptionDomainBean).build(); + } } @GET @Path("/cartridge/{cartridgeType}/subscription/{subscriptionAlias}/domains/{domainName}") @Consumes("application/json") @AuthorizationAction("/permission/protected/manage/monitor/tenants") - public SubscriptionDomainBean getSubscriptionDomain(@PathParam("cartridgeType") String cartridgeType, - @PathParam("subscriptionAlias") String subscriptionAlias, @PathParam("domainName") String domainName) throws RestAPIException { - - return ServiceUtils.getSubscriptionDomain(getConfigContext(), cartridgeType, subscriptionAlias, domainName); + public Response getSubscriptionDomain(@PathParam("cartridgeType") String cartridgeType, + @PathParam("subscriptionAlias") String subscriptionAlias, @PathParam("domainName") String domainName) throws RestAPIException { + SubscriptionDomainBean subscriptionDomainBean = ServiceUtils.getSubscriptionDomain(getConfigContext(), cartridgeType, subscriptionAlias, domainName); + if(subscriptionDomainBean.domainName == null){ + return Response.status(Response.Status.NOT_FOUND).build(); + }else{ + return Response.ok().entity(subscriptionDomainBean).build(); + } } @DELETE @@ -1059,7 +1069,6 @@ public class StratosAdmin extends AbstractAdmin { public StratosAdminResponse removeSubscriptionDomain(@PathParam("cartridgeType") String cartridgeType, @PathParam("subscriptionAlias") String subscriptionAlias, @PathParam("domainName") String domainName) throws RestAPIException { - return ServiceUtils.removeSubscriptionDomain(getConfigContext(), cartridgeType, subscriptionAlias, domainName); } }
