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")

Reply via email to