Merge branch 'master' of 
https://git-wip-us.apache.org/repos/asf/incubator-stratos


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

Branch: refs/heads/master
Commit: 0aee220b76dd1859f18e18bd0553fc91f5575869
Parents: 110b38a 154f28f
Author: Udara Liyanage <[email protected]>
Authored: Wed Feb 12 22:45:49 2014 -0500
Committer: Udara Liyanage <[email protected]>
Committed: Thu Feb 13 05:02:44 2014 -0500

----------------------------------------------------------------------
 .../impl/CloudControllerServiceImpl.java        |   6 +-
 .../validate/AWSEC2PartitionValidator.java      |   2 +-
 .../balancer/algorithm/AlgorithmContext.java    |  10 +-
 .../balancer/cache/AlgorithmContextCache.java   |  45 ++++++
 .../load/balancer/cache/LoadBalancerCache.java  | 130 +++++++++++++++++
 .../stratos/load/balancer/util/Constants.java   |   3 +
 .../balancer/test/RoundRobinAlgorithmTest.java  |  70 ---------
 .../manager/subscription/SubscriptionData.java  |  18 +++
 .../rest/endpoint/services/ServiceUtils.java    |   6 +-
 .../distribution/src/main/conf/axis2.xml        | 125 ++++++++--------
 .../load-balancer/modules/integration/pom.xml   |  19 ++-
 .../tests/AlgorithmContextCacheTest.java        |  55 +++++++
 .../tests/LoadBalancerTestServerManager.java    |  69 +++++++++
 .../tests/RoundRobinAlgorithmTest.java          |  70 +++++++++
 .../tests/LoadBalancerTestServerManager.java    |  53 -------
 .../src/test/resources/instrumentation.txt      |   2 +-
 .../src/test/resources/loadbalancer.conf        | 142 +++++++++++++++++++
 .../integration/src/test/resources/testng.xml   |  31 ++++
 18 files changed, 655 insertions(+), 201 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/0aee220b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/SubscriptionData.java
