Repository: incubator-stratos
Updated Branches:
  refs/heads/master cbf7c38f0 -> e20b3ea41


Adding internal repo based cartridge subscription. Adding service group 
property to Cartridge definition. Modifying internal repo subscription logic


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

Branch: refs/heads/master
Commit: e20b3ea41b9f692f16567cce4e8cc7dc241e5ce6
Parents: cbf7c38
Author: Sajith Kariyawasam <[email protected]>
Authored: Wed Mar 26 18:38:13 2014 +0530
Committer: Sajith Kariyawasam <[email protected]>
Committed: Wed Mar 26 18:38:13 2014 +0530

----------------------------------------------------------------------
 .../cloud/controller/pojo/Cartridge.java        | 12 +++
 .../cloud/controller/pojo/CartridgeConfig.java  | 12 +++
 .../controller/util/CloudControllerUtil.java    |  2 +-
 .../apache/stratos/manager/dto/Cartridge.java   | 10 +++
 .../manager/service/RepositoryInfoBean.java     | 11 +--
 .../InternalRepoBasedCartridgeSubscription.java | 78 ++++++++++++++++++++
 .../manager/subscription/SubscriptionData.java  |  9 +++
 .../factory/CartridgeSubscriptionFactory.java   |  3 +
 .../manager/utils/CartridgeConstants.java       |  3 +
 .../manager/utils/RepositoryCreator.java        | 18 +++--
 .../rest/endpoint/bean/CartridgeInfoBean.java   |  9 +++
 .../definition/CartridgeDefinitionBean.java     |  2 +
 .../bean/util/converter/PojoConverter.java      |  2 +-
 .../rest/endpoint/services/ServiceUtils.java    |  3 +-
 .../main/resources/CloudControllerService.wsdl  |  1 +
 15 files changed, 157 insertions(+), 18 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/pojo/Cartridge.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/pojo/Cartridge.java
 
