You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ud...@apache.org on 2014/11/22 05:01:27 UTC

[1/2] stratos git commit: refactoring Stratos REST API resource urls

Repository: stratos
Updated Branches:
  refs/heads/rest-api-refact c12257623 -> eb7179d21


refactoring Stratos REST API resource urls


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

Branch: refs/heads/rest-api-refact
Commit: e14820f2d927de5e016c904ed4f6e75a183fbf03
Parents: c25dc5a
Author: Udara Liyanage <ud...@wso2.com>
Authored: Wed Nov 19 23:04:00 2014 +0530
Committer: Udara Liyanage <ud...@wso2.com>
Committed: Sat Nov 22 09:24:33 2014 +0530

----------------------------------------------------------------------
 .../rest/endpoint/api/StratosApiV41.java        | 442 ++++++++++---------
 1 file changed, 226 insertions(+), 216 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/e14820f2/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
index c22c640..5944fc1 100644
--- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
+++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
@@ -28,7 +28,6 @@ import org.apache.stratos.common.util.CommonUtil;
 import org.apache.stratos.manager.composite.application.beans.ApplicationDefinition;
 import org.apache.stratos.manager.dto.Cartridge;
 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;
@@ -47,7 +46,6 @@ import org.apache.stratos.rest.endpoint.bean.autoscaler.partition.Partition;
 import org.apache.stratos.rest.endpoint.bean.autoscaler.policy.autoscale.AutoscalePolicy;
 import org.apache.stratos.rest.endpoint.bean.autoscaler.policy.deployment.DeploymentPolicy;
 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.kubernetes.KubernetesGroup;
 import org.apache.stratos.rest.endpoint.bean.kubernetes.KubernetesHost;
 import org.apache.stratos.rest.endpoint.bean.kubernetes.KubernetesMaster;
@@ -80,7 +78,6 @@ import javax.ws.rs.core.UriInfo;
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.List;
-import java.util.UUID;
 
 import static javax.ws.rs.core.Response.ResponseBuilder;
 
