Repository: stratos Updated Branches: refs/heads/docker-integration e5f2e8b91 -> 91fd66206
Added AS API to retrieve KubernetesGroup object from groupId Project: http://git-wip-us.apache.org/repos/asf/stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/6652b473 Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/6652b473 Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/6652b473 Branch: refs/heads/docker-integration Commit: 6652b473545ad2efb07bcd2a5fe3a40bc78dedec Parents: 29bf5f1 Author: Akila Perera <[email protected]> Authored: Fri Sep 12 20:08:55 2014 +0530 Committer: Akila Perera <[email protected]> Committed: Fri Sep 12 20:08:55 2014 +0530 ---------------------------------------------------------------------- .../autoscaler/api/AutoScalerServiceImpl.java | 6 + .../interfaces/AutoScalerServiceInterface.java | 7 + .../bean/util/converter/PojoConverter.java | 27 +-- .../rest/endpoint/services/ServiceUtils.java | 166 +++++++------- .../rest/endpoint/services/StratosAdmin.java | 224 +++++++++---------- .../src/main/resources/AutoScalerService.wsdl | 71 +++++- 6 files changed, 281 insertions(+), 220 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/stratos/blob/6652b473/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java index a81618e..209e380 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java @@ -128,6 +128,12 @@ public class AutoScalerServiceImpl implements AutoScalerServiceInterface { } @Override + public KubernetesGroup getKubernetesGroup(String kubernetesGroupId) { + //TODO + return null; + } + + @Override public KubernetesMaster getMasterForKubernetesGroup(String kubernetesGroupId) { //TODO return null; http://git-wip-us.apache.org/repos/asf/stratos/blob/6652b473/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java index d53a2ed..fb1e69f 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java @@ -65,6 +65,13 @@ public interface AutoScalerServiceInterface { public KubernetesGroup[] getAllKubernetesGroups(); /** + * Retrieves Kubernetes Group for given Kubernetes Group ID. + * + * @param kubernetesGroupId + */ + public KubernetesGroup getKubernetesGroup(String kubernetesGroupId); + + /** * Retrieves Kubernetes Master for given Kubernetes Group ID. * * @param kubernetesGroupId http://git-wip-us.apache.org/repos/asf/stratos/blob/6652b473/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/util/converter/PojoConverter.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/util/converter/PojoConverter.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/util/converter/PojoConverter.java index e492c65..bf8d9d9 100644 --- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/util/converter/PojoConverter.java +++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/util/converter/PojoConverter.java @@ -23,9 +23,6 @@ import org.apache.commons.lang.StringUtils; import org.apache.stratos.autoscaler.stub.kubernetes.PropertiesE; import org.apache.stratos.autoscaler.stub.kubernetes.PropertyE; import org.apache.stratos.cloud.controller.stub.pojo.*; -import org.apache.stratos.cloud.controller.stub.pojo.Properties; -import org.apache.stratos.cloud.controller.stub.pojo.Property; -import org.apache.stratos.common.kubernetes.*; import org.apache.stratos.manager.deploy.service.Service; import org.apache.stratos.manager.subscription.SubscriptionDomain; import org.apache.stratos.messaging.domain.topology.Cluster; @@ -91,24 +88,24 @@ public class PojoConverter { if (cartridgeDefinitionBean.property != null && !cartridgeDefinitionBean.property.isEmpty()) { cartridgeConfig.setProperties(getProperties(cartridgeDefinitionBean.property)); } - - if(cartridgeDefinitionBean.container != null) { - cartridgeConfig.setContainer(getContainer(cartridgeDefinitionBean.container)); + + if (cartridgeDefinitionBean.container != null) { + cartridgeConfig.setContainer(getContainer(cartridgeDefinitionBean.container)); } return cartridgeConfig; } - private static Container getContainer(ContainerBean container) { - Container cn = new Container(); - cn.setDockerFileRepo(container.dockerfileRepo); - cn.setImageName(container.imageName); - //cn.setProperties(getProperties(container.property)); - return cn; - } + private static Container getContainer(ContainerBean container) { + Container cn = new Container(); + cn.setDockerFileRepo(container.dockerfileRepo); + cn.setImageName(container.imageName); + //cn.setProperties(getProperties(container.property)); + return cn; + } - private static LoadbalancerConfig getLBConfig(LoadBalancerBean loadBalancer) { + private static LoadbalancerConfig getLBConfig(LoadBalancerBean loadBalancer) { LoadbalancerConfig lbConfig = new LoadbalancerConfig(); lbConfig.setType(loadBalancer.type); if (loadBalancer.property != null && !loadBalancer.property.isEmpty()) { @@ -218,7 +215,7 @@ public class PojoConverter { //convert to an array PropertyBean[] propertyBeansArray = new PropertyBean[propertyBeans.size()]; propertyBeans.toArray(propertyBeansArray); - PropertyE[] propertyArray = new PropertyE[propertyBeansArray.length]; + PropertyE[] propertyArray = new PropertyE[propertyBeansArray.length]; for (int j = 0; j < propertyBeansArray.length; j++) { PropertyE property = new PropertyE(); http://git-wip-us.apache.org/repos/asf/stratos/blob/6652b473/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 393adef..88a9f5b 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 @@ -26,8 +26,8 @@ import org.apache.commons.logging.LogFactory; import org.apache.stratos.autoscaler.stub.AutoScalerServiceInvalidKubernetesGroupExceptionException; import org.apache.stratos.autoscaler.stub.AutoScalerServiceInvalidPartitionExceptionException; import org.apache.stratos.autoscaler.stub.AutoScalerServiceInvalidPolicyExceptionException; -import org.apache.stratos.cloud.controller.stub.CloudControllerServiceInvalidCartridgeDefinitionExceptionException; import org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy; +import org.apache.stratos.cloud.controller.stub.CloudControllerServiceInvalidCartridgeDefinitionExceptionException; import org.apache.stratos.cloud.controller.stub.CloudControllerServiceInvalidCartridgeTypeExceptionException; import org.apache.stratos.cloud.controller.stub.CloudControllerServiceInvalidIaasProviderExceptionException; import org.apache.stratos.cloud.controller.stub.pojo.CartridgeConfig; @@ -35,12 +35,10 @@ import org.apache.stratos.cloud.controller.stub.pojo.CartridgeInfo; import org.apache.stratos.cloud.controller.stub.pojo.Property; import org.apache.stratos.manager.client.AutoscalerServiceClient; import org.apache.stratos.manager.client.CloudControllerServiceClient; -import org.apache.stratos.manager.deploy.cartridge.CartridgeDeploymentManager; import org.apache.stratos.manager.deploy.service.Service; import org.apache.stratos.manager.deploy.service.ServiceDeploymentManager; import org.apache.stratos.manager.dto.Cartridge; import org.apache.stratos.manager.dto.SubscriptionInfo; -import org.apache.stratos.manager.exception.*; import org.apache.stratos.manager.exception.ADCException; import org.apache.stratos.manager.exception.DomainMappingExistsException; import org.apache.stratos.manager.exception.NotSubscribedException; @@ -83,7 +81,6 @@ import org.wso2.carbon.user.api.UserStoreManager; 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; @@ -99,7 +96,7 @@ public class ServiceUtils { private static ServiceDeploymentManager serviceDeploymentManager = new ServiceDeploymentManager(); static void deployCartridge(CartridgeDefinitionBean cartridgeDefinitionBean, ConfigurationContext ctxt, - String userName, String tenantDomain) throws RestAPIException { + String userName, String tenantDomain) throws RestAPIException { log.info("Starting to deploy a Cartridge [type] " + cartridgeDefinitionBean.type); @@ -508,7 +505,7 @@ public class ServiceUtils { } /*if(lbCartridges == null || lbCartridges.isEmpty()) { - String msg = "Load balancer Cartridges are not available."; + String msg = "Load balancer Cartridges are not available."; log.error(msg); throw new RestAPIException(msg) ; }*/ @@ -666,7 +663,7 @@ public class ServiceUtils { if (service == null) { return null; - }else{ + } else { return PojoConverter.convertToServiceDefinitionBean(service); } } @@ -719,7 +716,7 @@ public class ServiceUtils { } - static List<Cartridge> getSubscriptions (String cartridgeSearchString, String serviceGroup, ConfigurationContext configurationContext) throws RestAPIException { + static List<Cartridge> getSubscriptions(String cartridgeSearchString, String serviceGroup, ConfigurationContext configurationContext) throws RestAPIException { List<Cartridge> cartridges = new ArrayList<Cartridge>(); if (log.isDebugEnabled()) { @@ -901,18 +898,19 @@ public class ServiceUtils { } } } - if(subscription.getCartridgeInfo().getServiceGroup() != null) { - cartridge.setServiceGroup(subscription.getCartridgeInfo().getServiceGroup()); + if (subscription.getCartridgeInfo().getServiceGroup() != null) { + cartridge.setServiceGroup(subscription.getCartridgeInfo().getServiceGroup()); } - return cartridge; - - } catch (Exception e) { - String msg = "Unable to extract the Cartridge from subscription. Cause: "+e.getMessage(); - log.error(msg); - throw new RestAPIException(msg); - } - - } + return cartridge; + + } catch (Exception e) { + String msg = "Unable to extract the Cartridge from subscription. Cause: " + e.getMessage(); + log.error(msg); + throw new RestAPIException(msg); + } + + } + static Pattern getSearchStringPattern(String searchString) { if (log.isDebugEnabled()) { log.debug("Creating search pattern for " + searchString); @@ -968,9 +966,9 @@ public class ServiceUtils { public static CartridgeSubscription getCartridgeSubscription(String alias, ConfigurationContext configurationContext) { return CartridgeSubscriptionManager.getCartridgeSubscription(ApplicationManagementUtil.getTenantId(configurationContext), alias); } - - static SubscriptionInfo subscribe(CartridgeInfoBean cartridgeInfoBean, ConfigurationContext configurationContext, String tenantUsername, String tenantDomain) - throws RestAPIException{ + + static SubscriptionInfo subscribe(CartridgeInfoBean cartridgeInfoBean, ConfigurationContext configurationContext, String tenantUsername, String tenantDomain) + throws RestAPIException { SubscriptionData subscriptionData = new SubscriptionData(); subscriptionData.setCartridgeType(cartridgeInfoBean.getCartridgeType()); @@ -988,10 +986,10 @@ public class ServiceUtils { subscriptionData.setServiceGroup(cartridgeInfoBean.getServiceGroup()); PersistenceBean persistenceBean = cartridgeInfoBean.getPersistence(); - if(persistenceBean != null) { + if (persistenceBean != null) { subscriptionData.setPersistence(PojoConverter.getPersistence(persistenceBean)); } - if(cartridgeInfoBean.getProperty() != null){ + if (cartridgeInfoBean.getProperty() != null) { subscriptionData.setProperties(PojoConverter.getProperties(cartridgeInfoBean.getProperty())); } @@ -1011,12 +1009,12 @@ public class ServiceUtils { */ //subscribe SubscriptionInfo subscriptionInfo = null; - try{ - subscriptionInfo = CartridgeSubscriptionManager.subscribeToCartridgeWithProperties(subscriptionData); - }catch(Exception e){ - throw new RestAPIException(e.getMessage(), e); + try { + subscriptionInfo = CartridgeSubscriptionManager.subscribeToCartridgeWithProperties(subscriptionData); + } catch (Exception e) { + throw new RestAPIException(e.getMessage(), e); } - + return subscriptionInfo; } @@ -1063,22 +1061,22 @@ public class ServiceUtils { return arrCluster; } - - public static org.apache.stratos.rest.endpoint.bean.topology.Cluster[] getClustersForCartridgeType(String cartridgeType) { - - Set<Cluster> clusterSet = TopologyClusterInformationModel - .getInstance() - .getClusters(cartridgeType); - List<org.apache.stratos.rest.endpoint.bean.topology.Cluster> clusters = new ArrayList<org.apache.stratos.rest.endpoint.bean.topology.Cluster>(); - for (Cluster cluster : clusterSet) { - clusters.add(PojoConverter.populateClusterPojos(cluster)); - } - org.apache.stratos.rest.endpoint.bean.topology.Cluster[] arrCluster = new org.apache.stratos.rest.endpoint.bean.topology.Cluster[clusters - .size()]; - arrCluster = clusters.toArray(arrCluster); - return arrCluster; - - } + + public static org.apache.stratos.rest.endpoint.bean.topology.Cluster[] getClustersForCartridgeType(String cartridgeType) { + + Set<Cluster> clusterSet = TopologyClusterInformationModel + .getInstance() + .getClusters(cartridgeType); + List<org.apache.stratos.rest.endpoint.bean.topology.Cluster> clusters = new ArrayList<org.apache.stratos.rest.endpoint.bean.topology.Cluster>(); + for (Cluster cluster : clusterSet) { + clusters.add(PojoConverter.populateClusterPojos(cluster)); + } + org.apache.stratos.rest.endpoint.bean.topology.Cluster[] arrCluster = new org.apache.stratos.rest.endpoint.bean.topology.Cluster[clusters + .size()]; + arrCluster = clusters.toArray(arrCluster); + return arrCluster; + + } // return the cluster id for the lb. This is a temp fix. /*private static String subscribeToLb(String cartridgeType, String loadBalancedCartridgeType, String lbAlias, @@ -1129,7 +1127,7 @@ public class ServiceUtils { static void unsubscribe(String alias, String tenantDomain) throws RestAPIException { try { - CartridgeSubscriptionManager.unsubscribeFromCartridge(tenantDomain, alias); + CartridgeSubscriptionManager.unsubscribeFromCartridge(tenantDomain, alias); } catch (ADCException e) { String msg = "Failed to unsubscribe from [alias] " + alias + ". Cause: " + e.getMessage(); @@ -1151,7 +1149,7 @@ public class ServiceUtils { * @param clusterSubdomain */ static void deployService(String cartridgeType, String alias, String autoscalingPolicy, String deploymentPolicy, - String tenantDomain, String tenantUsername, int tenantId, String clusterDomain, String clusterSubdomain, String tenantRange) throws RestAPIException { + String tenantDomain, String tenantUsername, int tenantId, String clusterDomain, String clusterSubdomain, String tenantRange) throws RestAPIException { log.info("Deploying service.."); try { serviceDeploymentManager.deployService(cartridgeType, autoscalingPolicy, deploymentPolicy, tenantId, tenantRange, tenantDomain, tenantUsername); @@ -1167,9 +1165,9 @@ public class ServiceUtils { try { serviceDeploymentManager.undeployService(serviceType); - }catch(ServiceDoesNotExistException ex){ + } catch (ServiceDoesNotExistException ex) { throw ex; - }catch (Exception e) { + } catch (Exception e) { String msg = "Failed to undeploy service cluster definition of type " + serviceType + " Cause: " + e.getMessage(); log.error(msg, e); throw new RestAPIException(msg, e); @@ -1201,9 +1199,9 @@ public class ServiceUtils { } public static void addSubscriptionDomains(ConfigurationContext configurationContext, String cartridgeType, - String subscriptionAlias, - SubscriptionDomainRequest request) - throws RestAPIException { + String subscriptionAlias, + SubscriptionDomainRequest request) + throws RestAPIException { try { int tenantId = ApplicationManagementUtil.getTenantId(configurationContext); @@ -1216,10 +1214,10 @@ public class ServiceUtils { } for (org.apache.stratos.rest.endpoint.bean.subscription.domain.SubscriptionDomainBean subscriptionDomain : request.domains) { - - CartridgeSubscriptionManager.addSubscriptionDomain(tenantId, subscriptionAlias, - subscriptionDomain.domainName, subscriptionDomain.applicationContext); - } + + CartridgeSubscriptionManager.addSubscriptionDomain(tenantId, subscriptionAlias, + subscriptionDomain.domainName, subscriptionDomain.applicationContext); + } } catch (Exception e) { log.error(e.getMessage(), e); throw new RestAPIException(e.getMessage(), e); @@ -1246,7 +1244,7 @@ public class ServiceUtils { } public static List<SubscriptionDomainBean> getSubscriptionDomains(ConfigurationContext configurationContext, String cartridgeType, - String subscriptionAlias) throws RestAPIException { + String subscriptionAlias) throws RestAPIException { try { int tenantId = ApplicationManagementUtil.getTenantId(configurationContext); return PojoConverter.populateSubscriptionDomainPojos(CartridgeSubscriptionManager.getSubscriptionDomains(tenantId, subscriptionAlias)); @@ -1255,32 +1253,32 @@ public class ServiceUtils { throw new RestAPIException(e.getMessage(), e); } } - - public static SubscriptionDomainBean getSubscriptionDomain(ConfigurationContext configurationContext, String cartridgeType, - String subscriptionAlias, String domain) throws RestAPIException { - try { - int tenantId = ApplicationManagementUtil - .getTenantId(configurationContext); - SubscriptionDomainBean subscriptionDomain = PojoConverter.populateSubscriptionDomainPojo(CartridgeSubscriptionManager.getSubscriptionDomain(tenantId, - subscriptionAlias, domain)); - - if (subscriptionDomain == null) { - String message = "Could not find a subscription [domain] "+domain+ " for Cartridge [type] " - +cartridgeType+ " and [alias] "+subscriptionAlias; - log.error(message); - throw new RestAPIException(Status.NOT_FOUND, message); - } - - return subscriptionDomain; - - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new RestAPIException(e.getMessage(), e); - } - } + + public static SubscriptionDomainBean getSubscriptionDomain(ConfigurationContext configurationContext, String cartridgeType, + String subscriptionAlias, String domain) throws RestAPIException { + try { + int tenantId = ApplicationManagementUtil + .getTenantId(configurationContext); + SubscriptionDomainBean subscriptionDomain = PojoConverter.populateSubscriptionDomainPojo(CartridgeSubscriptionManager.getSubscriptionDomain(tenantId, + subscriptionAlias, domain)); + + if (subscriptionDomain == null) { + String message = "Could not find a subscription [domain] " + domain + " for Cartridge [type] " + + cartridgeType + " and [alias] " + subscriptionAlias; + log.error(message); + throw new RestAPIException(Status.NOT_FOUND, message); + } + + return subscriptionDomain; + + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new RestAPIException(e.getMessage(), e); + } + } public static void removeSubscriptionDomain(ConfigurationContext configurationContext, String cartridgeType, - String subscriptionAlias, String domain) throws RestAPIException, DomainMappingExistsException { + String subscriptionAlias, String domain) throws RestAPIException, DomainMappingExistsException { try { int tenantId = ApplicationManagementUtil.getTenantId(configurationContext); CartridgeSubscriptionManager.removeSubscriptionDomain(tenantId, subscriptionAlias, domain); @@ -1290,7 +1288,8 @@ public class ServiceUtils { } } -public static void addUser(UserInfoBean userInfoBean) throws RestAPIException { + + public static void addUser(UserInfoBean userInfoBean) throws RestAPIException { try { getStratosUserManager().addUser(userInfoBean); @@ -1326,6 +1325,7 @@ public static void addUser(UserInfoBean userInfoBean) throws RestAPIException { /** * Get Tenant aware UserStore + * * @return * @throws RestAPIException */ @@ -1348,7 +1348,7 @@ public static void addUser(UserInfoBean userInfoBean) throws RestAPIException { return stratosUserManager; } -public static boolean deployKubernetesGroup(KubernetesGroup kubernetesGroupBean) + public static boolean deployKubernetesGroup(KubernetesGroup kubernetesGroupBean) throws RestAPIException { AutoscalerServiceClient autoscalerServiceClient = getAutoscalerServiceClient(); http://git-wip-us.apache.org/repos/asf/stratos/blob/6652b473/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 6ef1881..7ffc69e 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 @@ -30,7 +30,6 @@ 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.subscription.CartridgeSubscription; -import org.apache.stratos.manager.subscription.SubscriptionDomain; import org.apache.stratos.manager.user.mgt.beans.UserInfoBean; import org.apache.stratos.rest.endpoint.ServiceHolder; import org.apache.stratos.rest.endpoint.Utils; @@ -48,7 +47,6 @@ 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; 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.KubernetesGroupDoesNotExistException; @@ -62,9 +60,8 @@ import org.wso2.carbon.context.RegistryType; import org.wso2.carbon.registry.core.exceptions.RegistryException; import org.wso2.carbon.registry.core.session.UserRegistry; import org.wso2.carbon.user.api.UserRealm; -import org.wso2.carbon.user.api.UserStoreManager; import org.wso2.carbon.user.api.UserStoreException; -import org.wso2.carbon.user.core.service.RealmService; +import org.wso2.carbon.user.api.UserStoreManager; import org.wso2.carbon.user.core.tenant.Tenant; import org.wso2.carbon.user.core.tenant.TenantManager; import org.wso2.carbon.utils.multitenancy.MultitenantConstants; @@ -95,7 +92,7 @@ public class StratosAdmin extends AbstractAdmin { @POST @Path("/init") @AuthorizationAction("/permission/admin/restlogin") - public StratosAdminResponse initialize () + public StratosAdminResponse initialize() throws RestAPIException { @@ -103,6 +100,7 @@ public class StratosAdmin extends AbstractAdmin { stratosAdminResponse.setMessage("Successfully logged in"); return stratosAdminResponse; } + /* This method gets called by the client who are interested in using session mechanism to authenticate themselves in subsequent calls. This method call get authenticated by the basic authenticator. @@ -114,12 +112,12 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/restlogin") - public Response getCookie(){ + public Response getCookie() { HttpSession httpSession = httpServletRequest.getSession(true);//create session if not found PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - httpSession.setAttribute("userName",carbonContext.getUsername()); - httpSession.setAttribute("tenantDomain",carbonContext.getTenantDomain()); - httpSession.setAttribute("tenantId",carbonContext.getTenantId()); + httpSession.setAttribute("userName", carbonContext.getUsername()); + httpSession.setAttribute("tenantDomain", carbonContext.getTenantDomain()); + httpSession.setAttribute("tenantId", carbonContext.getTenantId()); String sessionId = httpSession.getId(); return Response.ok().header("WWW-Authenticate", "Basic").type(MediaType.APPLICATION_JSON). @@ -136,7 +134,7 @@ public class StratosAdmin extends AbstractAdmin { ServiceUtils.deployCartridge(cartridgeDefinitionBean, getConfigContext(), getUsername(), getTenantDomain()); - URI url = uriInfo.getAbsolutePathBuilder().path(cartridgeDefinitionBean.type).build(); + URI url = uriInfo.getAbsolutePathBuilder().path(cartridgeDefinitionBean.type).build(); return Response.created(url).build(); } @@ -146,7 +144,7 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/add/cartridgeDefinition") - public Response unDeployCartridgeDefinition (@PathParam("cartridgeType") String cartridgeType) throws RestAPIException { + public Response unDeployCartridgeDefinition(@PathParam("cartridgeType") String cartridgeType) throws RestAPIException { ServiceUtils.undeployCartridge(cartridgeType); return Response.noContent().build(); @@ -157,11 +155,11 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/add/partition") - public Response deployPartition (Partition partition) + public Response deployPartition(Partition partition) throws RestAPIException { ServiceUtils.deployPartition(partition); - URI url = uriInfo.getAbsolutePathBuilder().path(partition.id).build(); + URI url = uriInfo.getAbsolutePathBuilder().path(partition.id).build(); return Response.created(url).build(); } @@ -170,11 +168,11 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/add/autoscalingPolicy") - public Response deployAutoscalingPolicyDefintion (AutoscalePolicy autoscalePolicy) + public Response deployAutoscalingPolicyDefintion(AutoscalePolicy autoscalePolicy) throws RestAPIException { ServiceUtils.deployAutoscalingPolicy(autoscalePolicy); - URI url = uriInfo.getAbsolutePathBuilder().path(autoscalePolicy.getId()).build(); + URI url = uriInfo.getAbsolutePathBuilder().path(autoscalePolicy.getId()).build(); return Response.created(url).build(); } @@ -183,11 +181,11 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/add/deploymentPolicy") - public Response deployDeploymentPolicyDefinition (DeploymentPolicy deploymentPolicy) + public Response deployDeploymentPolicyDefinition(DeploymentPolicy deploymentPolicy) throws RestAPIException { ServiceUtils.deployDeploymentPolicy(deploymentPolicy); - URI url = uriInfo.getAbsolutePathBuilder().path(deploymentPolicy.id).build(); + URI url = uriInfo.getAbsolutePathBuilder().path(deploymentPolicy.id).build(); return Response.created(url).build(); } @@ -196,7 +194,7 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/partition") - public Response getPartitions () throws RestAPIException { + public Response getPartitions() throws RestAPIException { return Response.ok().entity(ServiceUtils.getAvailablePartitions()).build(); } @@ -205,7 +203,7 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/partition") - public Response getPartition (@PathParam("partitionId") String partitionId) throws RestAPIException { + public Response getPartition(@PathParam("partitionId") String partitionId) throws RestAPIException { return Response.ok().entity(ServiceUtils.getPartition(partitionId)).build(); } @@ -214,7 +212,7 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/partition") - public Response getPartitionGroups (@PathParam("deploymentPolicyId") String deploymentPolicyId) + public Response getPartitionGroups(@PathParam("deploymentPolicyId") String deploymentPolicyId) throws RestAPIException { return Response.ok().entity(ServiceUtils.getPartitionGroups(deploymentPolicyId)).build(); } @@ -224,17 +222,17 @@ public class StratosAdmin extends AbstractAdmin { @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 getPartitions(@PathParam("deploymentPolicyId") String deploymentPolicyId, + @PathParam("partitionGroupId") String partitionGroupId) throws RestAPIException { return Response.ok().entity(ServiceUtils.getPartitionsOfGroup(deploymentPolicyId, partitionGroupId)).build(); } - + @GET @Path("/partition/{deploymentPolicyId}") @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/partition") - public Response getPartitionsOfPolicy (@PathParam("deploymentPolicyId") String deploymentPolicyId) + public Response getPartitionsOfPolicy(@PathParam("deploymentPolicyId") String deploymentPolicyId) throws RestAPIException { return Response.ok().entity(ServiceUtils.getPartitionsOfDeploymentPolicy(deploymentPolicyId)).build(); @@ -245,7 +243,7 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/autoscalingPolicy") - public Response getAutoscalePolicies () throws RestAPIException { + public Response getAutoscalePolicies() throws RestAPIException { return Response.ok().entity(ServiceUtils.getAutoScalePolicies()).build(); } @@ -254,7 +252,7 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/autoscalingPolicy") - public Response getAutoscalePolicies (@PathParam("autoscalePolicyId") String autoscalePolicyId) + public Response getAutoscalePolicies(@PathParam("autoscalePolicyId") String autoscalePolicyId) throws RestAPIException { return Response.ok().entity(ServiceUtils.getAutoScalePolicy(autoscalePolicyId)).build(); } @@ -264,7 +262,7 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/deploymentPolicy") - public Response getDeploymentPolicies () throws RestAPIException { + public Response getDeploymentPolicies() throws RestAPIException { return Response.ok().entity(ServiceUtils.getDeploymentPolicies()).build(); } @@ -273,7 +271,7 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/deploymentPolicy") - public Response getDeploymentPolicies (@PathParam("deploymentPolicyId") String deploymentPolicyId) + public Response getDeploymentPolicies(@PathParam("deploymentPolicyId") String deploymentPolicyId) throws RestAPIException { return Response.ok().entity(ServiceUtils.getDeploymentPolicy(deploymentPolicyId)).build(); } @@ -283,7 +281,7 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/deploymentPolicy") - public Response getValidDeploymentPolicies (@PathParam("cartridgeType") String cartridgeType) + public Response getValidDeploymentPolicies(@PathParam("cartridgeType") String cartridgeType) throws RestAPIException { return Response.ok().entity(ServiceUtils.getDeploymentPolicies(cartridgeType)).build(); } @@ -330,7 +328,7 @@ public class StratosAdmin extends AbstractAdmin { @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/cartridge") public Response getSubscribedCartridges() throws RestAPIException { - List<Cartridge> cartridgeList = ServiceUtils.getSubscriptions(null,null, getConfigContext()); + List<Cartridge> cartridgeList = ServiceUtils.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()])); @@ -349,7 +347,7 @@ public class StratosAdmin extends AbstractAdmin { rb.entity(cartridgeList.isEmpty() ? new Cartridge[0] : cartridgeList.toArray(new Cartridge[cartridgeList.size()])); return rb.build(); } - + @GET @Path("/cartridge/info/{subscriptionAlias}") @Produces("application/json") @@ -367,7 +365,7 @@ public class StratosAdmin extends AbstractAdmin { @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/cartridge") public Response getAvailableSingleTenantCartridgeInfo(@PathParam("cartridgeType") String cartridgeType) - throws RestAPIException { + throws RestAPIException { ResponseBuilder rb = Response.ok(); rb.entity(ServiceUtils.getAvailableCartridgeInfo(cartridgeType, null, getConfigContext())); return rb.build(); @@ -379,7 +377,7 @@ public class StratosAdmin extends AbstractAdmin { @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/cartridge") public Response getAvailableLbCartridges() throws RestAPIException { - List<Cartridge> lbCartridges = ServiceUtils.getAvailableLbCartridges(false, getConfigContext()); + List<Cartridge> lbCartridges = ServiceUtils.getAvailableLbCartridges(false, getConfigContext()); return Response.ok().entity(lbCartridges.isEmpty() ? new Cartridge[0] : lbCartridges.toArray(new Cartridge[lbCartridges.size()])).build(); } @@ -389,7 +387,7 @@ public class StratosAdmin extends AbstractAdmin { @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/instance") public Response getActiveInstances(@PathParam("cartridgeType") String cartridgeType, - @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException { + @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException { ResponseBuilder rb = Response.ok(); rb.entity(ServiceUtils.getActiveInstances(cartridgeType, subscriptionAlias, getConfigContext())); return rb.build(); @@ -402,10 +400,10 @@ public class StratosAdmin extends AbstractAdmin { @AuthorizationAction("/permission/admin/manage/add/subscription") public Response subscribe(CartridgeInfoBean cartridgeInfoBean) throws RestAPIException { - SubscriptionInfo subscriptionInfo= ServiceUtils.subscribe(cartridgeInfoBean, - getConfigContext(), - getUsername(), - getTenantDomain()); + SubscriptionInfo subscriptionInfo = ServiceUtils.subscribe(cartridgeInfoBean, + getConfigContext(), + getUsername(), + getTenantDomain()); return Response.ok(subscriptionInfo).build(); } @@ -429,7 +427,7 @@ public class StratosAdmin extends AbstractAdmin { rb.entity(ServiceUtils.getClustersForTenantAndCartridgeType(getConfigContext(), cartridgeType)); return rb.build(); } - + @GET @Path("/cluster/service/{cartridgeType}/") @Produces("application/json") @@ -447,35 +445,35 @@ public class StratosAdmin extends AbstractAdmin { @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/cluster") public Response getCluster(@PathParam("cartridgeType") String cartridgeType, - @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException, RestAPIException { + @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException, RestAPIException { ResponseBuilder rb = Response.ok(); rb.entity(ServiceUtils.getCluster(cartridgeType, subscriptionAlias, getConfigContext())); return rb.build(); } - + @GET @Path("/cluster/clusterId/{clusterId}") @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/cluster") public Response getCluster(@PathParam("clusterId") String clusterId) throws RestAPIException { - Cluster cluster = null; - if(log.isDebugEnabled()) { - log.debug("Finding cluster for [id]: "+clusterId); - } + Cluster cluster = null; + if (log.isDebugEnabled()) { + log.debug("Finding cluster for [id]: " + clusterId); + } Cluster[] clusters = ServiceUtils.getClustersForTenant(getConfigContext()); - if(log.isDebugEnabled()) { - log.debug("Clusters retrieved from backend for cluster [id]: "+clusterId); - for (Cluster c : clusters) { - log.debug(c+"\n"); - } - } + if (log.isDebugEnabled()) { + log.debug("Clusters retrieved from backend for cluster [id]: " + clusterId); + for (Cluster c : clusters) { + log.debug(c + "\n"); + } + } for (Cluster clusterObj : clusters) { - if (clusterObj.clusterId.equals(clusterId)){ - cluster = clusterObj; - break; - } - } + if (clusterObj.clusterId.equals(clusterId)) { + cluster = clusterObj; + break; + } + } return Response.ok().entity(cluster).build(); } @@ -528,7 +526,7 @@ public class StratosAdmin extends AbstractAdmin { int tenantId = 0; //TODO verify whether this is the correct approach (isSkeleton) try { tenantId = persistor.persistTenant(tenant, false, tenantInfoBean.getSuccessKey(), - tenantInfoBean.getOriginatedService(),false); + tenantInfoBean.getOriginatedService(), false); } catch (Exception e) { String msg = "Error in persisting tenant " + tenantDomain; log.error(msg, e); @@ -569,7 +567,7 @@ public class StratosAdmin extends AbstractAdmin { throw new RestAPIException(msg); } - URI url = uriInfo.getAbsolutePathBuilder().path(tenant.getDomain()).build(); + URI url = uriInfo.getAbsolutePathBuilder().path(tenant.getDomain()).build(); return Response.created(url).build(); } @@ -583,9 +581,9 @@ public class StratosAdmin extends AbstractAdmin { try { updateExistingTenant(tenantInfoBean); - } catch(TenantNotFoundException ex){ + } catch (TenantNotFoundException ex) { Response.status(Response.Status.NOT_FOUND).build(); - }catch (Exception e) { + } catch (Exception e) { String msg = "Error in updating tenant " + tenantInfoBean.getTenantDomain(); log.error(msg, e); throw new RestAPIException(msg); @@ -622,7 +620,7 @@ public class StratosAdmin extends AbstractAdmin { String msg = "Error in retrieving the tenant id for the tenant domain: " + tenantDomain + "."; log.error(msg, e); - throw new TenantNotFoundException(msg,e); + throw new TenantNotFoundException(msg, e); } // filling the first and last name values @@ -732,7 +730,7 @@ public class StratosAdmin extends AbstractAdmin { } } - private TenantInfoBean getTenantForDomain (String tenantDomain) throws Exception { + private TenantInfoBean getTenantForDomain(String tenantDomain) throws Exception { TenantManager tenantManager = ServiceHolder.getTenantManager(); @@ -766,9 +764,9 @@ public class StratosAdmin extends AbstractAdmin { String activePlan = ""; //TODO: usage plan using billing service - if(activePlan != null && activePlan.trim().length() > 0){ + if (activePlan != null && activePlan.trim().length() > 0) { bean.setUsagePlan(activePlan); - }else{ + } else { bean.setUsagePlan(""); } @@ -832,7 +830,7 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @AuthorizationAction("/permission/protected/manage/monitor/tenants") @SuperTenantService(true) - public TenantInfoBean[] retrievePartialSearchTenants(@PathParam("domain")String domain) throws RestAPIException { + public TenantInfoBean[] retrievePartialSearchTenants(@PathParam("domain") String domain) throws RestAPIException { List<TenantInfoBean> tenantList = null; try { tenantList = searchPartialTenantsDomains(domain); @@ -866,7 +864,7 @@ public class StratosAdmin extends AbstractAdmin { TenantMgtUtil.activateTenant(tenantDomain, tenantManager, tenantId); } catch (Exception e) { - throw new RestAPIException( e); + throw new RestAPIException(e); } //Notify tenant activation all listeners @@ -922,7 +920,7 @@ public class StratosAdmin extends AbstractAdmin { try { TenantMgtUtil.deactivateTenant(tenantDomain, tenantManager, tenantId); } catch (Exception e) { - throw new RestAPIException( e); + throw new RestAPIException(e); } //Notify tenant deactivation all listeners @@ -942,18 +940,18 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/add/service") - public Response deployService (ServiceDefinitionBean serviceDefinitionBean) + public Response deployService(ServiceDefinitionBean serviceDefinitionBean) throws RestAPIException { - log.info("Service definition request.. : " + serviceDefinitionBean.getServiceName()); - // super tenant Deploying service (MT) - // here an alias is generated - ServiceUtils.deployService(serviceDefinitionBean.getCartridgeType(), UUID.randomUUID().toString(), serviceDefinitionBean.getAutoscalingPolicyName(), - serviceDefinitionBean.getDeploymentPolicyName(), getTenantDomain(), getUsername(), getTenantId(), - serviceDefinitionBean.getClusterDomain(), serviceDefinitionBean.getClusterSubDomain(), - serviceDefinitionBean.getTenantRange()); + log.info("Service definition request.. : " + serviceDefinitionBean.getServiceName()); + // super tenant Deploying service (MT) + // here an alias is generated + ServiceUtils.deployService(serviceDefinitionBean.getCartridgeType(), UUID.randomUUID().toString(), serviceDefinitionBean.getAutoscalingPolicyName(), + serviceDefinitionBean.getDeploymentPolicyName(), getTenantDomain(), getUsername(), getTenantId(), + serviceDefinitionBean.getClusterDomain(), serviceDefinitionBean.getClusterSubDomain(), + serviceDefinitionBean.getTenantRange()); - URI url = uriInfo.getAbsolutePathBuilder().path(serviceDefinitionBean.getServiceName()).build(); + URI url = uriInfo.getAbsolutePathBuilder().path(serviceDefinitionBean.getServiceName()).build(); return Response.created(url).build(); } @@ -965,7 +963,7 @@ public class StratosAdmin extends AbstractAdmin { public ServiceDefinitionBean[] getServices() throws RestAPIException { List<ServiceDefinitionBean> serviceDefinitionBeans = ServiceUtils.getdeployedServiceInformation(); return serviceDefinitionBeans == null || serviceDefinitionBeans.isEmpty() ? new ServiceDefinitionBean[0] : - serviceDefinitionBeans.toArray(new ServiceDefinitionBean[serviceDefinitionBeans.size()]); + serviceDefinitionBeans.toArray(new ServiceDefinitionBean[serviceDefinitionBeans.size()]); } @GET @@ -973,12 +971,12 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/service") - public Response getService(@PathParam("serviceType") String serviceType)throws RestAPIException { + public Response getService(@PathParam("serviceType") String serviceType) throws RestAPIException { ResponseBuilder rb; ServiceDefinitionBean serviceDefinitionBean = ServiceUtils.getDeployedServiceInformation(serviceType); - if(serviceDefinitionBean == null){ + if (serviceDefinitionBean == null) { rb = Response.status(Response.Status.NOT_FOUND); - }else{ + } else { rb = Response.ok(serviceDefinitionBean); } return rb.build(); @@ -989,7 +987,7 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/service") - public List<Cartridge> getActiveService()throws RestAPIException { + public List<Cartridge> getActiveService() throws RestAPIException { return ServiceUtils.getActiveDeployedServiceInformation(getConfigContext()); } @@ -999,11 +997,11 @@ public class StratosAdmin extends AbstractAdmin { @Produces("application/json") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/add/service") - public Response unDeployService (@PathParam("serviceType") String serviceType) throws RestAPIException { + public Response unDeployService(@PathParam("serviceType") String serviceType) throws RestAPIException { try { ServiceUtils.undeployService(serviceType); } catch (ServiceDoesNotExistException e) { - return Response.status(Response.Status.NOT_FOUND).build(); + return Response.status(Response.Status.NOT_FOUND).build(); } return Response.noContent().build(); } @@ -1018,23 +1016,23 @@ public class StratosAdmin extends AbstractAdmin { ServiceUtils.getGitRepositoryNotification(payload); return Response.noContent().build(); } - - @POST - @Path("/cartridge/sync") - @Consumes("application/json") - @AuthorizationAction("/permission/admin/manage/add/sync") - public Response synchronizeRepository(String alias) throws RestAPIException { - if (log.isDebugEnabled()) { - log.debug(String.format("Synchronizing Git repository for alias '%s'", alias)); - } - CartridgeSubscription cartridgeSubscription = ServiceUtils.getCartridgeSubscription(alias, getConfigContext()); - if (cartridgeSubscription != null && cartridgeSubscription.getRepository() != null && log.isDebugEnabled()) { - log.debug(String.format("Found subscription for '%s'. Git repository: %s", alias, cartridgeSubscription - .getRepository().getUrl())); - } - ServiceUtils.synchronizeRepository(cartridgeSubscription); + + @POST + @Path("/cartridge/sync") + @Consumes("application/json") + @AuthorizationAction("/permission/admin/manage/add/sync") + public Response synchronizeRepository(String alias) throws RestAPIException { + if (log.isDebugEnabled()) { + log.debug(String.format("Synchronizing Git repository for alias '%s'", alias)); + } + CartridgeSubscription cartridgeSubscription = ServiceUtils.getCartridgeSubscription(alias, getConfigContext()); + if (cartridgeSubscription != null && cartridgeSubscription.getRepository() != null && log.isDebugEnabled()) { + log.debug(String.format("Found subscription for '%s'. Git repository: %s", alias, cartridgeSubscription + .getRepository().getUrl())); + } + ServiceUtils.synchronizeRepository(cartridgeSubscription); return Response.noContent().build(); - } + } private List<TenantInfoBean> getAllTenants() throws RestAPIException { TenantManager tenantManager = ServiceHolder.getTenantManager(); @@ -1081,8 +1079,8 @@ public class StratosAdmin extends AbstractAdmin { @AuthorizationAction("/permission/admin/manage/add/domain") public Response addSubscriptionDomains(@PathParam("cartridgeType") String cartridgeType, - @PathParam("subscriptionAlias") String subscriptionAlias, - SubscriptionDomainRequest request) throws RestAPIException { + @PathParam("subscriptionAlias") String subscriptionAlias, + SubscriptionDomainRequest request) throws RestAPIException { ServiceUtils.addSubscriptionDomains(getConfigContext(), cartridgeType, subscriptionAlias, request); return Response.noContent().build(); } @@ -1091,13 +1089,13 @@ public class StratosAdmin extends AbstractAdmin { @Path("/cartridge/{cartridgeType}/subscription/{subscriptionAlias}/domains") @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/view/domain") - public Response getSubscriptionDomains(@PathParam("cartridgeType") String cartridgeType,@PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException { + public Response getSubscriptionDomains(@PathParam("cartridgeType") String cartridgeType, @PathParam("subscriptionAlias") String subscriptionAlias) throws RestAPIException { SubscriptionDomainBean[] subscriptionDomainBean = ServiceUtils.getSubscriptionDomains(getConfigContext(), cartridgeType, subscriptionAlias).toArray(new SubscriptionDomainBean[0]); - if(subscriptionDomainBean.length == 0){ + if (subscriptionDomainBean.length == 0) { return Response.status(Response.Status.NOT_FOUND).build(); - }else{ + } else { return Response.ok().entity(subscriptionDomainBean).build(); } } @@ -1109,9 +1107,9 @@ public class StratosAdmin extends AbstractAdmin { public Response getSubscriptionDomain(@PathParam("cartridgeType") String cartridgeType, @PathParam("subscriptionAlias") String subscriptionAlias, @PathParam("domainName") String domainName) throws RestAPIException { SubscriptionDomainBean subscriptionDomainBean = ServiceUtils.getSubscriptionDomain(getConfigContext(), cartridgeType, subscriptionAlias, domainName); - if(subscriptionDomainBean.domainName == null){ + if (subscriptionDomainBean.domainName == null) { return Response.status(Response.Status.NOT_FOUND).build(); - }else{ + } else { return Response.ok().entity(subscriptionDomainBean).build(); } } @@ -1121,8 +1119,8 @@ public class StratosAdmin extends AbstractAdmin { @Consumes("application/json") @AuthorizationAction("/permission/admin/manage/add/domain") public Response removeSubscriptionDomain(@PathParam("cartridgeType") String cartridgeType, - @PathParam("subscriptionAlias") String subscriptionAlias, - @PathParam("domainName") String domainName) throws RestAPIException { + @PathParam("subscriptionAlias") String subscriptionAlias, + @PathParam("domainName") String domainName) throws RestAPIException { try { ServiceUtils.removeSubscriptionDomain(getConfigContext(), cartridgeType, subscriptionAlias, domainName); } catch (DomainMappingExistsException e) { @@ -1150,14 +1148,15 @@ public class StratosAdmin extends AbstractAdmin { } return Response.status(Response.Status.NOT_FOUND).build(); } -@POST + + @POST @Path("/user") @Consumes("application/json") @Produces("application/json") @AuthorizationAction("/permission/admin/manage/add/users") public Response addUser(UserInfoBean userInfoBean) throws RestAPIException { ServiceUtils.addUser(userInfoBean); - URI url = uriInfo.getAbsolutePathBuilder().path(userInfoBean.getUserName()).build(); + URI url = uriInfo.getAbsolutePathBuilder().path(userInfoBean.getUserName()).build(); return Response.created(url).build(); } @@ -1178,10 +1177,11 @@ public class StratosAdmin extends AbstractAdmin { @AuthorizationAction("/permission/admin/manage/add/users") public Response updateUser(UserInfoBean userInfoBean) throws RestAPIException { ServiceUtils.updateUser(userInfoBean); - URI url = uriInfo.getAbsolutePathBuilder().path(userInfoBean.getUserName()).build(); + URI url = uriInfo.getAbsolutePathBuilder().path(userInfoBean.getUserName()).build(); return Response.created(url).build(); } -@POST + + @POST @Path("/kubernetes/deploy/group") @Produces("application/json") @Consumes("application/json") http://git-wip-us.apache.org/repos/asf/stratos/blob/6652b473/service-stubs/org.apache.stratos.autoscaler.service.stub/src/main/resources/AutoScalerService.wsdl ---------------------------------------------------------------------- diff --git a/service-stubs/org.apache.stratos.autoscaler.service.stub/src/main/resources/AutoScalerService.wsdl b/service-stubs/org.apache.stratos.autoscaler.service.stub/src/main/resources/AutoScalerService.wsdl index c817942..5049177 100644 --- a/service-stubs/org.apache.stratos.autoscaler.service.stub/src/main/resources/AutoScalerService.wsdl +++ b/service-stubs/org.apache.stratos.autoscaler.service.stub/src/main/resources/AutoScalerService.wsdl @@ -295,6 +295,20 @@ </xs:sequence> </xs:complexType> </xs:element> + <xs:element name="getKubernetesGroup"> + <xs:complexType> + <xs:sequence> + <xs:element minOccurs="0" name="kubernetesGroupId" nillable="true" type="xs:string"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="getKubernetesGroupResponse"> + <xs:complexType> + <xs:sequence> + <xs:element minOccurs="0" name="return" nillable="true" type="ax23:KubernetesGroup"/> + </xs:sequence> + </xs:complexType> + </xs:element> <xs:element name="getHostsForKubernetesGroup"> <xs:complexType> <xs:sequence> @@ -745,12 +759,6 @@ <wsdl:message name="checkDefaultLBExistenceAgainstPolicyResponse"> <wsdl:part name="parameters" element="ns:checkDefaultLBExistenceAgainstPolicyResponse"/> </wsdl:message> - <wsdl:message name="getPartitionRequest"> - <wsdl:part name="parameters" element="ns:getPartition"/> - </wsdl:message> - <wsdl:message name="getPartitionResponse"> - <wsdl:part name="parameters" element="ns:getPartitionResponse"/> - </wsdl:message> <wsdl:message name="removeKubernetesHostRequest"> <wsdl:part name="parameters" element="ns:removeKubernetesHost"/> </wsdl:message> @@ -760,6 +768,18 @@ <wsdl:message name="AutoScalerServiceNonExistingKubernetesHostException"> <wsdl:part name="parameters" element="ns:AutoScalerServiceNonExistingKubernetesHostException"/> </wsdl:message> + <wsdl:message name="getKubernetesGroupRequest"> + <wsdl:part name="parameters" element="ns:getKubernetesGroup"/> + </wsdl:message> + <wsdl:message name="getKubernetesGroupResponse"> + <wsdl:part name="parameters" element="ns:getKubernetesGroupResponse"/> + </wsdl:message> + <wsdl:message name="getPartitionRequest"> + <wsdl:part name="parameters" element="ns:getPartition"/> + </wsdl:message> + <wsdl:message name="getPartitionResponse"> + <wsdl:part name="parameters" element="ns:getPartitionResponse"/> + </wsdl:message> <wsdl:message name="addPartitionRequest"> <wsdl:part name="parameters" element="ns:addPartition"/> </wsdl:message> @@ -892,15 +912,19 @@ <wsdl:input message="ns:checkDefaultLBExistenceAgainstPolicyRequest" wsaw:Action="urn:checkDefaultLBExistenceAgainstPolicy"/> <wsdl:output message="ns:checkDefaultLBExistenceAgainstPolicyResponse" wsaw:Action="urn:checkDefaultLBExistenceAgainstPolicyResponse"/> </wsdl:operation> - <wsdl:operation name="getPartition"> - <wsdl:input message="ns:getPartitionRequest" wsaw:Action="urn:getPartition"/> - <wsdl:output message="ns:getPartitionResponse" wsaw:Action="urn:getPartitionResponse"/> - </wsdl:operation> <wsdl:operation name="removeKubernetesHost"> <wsdl:input message="ns:removeKubernetesHostRequest" wsaw:Action="urn:removeKubernetesHost"/> <wsdl:output message="ns:removeKubernetesHostResponse" wsaw:Action="urn:removeKubernetesHostResponse"/> <wsdl:fault message="ns:AutoScalerServiceNonExistingKubernetesHostException" name="AutoScalerServiceNonExistingKubernetesHostException" wsaw:Action="urn:removeKubernetesHostAutoScalerServiceNonExistingKubernetesHostException"/> </wsdl:operation> + <wsdl:operation name="getKubernetesGroup"> + <wsdl:input message="ns:getKubernetesGroupRequest" wsaw:Action="urn:getKubernetesGroup"/> + <wsdl:output message="ns:getKubernetesGroupResponse" wsaw:Action="urn:getKubernetesGroupResponse"/> + </wsdl:operation> + <wsdl:operation name="getPartition"> + <wsdl:input message="ns:getPartitionRequest" wsaw:Action="urn:getPartition"/> + <wsdl:output message="ns:getPartitionResponse" wsaw:Action="urn:getPartitionResponse"/> + </wsdl:operation> <wsdl:operation name="addPartition"> <wsdl:input message="ns:addPartitionRequest" wsaw:Action="urn:addPartition"/> <wsdl:output message="ns:addPartitionResponse" wsaw:Action="urn:addPartitionResponse"/> @@ -1124,6 +1148,15 @@ <soap:body use="literal"/> </wsdl:output> </wsdl:operation> + <wsdl:operation name="getKubernetesGroup"> + <soap:operation soapAction="urn:getKubernetesGroup" style="document"/> + <wsdl:input> + <soap:body use="literal"/> + </wsdl:input> + <wsdl:output> + <soap:body use="literal"/> + </wsdl:output> + </wsdl:operation> <wsdl:operation name="removeKubernetesHost"> <soap:operation soapAction="urn:removeKubernetesHost" style="document"/> <wsdl:input> @@ -1412,6 +1445,15 @@ <soap12:body use="literal"/> </wsdl:output> </wsdl:operation> + <wsdl:operation name="getKubernetesGroup"> + <soap12:operation soapAction="urn:getKubernetesGroup" style="document"/> + <wsdl:input> + <soap12:body use="literal"/> + </wsdl:input> + <wsdl:output> + <soap12:body use="literal"/> + </wsdl:output> + </wsdl:operation> <wsdl:operation name="removeKubernetesHost"> <soap12:operation soapAction="urn:removeKubernetesHost" style="document"/> <wsdl:input> @@ -1682,6 +1724,15 @@ <mime:content type="text/xml" part="parameters"/> </wsdl:output> </wsdl:operation> + <wsdl:operation name="getKubernetesGroup"> + <http:operation location="getKubernetesGroup"/> + <wsdl:input> + <mime:content type="text/xml" part="parameters"/> + </wsdl:input> + <wsdl:output> + <mime:content type="text/xml" part="parameters"/> + </wsdl:output> + </wsdl:operation> <wsdl:operation name="removeKubernetesHost"> <http:operation location="removeKubernetesHost"/> <wsdl:input>