----------------------------------------------------------------------
diff --cc 
components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/SubscriptionData.java
index 3185254,0000000..8b65376
mode 100644,000000..100644
--- 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/SubscriptionData.java
+++ 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/SubscriptionData.java
@@@ -1,162 -1,0 +1,180 @@@
++/*
++*  Copyright (c) 2005-2012, WSO2 Inc. (http://www.wso2.org) All Rights 
Reserved.
++*
++*  WSO2 Inc. licenses this file to you under the Apache License,
++*  Version 2.0 (the "License"); you may not use this file except
++*  in compliance with the License.
++*  You may obtain a copy of the License at
++*
++*    http://www.apache.org/licenses/LICENSE-2.0
++*
++* Unless required by applicable law or agreed to in writing,
++* software distributed under the License is distributed on an
++* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
++* KIND, either express or implied.  See the License for the
++* specific language governing permissions and limitations
++* under the License.
++*/
++
 +package org.apache.stratos.manager.subscription;
 +
 +import org.apache.stratos.cloud.controller.pojo.PersistanceMapping;
 +import org.apache.stratos.cloud.controller.pojo.Property;
 +
 +/**
 + * This holds the data that are gathered at the time of subscription. This is 
usefull when passing subscription details to the method calls.
 + */
 +public class SubscriptionData {
 +
 +
 +    private String cartridgeType;
 +    private String cartridgeAlias;
 +
 +    private String autoscalingPolicyName;
 +    private String deploymentPolicyName;
 +    private String tenantDomain;
 +    private int tenantId;
 +    private String tenantAdminUsername;
 +    private String repositoryType = "git";
 +    private String repositoryURL;
 +    private boolean isPrivateRepository;
 +    private String repositoryUsername;
 +    private String repositoryPassword;
 +    private String lbClusterId;
 +    private Property[] properties;
 +    private String dataCartridgeAlias;
 +    private String lbAlias;
 +    private PersistanceMapping persistanceMapping;
 +
 +    public String getCartridgeType() {
 +        return cartridgeType;
 +    }
 +
 +    public void setCartridgeType(String cartridgeType) {
 +        this.cartridgeType = cartridgeType;
 +    }
 +
 +    public String getCartridgeAlias() {
 +        return cartridgeAlias;
 +    }
 +
 +    public void setCartridgeAlias(String cartridgeAlias) {
 +        this.cartridgeAlias = cartridgeAlias;
 +    }
 +
 +    public String getAutoscalingPolicyName() {
 +        return autoscalingPolicyName;
 +    }
 +
 +    public void setAutoscalingPolicyName(String autoscalingPolicyName) {
 +        this.autoscalingPolicyName = autoscalingPolicyName;
 +    }
 +
 +    public String getDeploymentPolicyName() {
 +        return deploymentPolicyName;
 +    }
 +
 +    public void setDeploymentPolicyName(String deploymentPolicyName) {
 +        this.deploymentPolicyName = deploymentPolicyName;
 +    }
 +
 +    public String getTenantDomain() {
 +        return tenantDomain;
 +    }
 +
 +    public void setTenantDomain(String tenantDomain) {
 +        this.tenantDomain = tenantDomain;
 +    }
 +
 +    public int getTenantId() {
 +        return tenantId;
 +    }
 +
 +    public void setTenantId(int tenantId) {
 +        this.tenantId = tenantId;
 +    }
 +
 +    public String getTenantAdminUsername() {
 +        return tenantAdminUsername;
 +    }
 +
 +    public void setTenantAdminUsername(String tenantAdminUsername) {
 +        this.tenantAdminUsername = tenantAdminUsername;
 +    }
 +
 +    public String getRepositoryType() {
 +        return repositoryType;
 +    }
 +
 +    public void setRepositoryType(String repositoryType) {
 +        this.repositoryType = repositoryType;
 +    }
 +
 +    public String getRepositoryURL() {
 +        return repositoryURL;
 +    }
 +
 +    public void setRepositoryURL(String repositoryURL) {
 +        this.repositoryURL = repositoryURL;
 +    }
 +
 +    public boolean isPrivateRepository() {
 +        return isPrivateRepository;
 +    }
 +
 +    public void setPrivateRepository(boolean isPrivateRepository) {
 +        this.isPrivateRepository = isPrivateRepository;
 +    }
 +
 +    public String getRepositoryUsername() {
 +        return repositoryUsername;
 +    }
 +
 +    public void setRepositoryUsername(String repositoryUsername) {
 +        this.repositoryUsername = repositoryUsername;
 +    }
 +
 +    public String getRepositoryPassword() {
 +        return repositoryPassword;
 +    }
 +
 +    public void setRepositoryPassword(String repositoryPassword) {
 +        this.repositoryPassword = repositoryPassword;
 +    }
 +
 +    public String getLbClusterId() {
 +        return lbClusterId;
 +    }
 +
 +    public void setLbClusterId(String lbClusterId) {
 +        this.lbClusterId = lbClusterId;
 +    }
 +
 +    public Property[] getProperties() {
 +        return properties;
 +    }
 +
 +    public void setProperties(Property[] properties) {
 +        this.properties = properties;
 +    }
 +
 +    public void setDataCartridgeAlias(String dataCartridgeAlias) 
{this.dataCartridgeAlias = dataCartridgeAlias; }
 +
 +    public String getDataCartridgeAlias() {return dataCartridgeAlias;}
 +
 +    public String getLbAlias() {
 +        return lbAlias;
 +    }
 +
 +    public void setLbAlias(String lbAlias) {
 +        this.lbAlias = lbAlias;
 +    }
 +
 +    public PersistanceMapping getPersistanceMapping() {
 +        return persistanceMapping;
 +    }
 +
 +    public void setPersistanceMapping(PersistanceMapping persistanceMapping) {
 +        this.persistanceMapping = persistanceMapping;
 +    }
 +}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/0aee220b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java
----------------------------------------------------------------------
diff --cc 
components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java
index 0099416,510c366..7a3cd33
--- 
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
@@@ -774,71 -774,17 +774,71 @@@ public class ServiceUtils 
              throw new ADCException(msg, e);
          }
  
 +        String cartridgeType = cartridgeInfoBean.getCartridgeType();
 +        String deploymentPolicy = cartridgeInfoBean.getDeploymentPolicy();
 +        String autoscalingPolicy = cartridgeInfoBean.getAutoscalePolicy();
 +        String dataCartridgeAlias = cartridgeInfoBean.getDataCartridgeAlias();
 +
 +        SubscriptionData subscriptionData = new SubscriptionData();
 +        subscriptionData.setCartridgeType(cartridgeType);
 +        