b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/pojo/Cartridge.java
index fc78953..46424e7 100644
--- 
a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/pojo/Cartridge.java
+++ 
b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/pojo/Cartridge.java
@@ -59,6 +59,8 @@ public class Cartridge implements Serializable{
     
     private List<AppType> appTypeMappings = new ArrayList<AppType>();
     
+    private String serviceGroup;
+    
     /**
      * Property map of this Cartridge.
      */
@@ -323,4 +325,14 @@ public class Cartridge implements Serializable{
     public void setDefaultDeploymentPolicy(String defaultDeploymentPolicy) {
         this.defaultDeploymentPolicy = defaultDeploymentPolicy;
     }
+
+       public String getServiceGroup() {
+               return serviceGroup;
+       }
+
+       public void setServiceGroup(String serviceGroup) {
+               this.serviceGroup = serviceGroup;
+       }
+    
+    
 }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/pojo/CartridgeConfig.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/pojo/CartridgeConfig.java
 
b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/pojo/CartridgeConfig.java
index a9a1868..0862ad1 100644
--- 
a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/pojo/CartridgeConfig.java
+++ 
b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/pojo/CartridgeConfig.java
@@ -60,6 +60,8 @@ public class CartridgeConfig implements Serializable {
     private IaasConfig[] iaasConfigs;    
     
     private LoadbalancerConfig lbConfig;
+    
+    private String serviceGroup;
 
 
     public String getType() {
@@ -259,4 +261,14 @@ public class CartridgeConfig implements Serializable {
     public void setPersistence(Persistence persistence) {
         this.persistence = persistence;
     }
+
+       public String getServiceGroup() {
+               return serviceGroup;
+       }
+
+       public void setServiceGroup(String serviceGroup) {
+               this.serviceGroup = serviceGroup;
+       }
+    
+    
 }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/util/CloudControllerUtil.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/util/CloudControllerUtil.java
 
b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/util/CloudControllerUtil.java
index 663b514..2c9738e 100644
--- 
a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/util/CloudControllerUtil.java
+++ 
b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/util/CloudControllerUtil.java
@@ -75,7 +75,7 @@ public class CloudControllerUtil {
         cartridge.setMultiTenant(config.isMultiTenant());
         
cartridge.setDefaultAutoscalingPolicy(config.getDefaultAutoscalingPolicy());
         
cartridge.setDefaultDeploymentPolicy(config.getDefaultDeploymentPolicy());
-
+        cartridge.setServiceGroup(config.getServiceGroup());
         org.apache.stratos.cloud.controller.pojo.Properties props = 
config.getProperties();
         if (props != null) {
             for (Property prop : props.getProperties()) {

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/dto/Cartridge.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/dto/Cartridge.java
 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/dto/Cartridge.java
index 5ae24cb..18090c6 100644
--- 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/dto/Cartridge.java
+++ 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/dto/Cartridge.java
@@ -63,6 +63,8 @@ public class Cartridge implements Comparable<Cartridge> {
     private boolean isPersistance;
 
     private Persistence persistence;
+    
+    private String serviceGroup;
 
        public String getDisplayName() {
                return displayName;
@@ -283,4 +285,12 @@ public class Cartridge implements Comparable<Cartridge> {
     public void setPersistence(Persistence persistence) {
         this.persistence = persistence;
     }
+
+       public String getServiceGroup() {
+               return serviceGroup;
+       }
+
+       public void setServiceGroup(String serviceGroup) {
+               this.serviceGroup = serviceGroup;
+       }
 }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/service/RepositoryInfoBean.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/service/RepositoryInfoBean.java
 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/service/RepositoryInfoBean.java
index 45e8805..d0ba946 100644
--- 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/service/RepositoryInfoBean.java
+++ 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/service/RepositoryInfoBean.java
@@ -24,7 +24,6 @@ package org.apache.stratos.manager.service;
 */
 
 
-import org.apache.stratos.cloud.controller.stub.pojo.CartridgeInfo;
 
 /**
  *
@@ -37,18 +36,16 @@ public class RepositoryInfoBean {
        private String userName;
        private String password;
        private String[] dirArray;
-       private CartridgeInfo cartridgeInfo;
        
        
        public RepositoryInfoBean(String repoURL, String cartridgeAlias, String 
tenantDomain,
-                              String userName, String password, String[] 
dirArray, CartridgeInfo cartridgeInfo) {
+                              String userName, String password, String[] 
dirArray) {
            this.repoURL = repoURL;
            this.cartridgeAlias = cartridgeAlias;
            this.tenantDomain = tenantDomain;
            this.userName = userName;
            this.setPassword(password);
            this.dirArray = dirArray;
-           this.cartridgeInfo = cartridgeInfo;
     }
        public String getRepoURL() {
        return repoURL;
@@ -80,12 +77,6 @@ public class RepositoryInfoBean {
        public void setDirArray(String[] dirArray) {
        this.dirArray = dirArray;
     }
-       public CartridgeInfo getCartridgeInfo() {
-       return cartridgeInfo;
-    }
-       public void setCartridgeInfo(CartridgeInfo cartridgeInfo) {
-       this.cartridgeInfo = cartridgeInfo;
-    }
     public String getPassword() {
         return password;
     }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/InternalRepoBasedCartridgeSubscription.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/InternalRepoBasedCartridgeSubscription.java
 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/InternalRepoBasedCartridgeSubscription.java
new file mode 100644
index 0000000..ebd9a32
--- /dev/null
+++ 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/InternalRepoBasedCartridgeSubscription.java
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF 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.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.stratos.cloud.controller.stub.pojo.CartridgeInfo;
+import org.apache.stratos.manager.exception.ADCException;
+import org.apache.stratos.manager.exception.InvalidRepositoryException;
+import 
org.apache.stratos.manager.exception.RepositoryCredentialsRequiredException;
+import org.apache.stratos.manager.exception.RepositoryRequiredException;
+import org.apache.stratos.manager.exception.RepositoryTransportException;
+import org.apache.stratos.manager.repository.Repository;
+import org.apache.stratos.manager.service.RepositoryInfoBean;
+import 
org.apache.stratos.manager.subscription.tenancy.SubscriptionTenancyBehaviour;
+import org.apache.stratos.manager.utils.CartridgeConstants;
+import org.apache.stratos.manager.utils.RepositoryCreator;
+
+public class InternalRepoBasedCartridgeSubscription extends 
CartridgeSubscription {
+
+       /**
+        * 
+        */
+       private static final long serialVersionUID = -1869600699603408517L;
+       private static final Log log = 
LogFactory.getLog(InternalRepoBasedCartridgeSubscription.class);
+       
+       public InternalRepoBasedCartridgeSubscription(CartridgeInfo 
cartridgeInfo,
+                       SubscriptionTenancyBehaviour 
subscriptionTenancyBehaviour) {
+               super(cartridgeInfo, subscriptionTenancyBehaviour);
+       }
+
+       @Override
+       public Repository manageRepository(String repoURL, String repoUserName,
+                       String repoUserPassword, boolean privateRepo) throws 
ADCException,
+                       RepositoryRequiredException,
+                       RepositoryCredentialsRequiredException,
+                       RepositoryTransportException, 
InvalidRepositoryException {
+               
+               Repository repository = null;
+               String defaultRepoUserName = 
System.getProperty(CartridgeConstants.INTERNAL_GIT_USERNAME);
+               String defaultRepoPassword = 
System.getProperty(CartridgeConstants.INTERNAL_GIT_PASSWORD);
+               String[] dirArray = null;
+               
+               // Repo URL will be generated inside createInternalRepository 
method
+               RepositoryInfoBean repoInfoBean = new 
RepositoryInfoBean(repoURL, getAlias(), getSubscriber().getTenantDomain(),
+                               defaultRepoUserName, defaultRepoPassword, 
dirArray);
+               RepositoryCreator repoCreator = new 
RepositoryCreator(repoInfoBean);
+               try {
+                       repository = repoCreator.createInternalRepository();
+               } catch (Exception e) {
+                       String msg = "Error occurred in creating internal 
repository. ";
+                       log.error( msg + e.getMessage());
+                       throw new ADCException(msg);
+               }
+               return repository;
+                               
+       }
+       
+   
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/SubscriptionData.java
----------------------------------------------------------------------
diff --git 
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
index b258400..ff0f98b 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
@@ -41,6 +41,7 @@ public class SubscriptionData {
     private Property[] properties;
     private PersistenceContext persistanceCtxt;
     private boolean isCommitsEnabled;
+    private String serviceGroup;
 
     public String getCartridgeType() {
         return cartridgeType;
@@ -161,5 +162,13 @@ public class SubscriptionData {
        public void setCommitsEnabled(boolean isCommitsEnabled) {
                this.isCommitsEnabled = isCommitsEnabled;
        }
+
+       public String getServiceGroup() {
+               return serviceGroup;
+       }
+
+       public void setServiceGroup(String serviceGroup) {
+               this.serviceGroup = serviceGroup;
+       }
     
 }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/factory/CartridgeSubscriptionFactory.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/factory/CartridgeSubscriptionFactory.java
 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/factory/CartridgeSubscriptionFactory.java
index fb75b33..fbeb159 100644
--- 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/factory/CartridgeSubscriptionFactory.java
+++ 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/subscription/factory/CartridgeSubscriptionFactory.java
@@ -59,6 +59,9 @@ public class CartridgeSubscriptionFactory {
             else if (cartridgeInfo.getProvider().equals("application")) {
                 cartridgeSubscription = new 
ApplicationCartridgeSubscription(cartridgeInfo, subscriptionTenancyBehaviour);
             }
+            else if 
(cartridgeInfo.getProvider().equals(CartridgeConstants.INTERNAL_REPO_BASED_CARTRIDGE_PROVIDER))
 {
+                cartridgeSubscription = new 
InternalRepoBasedCartridgeSubscription(cartridgeInfo, 
subscriptionTenancyBehaviour);
+            }
             else {
                 cartridgeSubscription = new 
FrameworkCartridgeSubscription(cartridgeInfo, subscriptionTenancyBehaviour);
             }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/utils/CartridgeConstants.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/utils/CartridgeConstants.java
 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/utils/CartridgeConstants.java
index 95a1c6d..1ae3554 100644
--- 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/utils/CartridgeConstants.java
+++ 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/utils/CartridgeConstants.java
@@ -59,6 +59,8 @@ public class CartridgeConstants {
     public static final String DATA_CARTRIDGE_PROVIDER = "data";
        public static final String INTERNAL_GIT_USERNAME = 
"internal.repo.username";
        public static final String INTERNAL_GIT_PASSWORD = 
"internal.repo.password";
+       public static final String INTERNAL_GIT_URL = "internal.git.url"; // 
"https://localhost:8443/";
+       public static final String INTERNAL_GIT_DIR_STRUCTURE = 
"internal.git.dir"; // directory structure
 
     public static final String CUSTOM_PAYLOAD_PARAM_NAME_PREFIX = 
"payload_parameter.";
     
@@ -89,6 +91,7 @@ public class CartridgeConstants {
        public static final String HOST_NAME_COL = "hostname";
        public static final String MAPPED_DOMAIN_COL = "mappedDomain";
        public static final String ACTION_COL = "action";
+       public static final String INTERNAL_REPO_BASED_CARTRIDGE_PROVIDER = 
"internal";
 
     public static final class DomainMappingInfo {
                public static final String ACTUAL_HOST = "actual.host";

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/utils/RepositoryCreator.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/utils/RepositoryCreator.java
 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/utils/RepositoryCreator.java
index da5c27d..b17b85f 100644
--- 
a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/utils/RepositoryCreator.java
+++ 
b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/utils/RepositoryCreator.java
@@ -67,11 +67,13 @@ public class RepositoryCreator implements Runnable {
        }
 
     //Creating the internal repo in the same thread as createSubscription()
-    public void createInternalRepository () throws Exception {
+    public Repository createInternalRepository () throws Exception {
 
+       Repository repo = null;
+       
         if (repoInfoBean != null) {
             try {
-                createRepository(repoInfoBean.getCartridgeAlias(), 
repoInfoBean.getTenantDomain(),
+                repo = createRepository(repoInfoBean.getCartridgeAlias(), 
repoInfoBean.getTenantDomain(),
                         repoInfoBean.getUserName(), 
repoInfoBean.getPassword());
                 
                                if (repoInfoBean.getDirArray() != null && 
repoInfoBean.getDirArray().length > 0) {
@@ -86,6 +88,7 @@ public class RepositoryCreator implements Runnable {
                 throw new Exception(errorMsg, e);
             }
         }
+        return repo;
     }
 
        private Repository createRepository(String cartridgeName, String 
tenantDomain, String userName, String password)
@@ -106,7 +109,7 @@ public class RepositoryCreator implements Runnable {
 
                        boolean isSuccess =
                                            RpcUtils.createRepository(model,
-                                                                     
"https://localhost:8443/";,
+                                                                     
System.getProperty(CartridgeConstants.INTERNAL_GIT_URL),
                                                                      userName, 
passwordArr);
                        if (!isSuccess) {
                                throw new Exception("Exception is occurred when 
creating an internal git repo. ");
@@ -116,7 +119,12 @@ public class RepositoryCreator implements Runnable {
                                  e.getMessage());
                        handleException(e.getMessage(), e);
                }
-
+               
+               
repository.setUrl(System.getProperty(CartridgeConstants.INTERNAL_GIT_URL)+repoName);
+               repository.setUserName(userName);
+               repository.setPassword(password);
+               
+               log.info("Repository is created. : " + repository);
                return repository;
 
        }
@@ -147,7 +155,7 @@ public class RepositoryCreator implements Runnable {
 
                CloneCommand cloneCmd =
                                        git.cloneRepository()
-                                          
.setURI("https://localhost:8443/git/"; + tenantDomain + "/" +
+                                          
.setURI(System.getProperty(CartridgeConstants.INTERNAL_GIT_URL) + tenantDomain 
+ "/" +
                                                           cartridgeName + 
".git")
                                           .setDirectory(new 
File(parentDirName));
 

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/CartridgeInfoBean.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/CartridgeInfoBean.java
 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/CartridgeInfoBean.java
index 656e4e0..46e7f20 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/CartridgeInfoBean.java
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/CartridgeInfoBean.java
@@ -36,6 +36,7 @@ public class CartridgeInfoBean {
     private boolean persistanceRequired;
     private String size;
     private boolean removeOnTermination;
+    private String serviceGroup;
 
     public String getCartridgeType() {
         return cartridgeType;
@@ -148,5 +149,13 @@ public class CartridgeInfoBean {
        public void setCommitsEnabled(boolean commitsEnabled) {
                this.commitsEnabled = commitsEnabled;
        }
+
+       public String getServiceGroup() {
+               return serviceGroup;
+       }
+
+       public void setServiceGroup(String serviceGroup) {
+               this.serviceGroup = serviceGroup;
+       }
     
 }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/cartridge/definition/CartridgeDefinitionBean.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/cartridge/definition/CartridgeDefinitionBean.java
 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/cartridge/definition/CartridgeDefinitionBean.java
index c6c40e4..87c6aac 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/cartridge/definition/CartridgeDefinitionBean.java
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/cartridge/definition/CartridgeDefinitionBean.java
@@ -55,6 +55,8 @@ public class CartridgeDefinitionBean {
     public String defaultAutoscalingPolicy;
 
     public String defaultDeploymentPolicy;
+    
+    public String serviceGroup;
 
     public String toString () {
 

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/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 2317ebd..1208967 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
@@ -49,7 +49,7 @@ public class PojoConverter {
         cartridgeConfig.setDescription(cartridgeDefinitionBean.description);
         
cartridgeConfig.setDefaultAutoscalingPolicy(cartridgeDefinitionBean.defaultAutoscalingPolicy);
         
cartridgeConfig.setDefaultDeploymentPolicy(cartridgeDefinitionBean.defaultDeploymentPolicy);
-
+        cartridgeConfig.setServiceGroup(cartridgeDefinitionBean.serviceGroup);
 
         
         //deployment information

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/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 ce3bcf1..796cbaf 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
@@ -985,7 +985,8 @@ public class ServiceUtils {
         
subscriptionData.setRepositoryUsername(cartridgeInfoBean.getRepoUsername());
         
subscriptionData.setRepositoryPassword(cartridgeInfoBean.getRepoPassword());
         
subscriptionData.setCommitsEnabled(cartridgeInfoBean.isCommitsEnabled());
-
+        subscriptionData.setServiceGroup(cartridgeInfoBean.getServiceGroup());
+        
         if (cartridgeInfoBean.isPersistanceRequired()) {
             // Add persistence related properties to PersistenceContext
             PersistenceContext persistenceContext = new PersistenceContext();

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/e20b3ea4/service-stubs/org.apache.stratos.cloud.controller.service.stub/src/main/resources/CloudControllerService.wsdl
----------------------------------------------------------------------
diff --git 
a/service-stubs/org.apache.stratos.cloud.controller.service.stub/src/main/resources/CloudControllerService.wsdl
 
b/service-stubs/org.apache.stratos.cloud.controller.service.stub/src/main/resources/CloudControllerService.wsdl
index 4d34cac..e91b4b4 100644
--- 
a/service-stubs/org.apache.stratos.cloud.controller.service.stub/src/main/resources/CloudControllerService.wsdl
+++ 
b/service-stubs/org.apache.stratos.cloud.controller.service.stub/src/main/resources/CloudControllerService.wsdl
@@ -374,6 +374,7 @@
                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="portMappings" nillable="true" type="ax26:PortMapping"></xs:element>
                     <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax26:Properties"></xs:element>
                     <xs:element minOccurs="0" name="provider" nillable="true" 
type="xs:string"></xs:element>
+                    <xs:element minOccurs="0" name="serviceGroup" 
nillable="true" type="xs:string"></xs:element>
                     <xs:element minOccurs="0" name="type" nillable="true" 
type="xs:string"></xs:element>
                     <xs:element minOccurs="0" name="version" nillable="true" 
type="xs:string"></xs:element>
                 </xs:sequence>

Reply via email to