You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by is...@apache.org on 2014/07/17 11:49:26 UTC
[2/6] git commit: Creating Subscriptions from Composite App structure
Creating Subscriptions from Composite App structure
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/cf72ef4c
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/cf72ef4c
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/cf72ef4c
Branch: refs/heads/4.0.0-grouping
Commit: cf72ef4ccb5b7b35ca30ce475ef0fa4cc9cef6ca
Parents: 5cb4ffc
Author: Isuru Haththotuwa <is...@apache.org>
Authored: Sun Jul 13 16:52:37 2014 +0530
Committer: Isuru Haththotuwa <is...@apache.org>
Committed: Sun Jul 13 16:52:37 2014 +0530
----------------------------------------------------------------------
.../CompositeApplicationManager.java | 131 ++++++++++++++++---
.../parser/CompositeApplicationParser.java | 1 -
.../DefaultCompositeApplicationParser.java | 16 +--
.../application/parser/ParserUtils.java | 6 +-
.../structure/CompositeAppContext.java | 20 +--
.../application/structure/GroupContext.java | 19 +--
.../CompositeApplicationException.java | 47 +++++++
.../rest/endpoint/services/ServiceUtils.java | 9 +-
.../rest/endpoint/services/StratosAdmin.java | 3 +-
9 files changed, 200 insertions(+), 52 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/cf72ef4c/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/CompositeApplicationManager.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/CompositeApplicationManager.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/CompositeApplicationManager.java
index a1d87a6..02893e8 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/CompositeApplicationManager.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/CompositeApplicationManager.java
@@ -1,17 +1,23 @@
package org.apache.stratos.manager.composite.application;
import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.stratos.manager.composite.application.beans.CompositeAppDefinition;
import org.apache.stratos.manager.composite.application.parser.CompositeApplicationParser;
import org.apache.stratos.manager.composite.application.parser.DefaultCompositeApplicationParser;
+import org.apache.stratos.manager.composite.application.structure.CompositeAppContext;
+import org.apache.stratos.manager.composite.application.structure.GroupContext;
+import org.apache.stratos.manager.composite.application.structure.SubscribableContext;
import org.apache.stratos.manager.composite.application.utils.ApplicationUtils;
-import org.apache.stratos.manager.exception.ADCException;
-import org.apache.stratos.manager.exception.CompositeApplicationDefinitionException;
-import org.apache.stratos.manager.exception.PersistenceManagerException;
+import org.apache.stratos.manager.exception.*;
+import org.apache.stratos.manager.manager.CartridgeSubscriptionManager;
import org.apache.stratos.manager.retriever.DataInsertionAndRetrievalManager;
+import org.apache.stratos.manager.subscription.CartridgeSubscription;
+import org.apache.stratos.manager.subscription.SubscriptionData;
import org.apache.stratos.messaging.domain.topology.ConfigCompositeApplication;
//Grouping
@@ -19,30 +25,117 @@ public class CompositeApplicationManager {
private static Log log = LogFactory.getLog(CompositeApplicationManager.class);
- public void deployCompositeApplication (CompositeAppDefinition compositeAppDefinition) throws CompositeApplicationDefinitionException, PersistenceManagerException {
-// if (log.isDebugEnabled()) {
-// log.debug("deploying composite application " + configCompositeApplication.getAlias());
-// }
-// registerCompositeApplication(configCompositeApplication);
-// if (log.isDebugEnabled()) {
-// log.debug("publishing composite application " + configCompositeApplication.getAlias());
-// }
-// ApplicationUtils.publishApplicationCreatedEvent(configCompositeApplication);
-// if (log.isDebugEnabled()) {
-// log.debug("composite application successfully deployed" + configCompositeApplication.getAlias());
-// }
+ public void deployCompositeApplication (CompositeAppDefinition compositeAppDefinition, int tenantId, String tenantDomain,
+ String tenantAdminUsername) throws CompositeApplicationException, CompositeApplicationDefinitionException,
+ PersistenceManagerException {
CompositeApplicationParser compositeAppParser = new DefaultCompositeApplicationParser();
- compositeAppParser.parse(compositeAppDefinition);
+ CompositeAppContext compositeAppContext = compositeAppParser.parse(compositeAppDefinition);
+
+ log.info("Composite Application [ Id: " + compositeAppDefinition.getApplicationId() + " , alias: "
+ + compositeAppDefinition.getAlias() + " ] deployed successfully");
//DataInsertionAndRetrievalManager mgr = new DataInsertionAndRetrievalManager();
//mgr.persistCompositeApplication(compositeAppDefinition);
+ Set<CartridgeSubscription> cartridgeSubscriptions = new HashSet<CartridgeSubscription>();
- // TODO: traverse the data structure and create the subscriptions
+ // traverse through the Composite App Structure and create Cartridge Subscriptions
+ if(compositeAppContext.getSubscribableContexts() != null) {
+ // Subscription relevant to top level Subscribables
+ cartridgeSubscriptions.addAll(getCartridgeSybscriptionsForSubscribables(compositeAppContext.getSubscribableContexts(),
+ tenantId, tenantDomain, tenantAdminUsername));
+ }
- log.info("Composite Application [ Id: " + compositeAppDefinition.getApplicationId() + " , alias: "
- + compositeAppDefinition.getAlias() + " ] deployed successfully");
+ if (compositeAppContext.getGroupContexts() != null) {
+ // Subscriptions relevant to Groups
+ cartridgeSubscriptions.addAll(getCartridgeSubscriptionForGroups(compositeAppContext.getGroupContexts(), tenantId,
+ tenantDomain, tenantAdminUsername));
+ }
}
+
+ private Set<CartridgeSubscription> getCartridgeSubscriptionForGroups (Set<GroupContext> groupContexts,
+ int tenantId, String tenantDomain,
+ String tenantAdminUsername)
+ throws CompositeApplicationException {
+
+ Set<CartridgeSubscription> cartridgeSubscriptions = new HashSet<CartridgeSubscription>();
+ for (GroupContext groupContext : groupContexts) {
+ // create Subscriptions for the Group's top level Subscribables
+ if (groupContext.getSubscribableContexts() != null) {
+ cartridgeSubscriptions.addAll(getCartridgeSybscriptionsForSubscribables(groupContext.getSubscribableContexts(),
+ tenantId, tenantDomain, tenantAdminUsername));
+ }
+ // create Subscriptions for the nested Group's Subscribables
+ if (groupContext.getGroupContexts() != null) {
+ cartridgeSubscriptions.addAll(getCartridgeSubscriptionForGroups(groupContext.getGroupContexts(), tenantId,
+ tenantDomain, tenantAdminUsername));
+ }
+ }
+
+ return cartridgeSubscriptions;
+ }
+
+ private Set<CartridgeSubscription> getCartridgeSybscriptionsForSubscribables (Set<SubscribableContext> subscribableContexts,
+ int tenantId, String tenantDomain,
+ String tenantAdminUsername)
+ throws CompositeApplicationException {
+
+ Set<CartridgeSubscription> cartridgeSubscriptions = new HashSet<CartridgeSubscription>();
+
+ for (SubscribableContext subscribableContext : subscribableContexts) {
+ cartridgeSubscriptions.add(getCartridgeSubscription(subscribableContext, tenantId, tenantDomain, tenantAdminUsername));
+ }
+
+ return cartridgeSubscriptions;
+ }
+
+ private CartridgeSubscription getCartridgeSubscription (SubscribableContext subscribableContext, int tenantId, String tenantDomain,
+ String tenantAdminUsername) throws CompositeApplicationException {
+
+ SubscriptionData subscriptionData = new SubscriptionData();
+ subscriptionData.setCartridgeType(subscribableContext.getCartridgeType());
+ subscriptionData.setCartridgeAlias(subscribableContext.getAlias());
+ subscriptionData.setAutoscalingPolicyName(subscribableContext.getAutoscalingPolicy());
+ subscriptionData.setDeploymentPolicyName(subscribableContext.getDeploymentPolicy());
+ subscriptionData.setTenantId(tenantId);
+ subscriptionData.setTenantDomain(tenantDomain);
+ subscriptionData.setTenantAdminUsername(tenantAdminUsername);
+
+ if (subscribableContext.getRepoUrl() != null && !subscribableContext.getRepoUrl().isEmpty()) {
+ subscriptionData.setRepositoryType("git");
+ subscriptionData.setRepositoryURL(subscribableContext.getRepoUrl());
+ subscriptionData.setPrivateRepository(subscribableContext.isPrivateRepo());
+ subscriptionData.setRepositoryUsername(subscribableContext.getUsername());
+ subscriptionData.setRepositoryPassword(subscribableContext.getPassword());
+ }
+
+ CartridgeSubscriptionManager cartridgeSubscriptionManager = new CartridgeSubscriptionManager();
+ try {
+ return cartridgeSubscriptionManager.createCartridgeSubscription(subscriptionData);
+
+ } catch (ADCException e) {
+ throw new CompositeApplicationException(e);
+ } catch (InvalidCartridgeAliasException e) {
+ throw new CompositeApplicationException(e);
+ } catch (DuplicateCartridgeAliasException e) {
+ throw new CompositeApplicationException(e);
+ } catch (PolicyException e) {
+ throw new CompositeApplicationException(e);
+ } catch (UnregisteredCartridgeException e) {
+ throw new CompositeApplicationException(e);
+ } catch (RepositoryRequiredException e) {
+ throw new CompositeApplicationException(e);
+ } catch (RepositoryCredentialsRequiredException e) {
+ throw new CompositeApplicationException(e);
+ } catch (RepositoryTransportException e) {
+ throw new CompositeApplicationException(e);
+ } catch (AlreadySubscribedException e) {
+ throw new CompositeApplicationException(e);
+ } catch (InvalidRepositoryException e) {
+ throw new CompositeApplicationException(e);
+ }
+
+ }
public void unDeployCompositeApplication(String configApplicationAlias) throws ADCException {
if (log.isDebugEnabled()) {
http://git-wip-us.apache.org/repos/asf/stratos/blob/cf72ef4c/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/CompositeApplicationParser.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/CompositeApplicationParser.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/CompositeApplicationParser.java
index 1c494a3..e319742 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/CompositeApplicationParser.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/CompositeApplicationParser.java
@@ -20,7 +20,6 @@
package org.apache.stratos.manager.composite.application.parser;
import org.apache.stratos.manager.composite.application.structure.CompositeAppContext;
-import org.apache.stratos.manager.composite.application.tmp.CompositeAppRegistrants;
import org.apache.stratos.manager.exception.CompositeApplicationDefinitionException;
http://git-wip-us.apache.org/repos/asf/stratos/blob/cf72ef4c/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/DefaultCompositeApplicationParser.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/DefaultCompositeApplicationParser.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/DefaultCompositeApplicationParser.java
index 6fc15cd..9bfc864 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/DefaultCompositeApplicationParser.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/DefaultCompositeApplicationParser.java
@@ -211,12 +211,12 @@ public class DefaultCompositeApplicationParser implements CompositeApplicationPa
return compositeAppContext;
}
- private List<GroupContext> getGroupContexts (List<GroupDefinition> groupDefinitions,
+ private Set<GroupContext> getGroupContexts (List<GroupDefinition> groupDefinitions,
Map<String, SubscribableInfo> subscribableInformation,
Map<String, GroupDefinition> definedGroups)
throws CompositeApplicationDefinitionException {
- List<GroupContext> groupContexts = new ArrayList<GroupContext>();
+ Set<GroupContext> groupContexts = new HashSet<GroupContext>();
for (GroupDefinition group : groupDefinitions) {
groupContexts.add(getGroupContext(group, subscribableInformation, definedGroups));
@@ -248,7 +248,7 @@ public class DefaultCompositeApplicationParser implements CompositeApplicationPa
}
// get nested groups
if (group.getSubGroups() != null) {
- List<GroupContext> nestedGroupContexts = new ArrayList<GroupContext>();
+ Set<GroupContext> nestedGroupContexts = new HashSet<GroupContext>();
// check sub groups
for (GroupDefinition subGroup : group.getSubGroups()) {
nestedGroupContexts.add(getGroupContext(subGroup, subscribableInformation, definedGroups));
@@ -260,7 +260,7 @@ public class DefaultCompositeApplicationParser implements CompositeApplicationPa
return groupContext;
}
- private List<StartupOrder> getStartupOrderForGroup(String serviceGroupName) throws CompositeApplicationDefinitionException {
+ private Set<StartupOrder> getStartupOrderForGroup(String serviceGroupName) throws CompositeApplicationDefinitionException {
ServiceGroupDefinition groupDefinition;
@@ -284,14 +284,14 @@ public class DefaultCompositeApplicationParser implements CompositeApplicationPa
return null;
}
- private List<StartupOrder> getStartupOrderForApplicationComponents (List<StartupOrderDefinition> startupOrderDefinitions)
+ private Set<StartupOrder> getStartupOrderForApplicationComponents (List<StartupOrderDefinition> startupOrderDefinitions)
throws CompositeApplicationDefinitionException {
if (startupOrderDefinitions == null) {
return null;
}
- List<StartupOrder> startupOrders = new ArrayList<StartupOrder>();
+ Set<StartupOrder> startupOrders = new HashSet<StartupOrder>();
for (StartupOrderDefinition startupOrderDefinition : startupOrderDefinitions) {
startupOrders.add(new StartupOrder(startupOrderDefinition.getStart(), startupOrderDefinition.getAfter()));
@@ -323,11 +323,11 @@ public class DefaultCompositeApplicationParser implements CompositeApplicationPa
}
- private List<SubscribableContext> getSubsribableContexts (List<SubscribableDefinition> subscribableDefinitions,
+ private Set<SubscribableContext> getSubsribableContexts (List<SubscribableDefinition> subscribableDefinitions,
Map<String, SubscribableInfo> subscribableInformation)
throws CompositeApplicationDefinitionException {
- List<SubscribableContext> subscribableContexts = new ArrayList<SubscribableContext>();
+ Set<SubscribableContext> subscribableContexts = new HashSet<SubscribableContext>();
for (SubscribableDefinition subscribableDefinition : subscribableDefinitions) {
// check is there is a related Subscribable Information
http://git-wip-us.apache.org/repos/asf/stratos/blob/cf72ef4c/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/ParserUtils.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/ParserUtils.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/ParserUtils.java
index 8e3939f..be9e703 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/ParserUtils.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/parser/ParserUtils.java
@@ -29,7 +29,9 @@ import org.apache.stratos.manager.grouping.definitions.ServiceGroupDefinition;
import org.apache.stratos.manager.grouping.definitions.StartupOrderDefinition;
import java.util.ArrayList;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
public class ParserUtils {
@@ -49,9 +51,9 @@ public class ParserUtils {
return subscribableContext;
}
- public static List<StartupOrder> convert (List<StartupOrderDefinition> startupOrderDefinitions) {
+ public static Set<StartupOrder> convert (List<StartupOrderDefinition> startupOrderDefinitions) {
- List<StartupOrder> startupOrders = new ArrayList<StartupOrder>();
+ Set<StartupOrder> startupOrders = new HashSet<StartupOrder>();
for (StartupOrderDefinition startupOrderDefinition : startupOrderDefinitions) {
StartupOrder startupOrder = new StartupOrder(startupOrderDefinition.getStart(), startupOrderDefinition.getAfter());
startupOrders.add(startupOrder);
http://git-wip-us.apache.org/repos/asf/stratos/blob/cf72ef4c/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/structure/CompositeAppContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/structure/CompositeAppContext.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/structure/CompositeAppContext.java
index 98c3afc..6a589e7 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/structure/CompositeAppContext.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/structure/CompositeAppContext.java
@@ -19,17 +19,17 @@
package org.apache.stratos.manager.composite.application.structure;
-import java.util.List;
+import java.util.Set;
public class CompositeAppContext {
private String appId;
- private List<GroupContext> groupContexts;
+ private Set<GroupContext> groupContexts;
- private List<SubscribableContext> subscribableContexts;
+ private Set<SubscribableContext> subscribableContexts;
- private List<StartupOrder> startupOrder;
+ private Set<StartupOrder> startupOrder;
private String killBehaviour;
@@ -41,27 +41,27 @@ public class CompositeAppContext {
this.appId = appId;
}
- public List<GroupContext> getGroupContexts() {
+ public Set<GroupContext> getGroupContexts() {
return groupContexts;
}
- public void setGroupContexts(List<GroupContext> groupContexts) {
+ public void setGroupContexts(Set<GroupContext> groupContexts) {
this.groupContexts = groupContexts;
}
- public List<SubscribableContext> getSubscribableContexts() {
+ public Set<SubscribableContext> getSubscribableContexts() {
return subscribableContexts;
}
- public void setSubscribableContexts(List<SubscribableContext> subscribableContexts) {
+ public void setSubscribableContexts(Set<SubscribableContext> subscribableContexts) {
this.subscribableContexts = subscribableContexts;
}
- public List<StartupOrder> getStartupOrder() {
+ public Set<StartupOrder> getStartupOrder() {
return startupOrder;
}
- public void setStartupOrder(List<StartupOrder> startupOrder) {
+ public void setStartupOrder(Set<StartupOrder> startupOrder) {
this.startupOrder = startupOrder;
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/cf72ef4c/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/structure/GroupContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/structure/GroupContext.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/structure/GroupContext.java
index 216d89c..e7736ea 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/structure/GroupContext.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/composite/application/structure/GroupContext.java
@@ -20,6 +20,7 @@
package org.apache.stratos.manager.composite.application.structure;
import java.util.List;
+import java.util.Set;
public class GroupContext {
@@ -31,20 +32,20 @@ public class GroupContext {
private String autoscalingPolicy;
- private List<GroupContext> groupContexts;
+ private Set<GroupContext> groupContexts;
- private List<SubscribableContext> subscribableContexts;
+ private Set<SubscribableContext> subscribableContexts;
- private List<StartupOrder> startupOrder;
+ private Set<StartupOrder> startupOrder;
private String killBehaviour;
- public List<StartupOrder> getStartupOrder() {
+ public Set<StartupOrder> getStartupOrder() {
return startupOrder;
}
- public void setStartupOrder(List<StartupOrder> startupOrder) {
+ public void setStartupOrder(Set<StartupOrder> startupOrder) {
this.startupOrder = startupOrder;
}
@@ -88,19 +89,19 @@ public class GroupContext {
this.autoscalingPolicy = autoscalingPolicy;
}
- public List<GroupContext> getGroupContexts() {
+ public Set<GroupContext> getGroupContexts() {
return groupContexts;
}
- public void setGroupContexts(List<GroupContext> groupContexts) {
+ public void setGroupContexts(Set<GroupContext> groupContexts) {
this.groupContexts = groupContexts;
}
- public List<SubscribableContext> getSubscribableContexts() {
+ public Set<SubscribableContext> getSubscribableContexts() {
return subscribableContexts;
}
- public void setSubscribableContexts(List<SubscribableContext> subscribableContexts) {
+ public void setSubscribableContexts(Set<SubscribableContext> subscribableContexts) {
this.subscribableContexts = subscribableContexts;
}
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/cf72ef4c/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/exception/CompositeApplicationException.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/exception/CompositeApplicationException.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/exception/CompositeApplicationException.java
new file mode 100644
index 0000000..ea47536
--- /dev/null
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/exception/CompositeApplicationException.java
@@ -0,0 +1,47 @@
+/*
+ * 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.exception;
+
+public class CompositeApplicationException extends Exception {
+
+ private String message;
+
+ public CompositeApplicationException () {
+ super();
+ }
+
+ public CompositeApplicationException (String message, Throwable cause) {
+ super(message, cause);
+ this.message = message;
+ }
+
+ public CompositeApplicationException (String message) {
+ super(message);
+ this.message = message;
+ }
+
+ public CompositeApplicationException (Throwable cause) {
+ super(cause);
+ }
+
+ public String getMessage() {
+ return message;
+ }
+}
http://git-wip-us.apache.org/repos/asf/stratos/blob/cf72ef4c/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 12c01cf..8e10fda 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
@@ -251,16 +251,21 @@ public class ServiceUtils {
return stratosAdminResponse;
}
*/
- static StratosAdminResponse deployCompositeApplicationDefintion (CompositeAppDefinition compositeAppDefinition)
+ static StratosAdminResponse deployCompositeApplicationDefintion (CompositeAppDefinition compositeAppDefinition, ConfigurationContext ctxt,
+ String userName, String tenantDomain)
throws RestAPIException {
+ int tenantId = ApplicationManagementUtil.getTenantId(ctxt);
+
try {
- compositeApplicationManager.deployCompositeApplication(compositeAppDefinition);
+ compositeApplicationManager.deployCompositeApplication(compositeAppDefinition, tenantId, tenantDomain, userName);
} catch (CompositeApplicationDefinitionException e) {
throw new RestAPIException(e);
} catch (PersistenceManagerException e) {
throw new RestAPIException(e);
+ } catch (CompositeApplicationException e) {
+ throw new RestAPIException(e);
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/cf72ef4c/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 8cdf16b..dc24984 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
@@ -132,7 +132,8 @@ public class StratosAdmin extends AbstractAdmin {
// Grouping
public StratosAdminResponse deployApplicationDefinition(CompositeAppDefinition applicationDefinitionBean)
throws RestAPIException {
- return ServiceUtils.deployCompositeApplicationDefintion(applicationDefinitionBean);
+ return ServiceUtils.deployCompositeApplicationDefintion(applicationDefinitionBean, getConfigContext(),
+ getUsername(), getTenantDomain());
}