Updated Branches:
  refs/heads/master b9adfbf0c -> 1c2453a4a

adding a method to retreive LB cartridges


Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/1c2453a4
Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/1c2453a4
Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/1c2453a4

Branch: refs/heads/master
Commit: 1c2453a4a7961e2d24752136aa2f0c5177b6cf69
Parents: b9adfbf
Author: rekathiru <[email protected]>
Authored: Tue Feb 11 14:31:37 2014 +0530
Committer: rekathiru <[email protected]>
Committed: Tue Feb 11 14:31:37 2014 +0530

----------------------------------------------------------------------
 .../stratos/rest/endpoint/mock/MockContext.java  |  4 ++++
 .../rest/endpoint/mock/StratosTestAdmin.java     |  9 ++++++++-
 .../rest/endpoint/services/ServiceUtils.java     | 19 ++++++++++++++++++-
 .../rest/endpoint/services/StratosAdmin.java     | 10 ++++++++++
 .../main/webapp/stratos/WEB-INF/cxf-servlet.xml  |  2 +-
 5 files changed, 41 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/1c2453a4/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/MockContext.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/MockContext.java
 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/MockContext.java
index b3897ce..65ca093 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/MockContext.java
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/MockContext.java
@@ -130,6 +130,10 @@ public class MockContext {
           return tenantMap.get(tenantDomain);
     }
 
+    public Cartridge getCartridgeInfo(String alias){
+          return subscribedCartridges.get(alias);
+    }
+
     public void deleteTenant(String tenantDomain) {
           tenantMap.remove(tenantDomain);
     }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/1c2453a4/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/StratosTestAdmin.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/StratosTestAdmin.java
 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/StratosTestAdmin.java
index 79704f1..491a424 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/StratosTestAdmin.java
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/StratosTestAdmin.java
@@ -99,7 +99,14 @@ public class StratosTestAdmin {
     }
 
 
-
+    @GET
+    @Path("/cartridge/info/{subscriptionAlias}")
+    @Produces("application/json")
+    @Consumes("application/json")
+    @AuthorizationAction("/permission/protected/manage/monitor/tenants")
+    public Cartridge getCartridgeInfo(@PathParam("subscriptionAlias") String 
subscriptionAlias) throws ADCException {
+        return MockContext.getInstance().getCartridgeInfo(subscriptionAlias);
+    }
 
 
     @POST

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/1c2453a4/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 8fd6d52..3edb420 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
@@ -38,6 +38,7 @@ import org.apache.stratos.manager.utils.CartridgeConstants;
 import org.apache.stratos.manager.utils.PersistenceManager;
 import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
 import org.apache.stratos.cloud.controller.pojo.Properties;
+import org.apache.stratos.cloud.controller.pojo.Property;
 import org.apache.stratos.messaging.domain.topology.Cluster;
 import org.apache.stratos.messaging.domain.topology.Member;
 import org.apache.stratos.messaging.domain.topology.MemberStatus;
@@ -408,6 +409,16 @@ public class ServiceUtils {
          throw new RestAPIException("cannot find the required cartridge Type") 
;
     }
 
+    static Cartridge getAvailableLbCartridges(Boolean multiTenant, 
ConfigurationContext configurationContext) throws ADCException, 
RestAPIException {
+       List<Cartridge> cartridges = getAvailableCartridges(null, multiTenant, 
configurationContext);
+        for(Cartridge cartridge : cartridges) {
+            /*if(cartridge.getCartridgeType().equals()) {
+                return cartridge;
+            }*/
+        }
+         throw new RestAPIException("cannot find the required cartridge Type") 
;
+    }
+
     static List<Cartridge> getAvailableCartridges(String 
cartridgeSearchString, Boolean multiTenant, ConfigurationContext 
configurationContext) throws ADCException {
         List<Cartridge> cartridges = new ArrayList<Cartridge>();
 
@@ -462,12 +473,18 @@ public class ServiceUtils {
                     cartridge.setVersion(cartridgeInfo.getVersion());
                     cartridge.setMultiTenant(cartridgeInfo.getMultiTenant());
                     cartridge.setHostName(cartridgeInfo.getHostName());
-                    
//cartridge.setDefaultAutoscalingPolicy(cartridgeInfo.getDefaultAutoscalingPolicy());
                     //cartridge.setStatus(CartridgeConstants.NOT_SUBSCRIBED);
                     cartridge.setCartridgeAlias("-");
+                    for(Property property: 
cartridgeInfo.getLbConfig().getProperties().getProperties()) {
+                        if(property.getName().equals("load.balancer")) {
+                            cartridge.setLoadBalancer(true);
+                        }
+
+                    }
                     //cartridge.setActiveInstances(0);
                     cartridges.add(cartridge);
 
+
                     if (cartridgeInfo.getMultiTenant() && 
!allowMultipleSubscription) {
                         // If the cartridge is multi-tenant. We should not let 
users
                         // createSubscription twice.

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/1c2453a4/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 c85065e..ed3faa8 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
@@ -315,6 +315,16 @@ public class StratosAdmin extends AbstractAdmin {
     }
 
     @GET
+    @Path("/cartridge/lb")
+    @Produces("application/json")
+    @Consumes("application/json")
+    @AuthorizationAction("/permission/protected/manage/monitor/tenants")
+    public Cartridge getAvailableLbCartridges()
+                                            throws ADCException, 
RestAPIException {
+        return ServiceUtils.getAvailableLbCartridges(false, 
getConfigContext());
+    }
+
+    @GET
     @Path("/cartridge/active/{cartridgeType}/{subscriptionAlias}")
     @Produces("application/json")
     @Consumes("application/json")

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/1c2453a4/components/org.apache.stratos.rest.endpoint/src/main/webapp/stratos/WEB-INF/cxf-servlet.xml
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/webapp/stratos/WEB-INF/cxf-servlet.xml
 
b/components/org.apache.stratos.rest.endpoint/src/main/webapp/stratos/WEB-INF/cxf-servlet.xml
index c2b252c..1d682c3 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/webapp/stratos/WEB-INF/cxf-servlet.xml
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/webapp/stratos/WEB-INF/cxf-servlet.xml
@@ -66,7 +66,7 @@
                 <value>member</value>
                 <value>hostNames</value>
                 <value>portMappings</value>
-                <value>cartridge</value>
+                <!--value>cartridge</value-->
             </list>
         </property>
     </bean>

Reply via email to