@@ -131,7 +128,67 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @POST
-    @Path("/application/definition/")
+    @Path("/cartridges")
+    @Produces("application/json")
+    @Consumes("application/json")
+    @AuthorizationAction("/permission/admin/manage/add/cartridgeDefinition")
+    public Response deployCartridgeDefinition(CartridgeDefinitionBean cartridgeDefinitionBean)
+            throws RestAPIException {
+        StratosApiV41Utils.deployCartridge(cartridgeDefinitionBean, getConfigContext(), getUsername(),
+                getTenantDomain());
+        URI url = uriInfo.getAbsolutePathBuilder().path(cartridgeDefinitionBean.type).build();
+        return Response.created(url).build();
+
+    }
+
+    @GET
+    @Path("/cartridges")
+    @Produces("application/json")
+    @Consumes("application/json")
+    @AuthorizationAction("/permission/admin/manage/view/cartridge")
+    public Response getCartridges() throws RestAPIException {
+        List<Cartridge> cartridges = StratosApiV41Utils.getAvailableCartridges(null, null, getConfigContext());
+        ResponseBuilder rb = Response.ok();
+        rb.entity(cartridges.isEmpty() ? new Cartridge[0] : cartridges.toArray(new Cartridge[cartridges.size()]));
+        return rb.build();
+    }
+
+    @DELETE
+    @Path("/cartridges/{cartridgeType}")
+    @Produces("application/json")
+    @Consumes("application/json")
+    @AuthorizationAction("/permission/admin/manage/add/cartridgeDefinition")
+    public Response unDeployCartridgeDefinition(@PathParam("cartridgeType") String cartridgeType) throws RestAPIException {
+        StratosApiV41Utils.undeployCartridge(cartridgeType);
+        return Response.noContent().build();
+    }
+
+    @GET
+    @Path("/cartridges/singleTenant")
+    @Produces("application/json")
+    @Consumes("application/json")
+    @AuthorizationAction("/permission/admin/manage/view/cartridge")
+    public Response getSingleTenantCartridges() throws RestAPIException {
+        List<Cartridge> cartridges = StratosApiV41Utils.getAvailableCartridges(null, false, getConfigContext());
+        ResponseBuilder rb = Response.ok();
+        rb.entity(cartridges.isEmpty() ? new Cartridge[0] : cartridges.toArray(new Cartridge[cartridges.size()]));
+        return rb.build();
+    }
+
+    @GET
+    @Path("/cartridges/multiTenant")
+    @Produces("application/json")
+    @Consumes("application/json")
+    @AuthorizationAction("/permission/admin/manage/view/cartridge")
+    public Response getMultiTenantCartridges() throws RestAPIException {
+        List<Cartridge> cartridges = StratosApiV41Utils.getAvailableCartridges(null, true, getConfigContext());
+        ResponseBuilder rb = Response.ok();
+        rb.entity(cartridges.isEmpty() ? new Cartridge[0] : cartridges.toArray(new Cartridge[cartridges.size()]));
+        return rb.build();
+    }
+
+    @POST
+    @Path("/applications")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/protected/manage/monitor/tenants")
@@ -147,7 +204,7 @@ public class StratosApiV41 extends AbstractApi {
 
 
     @DELETE
-    @Path("/application/definition/{applicationId}")
+    @Path("/application/{applicationId}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/protected/manage/monitor/tenants")
@@ -162,31 +219,7 @@ public class StratosApiV41 extends AbstractApi {
 
 
     @POST
-    @Path("/cartridge/definition/")
-    @Produces("application/json")
-    @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/add/cartridgeDefinition")
-    public Response deployCartridgeDefinition(CartridgeDefinitionBean cartridgeDefinitionBean)
-            throws RestAPIException {
-        StratosApiV41Utils.deployCartridge(cartridgeDefinitionBean, getConfigContext(), getUsername(),
-                getTenantDomain());
-        URI url = uriInfo.getAbsolutePathBuilder().path(cartridgeDefinitionBean.type).build();
-        return Response.created(url).build();
-
-    }
-
-    @DELETE
-    @Path("/cartridge/definition/{cartridgeType}")
-    @Produces("application/json")
-    @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/add/cartridgeDefinition")
-    public Response unDeployCartridgeDefinition(@PathParam("cartridgeType") String cartridgeType) throws RestAPIException {
-        StratosApiV41Utils.undeployCartridge(cartridgeType);
-        return Response.noContent().build();
-    }
-
-    @POST
-    @Path("/group/definition/")
+    @Path("/groups")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/protected/manage/monitor/tenants")
@@ -199,7 +232,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/group/definition/{groupDefinitionName}")
+    @Path("/group/{groupDefinitionName}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/protected/manage/monitor/tenants")
@@ -235,7 +268,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @DELETE
-    @Path("/group/definition/{groupDefinitionName}")
+    @Path("/group/{groupDefinitionName}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/protected/manage/monitor/tenants")
@@ -248,70 +281,51 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @POST
-    @Path("/policy/deployment/partition")
+    @Path("/deploymentPolicies")
     @Produces("application/json")
     @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/add/partition")
-    public Response deployPartition(Partition partition)
-            throws RestAPIException {
-
-        StratosApiV41Utils.deployPartition(partition);
-        URI url = uriInfo.getAbsolutePathBuilder().path(partition.id).build();
-        return Response.created(url).build();
-    }
-
-    @POST
-    @Path("/policy/autoscale")
-    @Produces("application/json")
-    @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/add/autoscalingPolicy")
-    public Response deployAutoscalingPolicyDefintion(AutoscalePolicy autoscalePolicy)
+    @AuthorizationAction("/permission/admin/manage/add/deploymentPolicy")
+    public Response deployDeploymentPolicyDefinition(DeploymentPolicy deploymentPolicy)
             throws RestAPIException {
 
-        StratosApiV41Utils.deployAutoscalingPolicy(autoscalePolicy);
-        URI url = uriInfo.getAbsolutePathBuilder().path(autoscalePolicy.getId()).build();
+        StratosApiV41Utils.deployDeploymentPolicy(deploymentPolicy);
+        URI url = uriInfo.getAbsolutePathBuilder().path(deploymentPolicy.getId()).build();
         return Response.created(url).build();
     }
 
     @PUT
-    @Path("/policy/autoscale")
+    @Path("/deploymentPolicies")
     @Produces("application/json")
     @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/add/autoscalingPolicy")
-    public Response updateAutoscalingPolicyDefintion(AutoscalePolicy autoscalePolicy)
+    @AuthorizationAction("/permission/admin/manage/add/deploymentPolicy")
+    public Response updateDeploymentPolicyDefinition(DeploymentPolicy deploymentPolicy)
             throws RestAPIException {
 
-        StratosApiV41Utils.updateAutoscalingPolicy(autoscalePolicy);
+        StratosApiV41Utils.updateDeploymentPolicy(deploymentPolicy);
         return Response.ok().build();
     }
 
-    @POST
-    @Path("/policy/deployment")
+    @GET
+    @Path("/deploymentPolicies")
     @Produces("application/json")
     @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/add/deploymentPolicy")
-    public Response deployDeploymentPolicyDefinition(DeploymentPolicy deploymentPolicy)
-            throws RestAPIException {
-
-        StratosApiV41Utils.deployDeploymentPolicy(deploymentPolicy);
-        URI url = uriInfo.getAbsolutePathBuilder().path(deploymentPolicy.getId()).build();
-        return Response.created(url).build();
+    @AuthorizationAction("/permission/admin/manage/view/deploymentPolicy")
+    public Response getDeploymentPolicies() throws RestAPIException {
+        return Response.ok().entity(StratosApiV41Utils.getDeploymentPolicies()).build();
     }
 
-    @PUT
-    @Path("/policy/deployment")
+    @GET
+    @Path("/deploymentPolicies/{deploymentPolicyId}")
     @Produces("application/json")
     @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/add/deploymentPolicy")
-    public Response updateDeploymentPolicyDefinition(DeploymentPolicy deploymentPolicy)
+    @AuthorizationAction("/permission/admin/manage/view/deploymentPolicy")
+    public Response getDeploymentPolicy(@PathParam("deploymentPolicyId") String deploymentPolicyId)
             throws RestAPIException {
-
-        StratosApiV41Utils.updateDeploymentPolicy(deploymentPolicy);
-        return Response.ok().build();
+        return Response.ok().entity(StratosApiV41Utils.getDeploymentPolicy(deploymentPolicyId)).build();
     }
 
     @GET
-    @Path("/partition")
+    @Path("/partitions")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/partition")
@@ -319,8 +333,21 @@ public class StratosApiV41 extends AbstractApi {
         return Response.ok().entity(StratosApiV41Utils.getAvailablePartitions()).build();
     }
 
+    @POST
+    @Path("/partitions")
+    @Produces("application/json")
+    @Consumes("application/json")
+    @AuthorizationAction("/permission/admin/manage/add/partition")
+    public Response deployPartition(Partition partition)
+            throws RestAPIException {
+
+        StratosApiV41Utils.deployPartition(partition);
+        URI url = uriInfo.getAbsolutePathBuilder().path(partition.id).build();
+        return Response.created(url).build();
+    }
+
     @GET
-    @Path("/partition/{partitionId}")
+    @Path("/partitions/{partitionId}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/partition")
@@ -329,7 +356,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/partition/group/{deploymentPolicyId}")
+    @Path("/deploymentPolicies/{deploymentPolicyId}/partitionGroup")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/partition")
@@ -339,17 +366,17 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/partition/{deploymentPolicyId}/{partitionGroupId}")
+    @Path("/deploymentPolicies/{deploymentPolicyId}/partitionGroup/{partitionGroupId}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/partition")
-    public Response getPartitions(@PathParam("deploymentPolicyId") String deploymentPolicyId,
-                                  @PathParam("partitionGroupId") String partitionGroupId) throws RestAPIException {
+    public Response getPartitionGroup(@PathParam("deploymentPolicyId") String deploymentPolicyId,
+                                      @PathParam("partitionGroupId") String partitionGroupId) throws RestAPIException {
         return Response.ok().entity(StratosApiV41Utils.getPartitionsOfGroup(deploymentPolicyId, partitionGroupId)).build();
     }
 
     @GET
-    @Path("/partition/{deploymentPolicyId}")
+    @Path("/deploymentPolicies/{deploymentPolicyId}/partition")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/partition")
@@ -360,65 +387,60 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/policy/autoscale")
+    @Path("/autoscalePolicies")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/autoscalingPolicy")
-    public Response getAutoscalePolicies() throws RestAPIException {
+    public Response getAutoscalingPolicies() throws RestAPIException {
         return Response.ok().entity(StratosApiV41Utils.getAutoScalePolicies()).build();
     }
 
-    @GET
-    @Path("/policy/autoscale/{autoscalePolicyId}")
+    @POST
+    @Path("/autoscalePolicies")
     @Produces("application/json")
     @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/view/autoscalingPolicy")
-    public Response getAutoscalePolicies(@PathParam("autoscalePolicyId") String autoscalePolicyId)
+    @AuthorizationAction("/permission/admin/manage/add/autoscalingPolicy")
+    public Response deployAutoscalingPolicyDefintion(AutoscalePolicy autoscalePolicy)
             throws RestAPIException {
-        return Response.ok().entity(StratosApiV41Utils.getAutoScalePolicy(autoscalePolicyId)).build();
+
+        StratosApiV41Utils.deployAutoscalingPolicy(autoscalePolicy);
+        URI url = uriInfo.getAbsolutePathBuilder().path(autoscalePolicy.getId()).build();
+        return Response.created(url).build();
     }
 
-    @GET
-    @Path("/policy/deployment")
+    @PUT
+    @Path("/autoscalePolicies")
     @Produces("application/json")
     @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/view/deploymentPolicy")
-    public Response getDeploymentPolicies() throws RestAPIException {
-        return Response.ok().entity(StratosApiV41Utils.getDeploymentPolicies()).build();
+    @AuthorizationAction("/permission/admin/manage/add/autoscalingPolicy")
+    public Response updateAutoscalingPolicyDefintion(AutoscalePolicy autoscalePolicy)
+            throws RestAPIException {
+
+        StratosApiV41Utils.updateAutoscalingPolicy(autoscalePolicy);
+        return Response.ok().build();
     }
 
     @GET
-    @Path("/policy/deployment/{deploymentPolicyId}")
+    @Path("/autoscalePolicies/{autoscalePolicyId}")
     @Produces("application/json")
     @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/view/deploymentPolicy")
-    public Response getDeploymentPolicies(@PathParam("deploymentPolicyId") String deploymentPolicyId)
+    @AuthorizationAction("/permission/admin/manage/view/autoscalingPolicy")
+    public Response getAutoscalingPolicy(@PathParam("autoscalePolicyId") String autoscalePolicyId)
             throws RestAPIException {
-        return Response.ok().entity(StratosApiV41Utils.getDeploymentPolicy(deploymentPolicyId)).build();
+        return Response.ok().entity(StratosApiV41Utils.getAutoScalePolicy(autoscalePolicyId)).build();
     }
 
+
     @GET
-    @Path("{cartridgeType}/policy/deployment")
+    @Path("/cartridges/{cartridgeType}/deploymentPolicy")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/deploymentPolicy")
-    public Response getValidDeploymentPolicies(@PathParam("cartridgeType") String cartridgeType)
+    public Response getValidDeploymentPoliciesOfCartridge(@PathParam("cartridgeType") String cartridgeType)
             throws RestAPIException {
         return Response.ok().entity(StratosApiV41Utils.getDeploymentPolicies(cartridgeType)).build();
     }
 
-    @GET
-    @Path("/cartridge/tenanted/list")
-    @Produces("application/json")
-    @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/view/cartridge")
-    public Response getAvailableMultiTenantCartridges() throws RestAPIException {
-        List<Cartridge> cartridges = StratosApiV41Utils.getAvailableCartridges(null, true, getConfigContext());
-        ResponseBuilder rb = Response.ok();
-        rb.entity(cartridges.isEmpty() ? new Cartridge[0] : cartridges.toArray(new Cartridge[cartridges.size()]));
-        return rb.build();
-    }
-
 
     @GET
     @Path("/subsscriptions/{application_id}")
@@ -434,7 +456,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/application/")
+    @Path("/applications")
     @Consumes("application/json")
     @AuthorizationAction("/permission/protected/manage/monitor/tenants")
     public Response getApplications() throws RestAPIException {
@@ -469,49 +491,29 @@ public class StratosApiV41 extends AbstractApi {
         }
     }
 
-    @GET
-    @Path("/cartridge/list")
-    @Produces("application/json")
-    @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/view/cartridge")
-    public Response getAvailableSingleTenantCartridges() throws RestAPIException {
-        List<Cartridge> cartridges = StratosApiV41Utils.getAvailableCartridges(null, false, getConfigContext());
-        ResponseBuilder rb = Response.ok();
-        rb.entity(cartridges.isEmpty() ? new Cartridge[0] : cartridges.toArray(new Cartridge[cartridges.size()]));
-        return rb.build();
-    }
 
-    @GET
-    @Path("/cartridge/available/list")
-    @Produces("application/json")
-    @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/view/cartridge")
-    public Response getAvailableCartridges() throws RestAPIException {
-        List<Cartridge> cartridges = StratosApiV41Utils.getAvailableCartridges(null, null, getConfigContext());
-        ResponseBuilder rb = Response.ok();
-        rb.entity(cartridges.isEmpty() ? new Cartridge[0] : cartridges.toArray(new Cartridge[cartridges.size()]));
-        return rb.build();
-    }
-
-    @GET
-    @Path("/cartridge/list/subscribed")
-    @Produces("application/json")
-    @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/view/cartridge")
-    public Response getSubscribedCartridges() throws RestAPIException {
-        List<Cartridge> cartridgeList = StratosApiV41Utils.getSubscriptions(null, null, getConfigContext());
-        // Following is very important when working with axis2
-        ResponseBuilder rb = Response.ok();
-        rb.entity(cartridgeList.isEmpty() ? new Cartridge[0] : cartridgeList.toArray(new Cartridge[cartridgeList.size()]));
-        return rb.build();
-    }
+    /**
+     * Commenting this API since it is no longer valid.
+     *
+     * @GET
+     * @Path("/cartridge/list/subscribed")
+     * @Produces("application/json")
+     * @Consumes("application/json")
+     * @AuthorizationAction("/permission/admin/manage/view/cartridge") public Response getSubscribedCartridges() throws RestAPIException {
+     * List<Cartridge> cartridgeList = StratosApiV41Utils.getSubscriptions(null, null, getConfigContext());
+     * // Following is very important when working with axis2
+     * ResponseBuilder rb = Response.ok();
+     * rb.entity(cartridgeList.isEmpty() ? new Cartridge[0] : cartridgeList.toArray(new Cartridge[cartridgeList.size()]));
+     * return rb.build();
+     * }
+     */
 
     @GET
-    @Path("/cartridge/list/subscribed/group/{serviceGroup}")
+    @Path("/subscriptions/cartridges/groups/{serviceGroup}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/cartridge")
-    public Response getSubscribedCartridgesForServiceGroup(@PathParam("serviceGroup") String serviceGroup) throws RestAPIException {
+    public Response getSubscribedCartridgesOfServiceGroup(@PathParam("serviceGroup") String serviceGroup) throws RestAPIException {
         List<Cartridge> cartridgeList = StratosApiV41Utils.getSubscriptions(null, serviceGroup, getConfigContext());
         // Following is very important when working with axis2
         ResponseBuilder rb = Response.ok();
@@ -520,22 +522,22 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/cartridge/info/{subscriptionAlias}")
+    @Path("/subscriptions/{subscriptionAlias}/cartridges")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/cartridge")
-    public Response getCartridgeInfo(@PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException {
+    public Response getSubscribedCartridgeInfo(@PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException {
         ResponseBuilder rb = Response.ok();
         rb.entity(StratosApiV41Utils.getSubscription(subscriptionAlias, getConfigContext()));
         return rb.build();
     }
 
     @GET
-    @Path("/cartridge/available/info/{cartridgeType}")
+    @Path("/cartridges/{cartridgeType}/singleTenant")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/cartridge")
-    public Response getAvailableSingleTenantCartridgeInfo(@PathParam("cartridgeType") String cartridgeType)
+    public Response getAvailableSingleTenantCartridge(@PathParam("cartridgeType") String cartridgeType)
             throws RestAPIException {
         ResponseBuilder rb = Response.ok();
         rb.entity(StratosApiV41Utils.getAvailableCartridgeInfo(cartridgeType, null, getConfigContext()));
@@ -543,7 +545,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/cartridge/lb")
+    @Path("/cartridges/loadBalancer")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/cartridge")
@@ -553,12 +555,12 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/cartridge/active/{cartridgeType}/{subscriptionAlias}")
+    @Path("/subscriptions/{subscriptionAlias}/cartridges/{cartridgeType}/active")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/instance")
-    public Response getActiveInstances(@PathParam("cartridgeType") String cartridgeType,
-                                       @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException {
+    public Response getActiveMembersCountOfSubscription(@PathParam("cartridgeType") String cartridgeType,
+                                                        @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException {
         ResponseBuilder rb = Response.ok();
         rb.entity(StratosApiV41Utils.getActiveInstances(cartridgeType, subscriptionAlias, getConfigContext()));
         return rb.build();
@@ -579,26 +581,28 @@ public class StratosApiV41 extends AbstractApi {
 //    }
 
     @GET
-    @Path("/cluster/")
+    @Path("/clusters")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/cluster")
-    public Response getClustersForTenant() throws RestAPIException {
+    public Response getClustersOfTenant() throws RestAPIException {
         return Response.ok().entity(StratosApiV41Utils.getClustersForTenant(getConfigContext())).build();
     }
 
     @GET
-    @Path("/cluster/{cartridgeType}/")
+    @Path("/clusters/{cartridgeType}/")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/cluster")
-    public Response getClusters(@PathParam("cartridgeType") String cartridgeType) throws RestAPIException {
+    public Response getClustersOfCartridge(@PathParam("cartridgeType") String cartridgeType) throws RestAPIException {
 
         ResponseBuilder rb = Response.ok();
         rb.entity(StratosApiV41Utils.getClustersForTenantAndCartridgeType(getConfigContext(), cartridgeType));
         return rb.build();
     }
 
+    // /clusters/{cartridgeType} seems to do the same
+    @Deprecated
     @GET
     @Path("/cluster/service/{cartridgeType}/")
     @Produces("application/json")
@@ -611,19 +615,19 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/cluster/{cartridgeType}/{subscriptionAlias}")
+    @Path("/clusters/{subscriptionAlias}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/cluster")
-    public Response getCluster(@PathParam("cartridgeType") String cartridgeType,
-                               @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException, RestAPIException {
+    public Response getClusterOfSubscription(@PathParam("cartridgeType") String cartridgeType,
+                                             @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException {
         ResponseBuilder rb = Response.ok();
         rb.entity(StratosApiV41Utils.getCluster(cartridgeType, subscriptionAlias, getConfigContext()));
         return rb.build();
     }
 
     @GET
-    @Path("/cluster/clusterId/{clusterId}")
+    @Path("/clusters/{clusterId}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/cluster")
@@ -648,6 +652,27 @@ public class StratosApiV41 extends AbstractApi {
         return Response.ok().entity(cluster).build();
     }
 
+
+    @GET
+    @Path("/clusters/{subscriptionAlias}/loadBalancer")
+    @Consumes("application/json")
+    @AuthorizationAction("/permission/admin/manage/view/cluster")
+    public Response getLoadBalancerCluster(@PathParam("cartridgeType") String cartridgeType,
+                                           @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException {
+        if (log.isDebugEnabled()) {
+            log.debug(String.format("GET /cartridge/%s/subscription/%s/load-balancer-cluster", cartridgeType, subscriptionAlias));
+        }
+        Cartridge subscription = StratosApiV41Utils.getSubscription(subscriptionAlias, getConfigContext());
+        String lbClusterId = subscription.getLbClusterId();
+        if (log.isDebugEnabled()) {
+            log.debug(String.format("Load balancer cluster-id found: %s", lbClusterId));
+        }
+        if (StringUtils.isNotBlank(lbClusterId)) {
+            Response.fromResponse(getCluster(lbClusterId));
+        }
+        return Response.status(Response.Status.NOT_FOUND).build();
+    }
+
     @PUT
     @Path("/subscriptions/{subscriptionAlias}/properties")
     @Consumes("application/json")
@@ -661,7 +686,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @POST
-    @Path("/tenant")
+    @Path("/tenants")
     @Consumes("application/json")
     @Produces("application/json")
     @AuthorizationAction("/permission/protected/manage/modify/tenants")
@@ -749,7 +774,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @PUT
-    @Path("/tenant")
+    @Path("/tenants")
     @Consumes("application/json")
     @AuthorizationAction("/permission/protected/manage/modify/tenants")
     @SuperTenantService(true)
@@ -891,7 +916,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/tenant/{tenantDomain}")
+    @Path("/tenants/{tenantDomain}")
     @Consumes("application/json")
     @Produces("application/json")
     @AuthorizationAction("/permission/protected/manage/monitor/tenants")
@@ -951,7 +976,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @DELETE
-    @Path("/tenant/{tenantDomain}")
+    @Path("/tenants/{tenantDomain}")
     @Consumes("application/json")
     @Produces("application/json")
     @AuthorizationAction("/permission/protected/manage/monitor/tenants")
@@ -985,7 +1010,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/tenant/list")
+    @Path("/tenants")
     @Produces("application/json")
     @AuthorizationAction("/permission/protected/manage/monitor/tenants")
     @SuperTenantService(true)
@@ -1002,7 +1027,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("tenant/search/{tenantDomain}")
+    @Path("tenants/search/{tenantDomain}")
     @Consumes("application/json")
     @Produces("application/json")
     @AuthorizationAction("/permission/protected/manage/monitor/tenants")
@@ -1056,12 +1081,12 @@ public class StratosApiV41 extends AbstractApi {
         return Response.noContent().build();
     }
 
-    @POST
-    @Path("tenant/availability/{tenantDomain}")
+    @GET
+    @Path("tenants/{tenantDomain}")
     @Consumes("application/json")
     @AuthorizationAction("/permission/protected/manage/modify/tenants")
     @SuperTenantService(true)
-    public Response isDomainAvailable(@PathParam("tenantDomain") String tenantDomain) throws RestAPIException {
+    public Response getTenantByDomain(@PathParam("tenantDomain") String tenantDomain) throws RestAPIException {
         boolean available;
         try {
             available = CommonUtil.isDomainNameAvailable(tenantDomain);
@@ -1112,8 +1137,9 @@ public class StratosApiV41 extends AbstractApi {
         return Response.noContent().build();
     }
 
+    /*
     @POST
-    @Path("/service/definition")
+    @Path("/services")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/add/service")
@@ -1133,7 +1159,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/service")
+    @Path("/services")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/service")
@@ -1144,7 +1170,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/service/{serviceType}")
+    @Path("/services/{serviceType}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/service")
@@ -1159,6 +1185,7 @@ public class StratosApiV41 extends AbstractApi {
         return rb.build();
     }
 
+
     @GET
     @Path("/service/active")
     @Produces("application/json")
@@ -1183,6 +1210,8 @@ public class StratosApiV41 extends AbstractApi {
         return Response.noContent().build();
     }
 
+      */
+
     @POST
     @Path("/reponotification")
     @Produces("application/json")
@@ -1251,7 +1280,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @POST
-    @Path("/cartridge/{cartridgeType}/subscription/{subscriptionAlias}/domains")
+    @Path("/subscriptions/{subscriptionAlias}/domains")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/add/domain")
     public Response addSubscriptionDomains(@PathParam("cartridgeType") String cartridgeType,
@@ -1263,7 +1292,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/cartridge/{cartridgeType}/subscription/{subscriptionAlias}/domains")
+    @Path("/subscriptions/{subscriptionAlias}/domains")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/domain")
     public Response getSubscriptionDomains(@PathParam("cartridgeType") String cartridgeType, @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException {
@@ -1278,7 +1307,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/cartridge/{cartridgeType}/subscription/{subscriptionAlias}/domains/{domainName}")
+    @Path("/subscriptions/{subscriptionAlias}/domains/{domainName}")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/domain")
     public Response getSubscriptionDomain(@PathParam("cartridgeType") String cartridgeType, @PathParam("subscriptionAlias") String subscriptionAlias, @PathParam("domainName") String domainName) throws RestAPIException {
@@ -1292,7 +1321,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @DELETE
-    @Path("/cartridge/{cartridgeType}/subscription/{subscriptionAlias}/domains/{domainName}")
+    @Path("/subscriptions/{subscriptionAlias}/domains/{domainName}")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/add/domain")
     public Response removeSubscriptionDomain(@PathParam("cartridgeType") String cartridgeType,
@@ -1306,28 +1335,9 @@ public class StratosApiV41 extends AbstractApi {
         return Response.noContent().build();
     }
 
-    @GET
-    @Path("/cartridge/{cartridgeType}/subscription/{subscriptionAlias}/load-balancer-cluster")
-    @Consumes("application/json")
-    @AuthorizationAction("/permission/admin/manage/view/cluster")
-    public Response getLoadBalancerCluster(@PathParam("cartridgeType") String cartridgeType,
-                                           @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException {
-        if (log.isDebugEnabled()) {
-            log.debug(String.format("GET /cartridge/%s/subscription/%s/load-balancer-cluster", cartridgeType, subscriptionAlias));
-        }
-        Cartridge subscription = StratosApiV41Utils.getSubscription(subscriptionAlias, getConfigContext());
-        String lbClusterId = subscription.getLbClusterId();
-        if (log.isDebugEnabled()) {
-            log.debug(String.format("Load balancer cluster-id found: %s", lbClusterId));
-        }
-        if (StringUtils.isNotBlank(lbClusterId)) {
-            Response.fromResponse(getCluster(lbClusterId));
-        }
-        return Response.status(Response.Status.NOT_FOUND).build();
-    }
 
     @POST
-    @Path("/user")
+    @Path("/users")
     @Consumes("application/json")
     @Produces("application/json")
     @AuthorizationAction("/permission/admin/manage/add/users")
@@ -1347,7 +1357,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @DELETE
-    @Path("/user/{userName}")
+    @Path("/users/{userName}")
     @Consumes("application/json")
     @Produces("application/json")
     @AuthorizationAction("/permission/admin/manage/add/users")
@@ -1366,7 +1376,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @PUT
-    @Path("/user")
+    @Path("/users")
     @Consumes("application/json")
     @Produces("application/json")
     @AuthorizationAction("/permission/admin/manage/add/users")
@@ -1386,7 +1396,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/user/list")
+    @Path("/users")
     @Produces("application/json")
     @AuthorizationAction("/permission/admin/manage/add/users")
     public UserInfoBean[] listUsers() throws RestAPIException {
@@ -1429,11 +1439,11 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @POST
-    @Path("/kubernetes/deploy/group")
+    @Path("/kubernetesCluster")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/add/kubernetes")
-    public Response deployKubernetesGroup(KubernetesGroup kubernetesGroup) throws RestAPIException {
+    public Response deployKubernetesHostCluster(KubernetesGroup kubernetesGroup) throws RestAPIException {
 
         StratosApiV41Utils.deployKubernetesGroup(kubernetesGroup);
         URI url = uriInfo.getAbsolutePathBuilder().path(kubernetesGroup.getGroupId()).build();
@@ -1441,7 +1451,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @PUT
-    @Path("/kubernetes/deploy/host/{kubernetesGroupId}")
+    @Path("/kubernetesCluster/{kubernetesClusterId}/minion")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/add/kubernetes")
@@ -1454,7 +1464,7 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @PUT
-    @Path("/kubernetes/update/master")
+    @Path("/kubernetesCluster/{kubernetesClusterId}/master")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/add/kubernetes")
@@ -1484,21 +1494,21 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/kubernetes/group")
+    @Path("/kubernetesCluster")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/kubernetes")
-    public Response getKubernetesGroups() throws RestAPIException {
+    public Response getKubernetesHostClusters() throws RestAPIException {
         return Response.ok().entity(StratosApiV41Utils.getAvailableKubernetesGroups()).build();
     }
 
 
     @GET
-    @Path("/kubernetes/group/{kubernetesGroupId}")
+    @Path("/kubernetesCluster/{kubernetesClusterId}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/kubernetes")
-    public Response getKubernetesGroup(@PathParam("kubernetesGroupId") String kubernetesGroupId) throws RestAPIException {
+    public Response getKubernetesHostCluster(@PathParam("kubernetesGroupId") String kubernetesGroupId) throws RestAPIException {
         try {
             return Response.ok().entity(StratosApiV41Utils.getKubernetesGroup(kubernetesGroupId)).build();
         } catch (RestAPIException e) {
@@ -1507,11 +1517,11 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/kubernetes/hosts/{kubernetesGroupId}")
+    @Path("/kubernetesCluster/{kubernetesClusterId}/hosts")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/kubernetes")
-    public Response getKubernetesHosts(@PathParam("kubernetesGroupId") String kubernetesGroupId) throws RestAPIException {
+    public Response getKubernetesHostsOfKubernetesCluster(@PathParam("kubernetesGroupId") String kubernetesGroupId) throws RestAPIException {
         try {
             return Response.ok().entity(StratosApiV41Utils.getKubernetesHosts(kubernetesGroupId)).build();
         } catch (RestAPIException e) {
@@ -1520,11 +1530,11 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @GET
-    @Path("/kubernetes/master/{kubernetesGroupId}")
+    @Path("/kubernetesCluster/{kubernetesClusterId}/master")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/view/kubernetes")
-    public Response getKubernetesMaster(@PathParam("kubernetesGroupId") String kubernetesGroupId) throws RestAPIException {
+    public Response getKubernetesMasterOfKubernetesCluster(@PathParam("kubernetesGroupId") String kubernetesGroupId) throws RestAPIException {
         try {
             return Response.ok().entity(StratosApiV41Utils.getKubernetesMaster(kubernetesGroupId)).build();
         } catch (RestAPIException e) {
@@ -1533,11 +1543,11 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @DELETE
-    @Path("/kubernetes/group/{kubernetesGroupId}")
+    @Path("/kubernetesCluster/{kubernetesClusterId}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/add/kubernetes")
-    public Response unDeployKubernetesGroup(@PathParam("kubernetesGroupId") String kubernetesGroupId) throws RestAPIException {
+    public Response unDeployKubernetesHostCluster(@PathParam("kubernetesGroupId") String kubernetesGroupId) throws RestAPIException {
         try {
             StratosApiV41Utils.undeployKubernetesGroup(kubernetesGroupId);
         } catch (RestAPIException e) {
@@ -1547,11 +1557,11 @@ public class StratosApiV41 extends AbstractApi {
     }
 
     @DELETE
-    @Path("/kubernetes/host/{kubernetesHostId}")
+    @Path("/kubernetesCluster/{kubernetesClusterId}/hosts/{hostId}")
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/admin/manage/add/kubernetes")
-    public Response unDeployKubernetesHost(@PathParam("kubernetesHostId") String kubernetesHostId) throws RestAPIException {
+    public Response unDeployKubernetesHostOfKubernetesCluster(@PathParam("kubernetesHostId") String kubernetesHostId) throws RestAPIException {
         try {
             StratosApiV41Utils.undeployKubernetesHost(kubernetesHostId);
         } catch (RestAPIException e) {


[2/2] stratos git commit: Merge branch 'rest-api-refact' of https://git-wip-us.apache.org/repos/asf/stratos into rest-api-refact

Posted by ud...@apache.org.
Merge branch 'rest-api-refact' of https://git-wip-us.apache.org/repos/asf/stratos into rest-api-refact

Conflicts:
	components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java


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

Branch: refs/heads/rest-api-refact
Commit: eb7179d21d109b06705419c79203799d976fa878
Parents: e14820f c122576
Author: Udara Liyanage <ud...@wso2.com>
Authored: Sat Nov 22 09:31:07 2014 +0530
Committer: Udara Liyanage <ud...@wso2.com>
Committed: Sat Nov 22 09:31:07 2014 +0530

----------------------------------------------------------------------

----------------------------------------------------------------------