Repository: stratos Updated Branches: refs/heads/4.0.0-grouping 5cf073010 -> daa189456
adding getSubscriptionsOfApplication to rest api Project: http://git-wip-us.apache.org/repos/asf/stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/ec185f20 Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/ec185f20 Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/ec185f20 Branch: refs/heads/4.0.0-grouping Commit: ec185f200e1303302edb6e3a70154ca7619f9422 Parents: 66042d4 Author: Udara Liyanage <[email protected]> Authored: Thu Sep 25 16:24:10 2014 +0530 Committer: Udara Liyanage <[email protected]> Committed: Thu Sep 25 16:24:10 2014 +0530 ---------------------------------------------------------------------- .../rest/endpoint/services/ServiceUtils.java | 19 ++++++++++++++----- .../rest/endpoint/services/StratosAdmin.java | 18 +++++++++++++++--- 2 files changed, 29 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/stratos/blob/ec185f20/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java index 4f102e3..d5744a4 100644 --- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java +++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java @@ -24,17 +24,17 @@ import org.apache.commons.lang.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy; -import org.apache.stratos.cloud.controller.stub.pojo.application.ApplicationContext; -import org.apache.stratos.cloud.controller.stub.*; import org.apache.stratos.autoscaler.stub.AutoScalerServiceInvalidPartitionExceptionException; import org.apache.stratos.autoscaler.stub.AutoScalerServiceInvalidPolicyExceptionException; +import org.apache.stratos.cloud.controller.stub.*; import org.apache.stratos.cloud.controller.stub.pojo.CartridgeConfig; import org.apache.stratos.cloud.controller.stub.pojo.CartridgeInfo; -import org.apache.stratos.manager.composite.application.beans.CompositeAppDefinition; -import org.apache.stratos.manager.composite.application.CompositeApplicationManager; import org.apache.stratos.cloud.controller.stub.pojo.Property; +import org.apache.stratos.cloud.controller.stub.pojo.application.ApplicationContext; import org.apache.stratos.manager.client.AutoscalerServiceClient; import org.apache.stratos.manager.client.CloudControllerServiceClient; +import org.apache.stratos.manager.composite.application.CompositeApplicationManager; +import org.apache.stratos.manager.composite.application.beans.CompositeAppDefinition; import org.apache.stratos.manager.deploy.service.Service; import org.apache.stratos.manager.deploy.service.ServiceDeploymentManager; import org.apache.stratos.manager.dto.Cartridge; @@ -44,6 +44,7 @@ import org.apache.stratos.manager.grouping.definitions.ServiceGroupDefinition; import org.apache.stratos.manager.grouping.manager.ServiceGroupingManager; import org.apache.stratos.manager.manager.CartridgeSubscriptionManager; import org.apache.stratos.manager.repository.RepositoryNotification; +import org.apache.stratos.manager.subscription.ApplicationSubscription; import org.apache.stratos.manager.subscription.CartridgeSubscription; import org.apache.stratos.manager.subscription.DataCartridgeSubscription; import org.apache.stratos.manager.subscription.SubscriptionData; @@ -70,7 +71,6 @@ import org.apache.stratos.rest.endpoint.exception.RestAPIException; import javax.ws.rs.core.Response; import javax.ws.rs.core.Response.Status; - import java.rmi.RemoteException; import java.util.*; import java.util.regex.Pattern; @@ -299,6 +299,15 @@ public class ServiceUtils { throw new RestAPIException(e); } } + + static ApplicationSubscription getApplicationSubscriptions(String appId, ConfigurationContext ctxt) throws RestAPIException { + CartridgeSubscriptionManager subscriptionMgr = new CartridgeSubscriptionManager(); + try { + return subscriptionMgr.getApplicationSubscription(appId, ApplicationManagementUtil.getTenantId(ctxt)); + } catch (ApplicationSubscriptionException e) { + throw new RestAPIException(e); + } + } static void unDeployApplication(String appId, ConfigurationContext ctxt, String userName, String tenantDomain) throws RestAPIException { http://git-wip-us.apache.org/repos/asf/stratos/blob/ec185f20/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 a3cfa31..d8e5a40 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 @@ -31,8 +31,8 @@ import org.apache.stratos.manager.dto.SubscriptionInfo; import org.apache.stratos.manager.exception.DomainMappingExistsException; import org.apache.stratos.manager.exception.ServiceDoesNotExistException; import org.apache.stratos.manager.grouping.definitions.ServiceGroupDefinition; +import org.apache.stratos.manager.subscription.ApplicationSubscription; import org.apache.stratos.manager.subscription.CartridgeSubscription; -import org.apache.stratos.manager.subscription.SubscriptionDomain; import org.apache.stratos.rest.endpoint.ServiceHolder; import org.apache.stratos.rest.endpoint.Utils; import org.apache.stratos.rest.endpoint.annotation.AuthorizationAction; @@ -46,7 +46,6 @@ import org.apache.stratos.rest.endpoint.bean.autoscaler.policy.deployment.Deploy import org.apache.stratos.rest.endpoint.bean.cartridge.definition.CartridgeDefinitionBean; import org.apache.stratos.rest.endpoint.bean.cartridge.definition.ServiceDefinitionBean; import org.apache.stratos.rest.endpoint.bean.repositoryNotificationInfoBean.Payload; -import org.apache.stratos.rest.endpoint.bean.repositoryNotificationInfoBean.Repository; import org.apache.stratos.rest.endpoint.bean.subscription.domain.SubscriptionDomainBean; import org.apache.stratos.rest.endpoint.bean.topology.Cluster; import org.apache.stratos.rest.endpoint.exception.RestAPIException; @@ -71,7 +70,6 @@ import javax.ws.rs.core.Context; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import javax.ws.rs.core.UriInfo; - import java.net.URI; import java.util.ArrayList; import java.util.List; @@ -437,6 +435,20 @@ public class StratosAdmin extends AbstractAdmin { return rb.build(); } + + @GET + @Path("/subsscriptions/{application_id}") + @Produces("application/json") + @Consumes("application/json") + @AuthorizationAction("/permission/protected/manage/monitor/tenants") + public Response getSubscriptionsOfApplication(@PathParam("application_id") String applicationId) throws RestAPIException { + ApplicationSubscription subscriptions = ServiceUtils.getApplicationSubscriptions(applicationId, getConfigContext()); + if(subscriptions == null){ + return Response.status(Response.Status.NOT_FOUND).build(); + } + return Response.ok().entity(subscriptions).build(); + } + @GET @Path("/cartridge/list") @Produces("application/json")