subscriptionData.setCartridgeAlias(cartridgeInfoBean.getAlias().trim());
 +        subscriptionData.setDataCartridgeAlias(dataCartridgeAlias);
 +        subscriptionData.setAutoscalingPolicyName(autoscalingPolicy);
 +        subscriptionData.setDeploymentPolicyName(deploymentPolicy);
 +        subscriptionData.setTenantDomain(tenantDomain);
 +        
subscriptionData.setTenantId(ApplicationManagementUtil.getTenantId(configurationContext));
 +        subscriptionData.setTenantAdminUsername(tenantUsername);
 +        subscriptionData.setRepositoryType("git");
 +        subscriptionData.setRepositoryURL(cartridgeInfoBean.getRepoURL());
 +        
subscriptionData.setRepositoryUsername(cartridgeInfoBean.getRepoURL());
 +        
subscriptionData.setRepositoryPassword(cartridgeInfoBean.getRepoPassword());
 +
 +        Properties properties = new Properties();
 +        if(cartridgeInfoBean.getPersistanceMappingBean() != null){
 +            PersistanceMappingBean  persistanceMappingBean = 
cartridgeInfoBean.getPersistanceMappingBean();
 +            /*
 +            PersistanceMapping persistanceMapping = new PersistanceMapping();
 +            
persistanceMapping.setPersistanceRequired(persistanceMappingBean.persistanceRequired);
 +            persistanceMapping.setSize(persistanceMappingBean.size);
 +            persistanceMapping.setDevice(persistanceMappingBean.device);
 +            
persistanceMapping.setRemoveOntermination(persistanceMappingBean.removeOnTermination);
 +            subscriptionData.setPersistanceMapping(persistanceMapping);
 +            */
++
++            // Add persistance mapping properties to the subscription.
 +            Property persistanceRequiredProperty = new Property();
 +            persistanceRequiredProperty.setName("is-required");
 +            
persistanceRequiredProperty.setValue(String.valueOf(persistanceMappingBean.persistanceRequired));
 +
 +            Property sizeProperty = new Property();
 +            persistanceRequiredProperty.setName("is-required");
 +            
persistanceRequiredProperty.setValue(String.valueOf(persistanceMappingBean.size));
 +
 +            Property deviceProperty = new Property();
 +            persistanceRequiredProperty.setName("is-required");
 +            
persistanceRequiredProperty.setValue(String.valueOf(persistanceMappingBean.device));
 +
 +            Property deleteOnTerminationProperty = new Property();
 +            persistanceRequiredProperty.setName("is-required");
 +            
persistanceRequiredProperty.setValue(String.valueOf(persistanceMappingBean.removeOnTermination));
 +
 +            Properties props = new Properties();
 +            props.setProperties(new 
Property[]{persistanceRequiredProperty,sizeProperty, deviceProperty, 
deleteOnTerminationProperty});
 +        }
 +
 +
          // If multitenant, return for now. TODO -- fix properly
          if(cartridgeInfo != null && cartridgeInfo.getMultiTenant()) {
                 log.info(" ******* MT cartridge ******* ");
 -                       
 -               CartridgeSubscription cartridgeSubscription = 
 -               
cartridgeSubsciptionManager.subscribeToCartridgeWithProperties(cartridgeType, 
alias, autoscalingPolicy, 
 -                                                                         
deploymentPolicy ,tenantDomain, 
 -                                                                         
ApplicationManagementUtil.getTenantId(configurationContext),
 -                                                                         
userName, "git", repoURL, false, repoUsername, repoPassword, null, null);
 +
 +            subscriptionData.setPrivateRepository(false);
 +            subscriptionData.setLbClusterId(null);
 +            subscriptionData.setProperties(null);
-                        
++
 +            CartridgeSubscription cartridgeSubscription =
 +                                        
cartridgeSubsciptionManager.subscribeToCartridgeWithProperties(subscriptionData);
                 log.info(" --- ** -- ");
 -              return 
cartridgeSubsciptionManager.registerCartridgeSubscription(cartridgeSubscription);
 +              return 
cartridgeSubsciptionManager.registerCartridgeSubscription(cartridgeSubscription,
 properties);
                         
          }
          

Reply via email to