Updated Branches: refs/heads/master 2274042a4 -> 033086a11
adding active instances method to rest endpoint Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/033086a1 Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/033086a1 Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/033086a1 Branch: refs/heads/master Commit: 033086a11cfe6e59141941330caafcb26d87fcee Parents: 2274042 Author: rekathiru <[email protected]> Authored: Tue Feb 11 09:51:25 2014 +0530 Committer: rekathiru <[email protected]> Committed: Tue Feb 11 09:51:25 2014 +0530 ---------------------------------------------------------------------- .../stratos/rest/endpoint/services/ServiceUtils.java | 14 ++++++++++++++ .../stratos/rest/endpoint/services/StratosAdmin.java | 11 +++++++++++ 2 files changed, 25 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/033086a1/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 5bc3ecb..7c89955 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 @@ -40,6 +40,7 @@ import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy; import org.apache.stratos.cloud.controller.pojo.Properties; import org.apache.stratos.messaging.domain.topology.Cluster; import org.apache.stratos.messaging.domain.topology.Member; +import org.apache.stratos.messaging.domain.topology.MemberStatus; import org.apache.stratos.messaging.util.Constants; import org.apache.stratos.rest.endpoint.bean.autoscaler.partition.Partition; import org.apache.stratos.rest.endpoint.bean.autoscaler.partition.PartitionGroup; @@ -450,6 +451,7 @@ public class ServiceUtils { cartridge.setDescription(cartridgeInfo.getDescription()); cartridge.setVersion(cartridgeInfo.getVersion()); cartridge.setMultiTenant(cartridgeInfo.getMultiTenant()); + //cartridge.setDefaultAutoscalingPolicy(cartridgeInfo.getDefaultAutoscalingPolicy()); //cartridge.setStatus(CartridgeConstants.NOT_SUBSCRIBED); cartridge.setCartridgeAlias("-"); //cartridge.setActiveInstances(0); @@ -569,6 +571,18 @@ public class ServiceUtils { return cartridge; } + + static int getActiveInstances(String cartridgeType, String cartridgeAlias, ConfigurationContext configurationContext) throws ADCException { + int noOfActiveInstances = 0; + Cluster cluster = TopologyClusterInformationModel.getInstance().getCluster(ApplicationManagementUtil.getTenantId(configurationContext) + ,cartridgeType , cartridgeAlias); + for(Member member : cluster.getMembers()) { + if(member.getStatus().toString().equals(MemberStatus.Activated)) { + noOfActiveInstances ++; + } + } + return noOfActiveInstances; + } private static Cartridge getCartridgeFromSubscription (CartridgeSubscription subscription) throws ADCException { http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/033086a1/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 42c4fe1..da94748 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 @@ -304,6 +304,17 @@ public class StratosAdmin extends AbstractAdmin { return ServiceUtils.getSubscription(subscriptionAlias, getConfigContext()); } + @GET + @Path("/cartridge/active/{cartridgeType}/{subscriptionAlias}") + @Produces("application/json") + @Consumes("application/json") + @AuthorizationAction("/permission/protected/manage/monitor/tenants") + public int getActiveInstances(@PathParam("cartridgeType") String cartridgeType, + @PathParam("subscriptionAlias") String subscriptionAlias) throws ADCException { + return ServiceUtils.getActiveInstances(cartridgeType, subscriptionAlias, getConfigContext()); + } + + @POST @Path("/cartridge/subscribe") @Produces("application/json")
