You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by sa...@apache.org on 2014/12/12 14:43:02 UTC
[1/2] stratos git commit: Dependent scaling related changes.
Repository: stratos
Updated Branches:
refs/heads/4.1.0-test 23087d1cf -> 1ee248377
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/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 54ade85..9a6a94b 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
@@ -1,4 +1,4 @@
-<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ax27="http://common.stratos.apache.org/xsd" xmlns:ns="http://api.autoscaler.stratos.apache.org" xmlns:ax25="http://deployment.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax26="http://network.partition.deployment.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax23="http://policy.exception.autoscaler.stratos.apache.org/xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ax216="http://application.exception.autoscaler.stratos.apache.org/xsd" xmlns:ax218="http://pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax214="http://autoscale.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:ns1="http://org.apache.axis2/xsd" xmlns:ax221="http://kubernetes.exception.autoscaler.stratos.apache.org/xsd" xmlns:ax223="http://pojo.applications.autoscaler.stratos.apache.org/xsd" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:ax211="http://exception.autoscaler.stratos.apache.org/xsd" xmlns:http="http://sc
hemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://api.autoscaler.stratos.apache.org">
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns="http://api.autoscaler.stratos.apache.org" xmlns:ax27="http://common.stratos.apache.org/xsd" xmlns:ax25="http://deployment.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax26="http://network.partition.deployment.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax23="http://autoscale.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ax216="http://pojo.applications.autoscaler.stratos.apache.org/xsd" xmlns:ax219="http://exception.autoscaler.stratos.apache.org/xsd" xmlns:ax214="http://application.exception.autoscaler.stratos.apache.org/xsd" xmlns:ns1="http://org.apache.axis2/xsd" xmlns:ax222="http://kubernetes.exception.autoscaler.stratos.apache.org/xsd" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:ax224="http://pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax211="http://policy.exception.autoscaler.stratos.apache.org/xsd" xmlns:http="http://sc
hemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://api.autoscaler.stratos.apache.org">
<wsdl:documentation>AutoScalerService</wsdl:documentation>
<wsdl:types>
<xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://autoscale.policy.pojo.autoscaler.stratos.apache.org/xsd">
@@ -9,15 +9,15 @@
<xs:element minOccurs="0" name="id" nillable="true" type="xs:string"></xs:element>
<xs:element minOccurs="0" name="instanceRoundingFactor" type="xs:float"></xs:element>
<xs:element minOccurs="0" name="isPublic" type="xs:boolean"></xs:element>
- <xs:element minOccurs="0" name="loadThresholds" nillable="true" type="ax214:LoadThresholds"></xs:element>
+ <xs:element minOccurs="0" name="loadThresholds" nillable="true" type="ax23:LoadThresholds"></xs:element>
<xs:element minOccurs="0" name="tenantId" type="xs:int"></xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LoadThresholds">
<xs:sequence>
- <xs:element minOccurs="0" name="loadAverage" nillable="true" type="ax214:LoadAverageThresholds"></xs:element>
- <xs:element minOccurs="0" name="memoryConsumption" nillable="true" type="ax214:MemoryConsumptionThresholds"></xs:element>
- <xs:element minOccurs="0" name="requestsInFlight" nillable="true" type="ax214:RequestsInFlightThresholds"></xs:element>
+ <xs:element minOccurs="0" name="loadAverage" nillable="true" type="ax23:LoadAverageThresholds"></xs:element>
+ <xs:element minOccurs="0" name="memoryConsumption" nillable="true" type="ax23:MemoryConsumptionThresholds"></xs:element>
+ <xs:element minOccurs="0" name="requestsInFlight" nillable="true" type="ax23:RequestsInFlightThresholds"></xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LoadAverageThresholds">
@@ -39,13 +39,13 @@
</xs:sequence>
</xs:complexType>
</xs:schema>
- <xs:schema xmlns:ax224="http://common.stratos.apache.org/xsd" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://pojo.applications.autoscaler.stratos.apache.org/xsd">
+ <xs:schema xmlns:ax217="http://common.stratos.apache.org/xsd" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://pojo.applications.autoscaler.stratos.apache.org/xsd">
<xs:import namespace="http://common.stratos.apache.org/xsd"></xs:import>
<xs:complexType name="ApplicationContext">
<xs:sequence>
<xs:element minOccurs="0" name="alias" nillable="true" type="xs:string"></xs:element>
<xs:element minOccurs="0" name="applicationId" nillable="true" type="xs:string"></xs:element>
- <xs:element minOccurs="0" name="components" nillable="true" type="ax223:ComponentContext"></xs:element>
+ <xs:element minOccurs="0" name="components" nillable="true" type="ax216:ComponentContext"></xs:element>
<xs:element minOccurs="0" name="properties" nillable="true" type="ax27:Properties"></xs:element>
<xs:element minOccurs="0" name="teantAdminUsername" nillable="true" type="xs:string"></xs:element>
<xs:element minOccurs="0" name="tenantDomain" nillable="true" type="xs:string"></xs:element>
@@ -54,16 +54,16 @@
</xs:complexType>
<xs:complexType name="ComponentContext">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="cartridgeContexts" nillable="true" type="ax223:CartridgeContext"></xs:element>
- <xs:element minOccurs="0" name="dependencyContext" nillable="true" type="ax223:DependencyContext"></xs:element>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="groupContexts" nillable="true" type="ax223:GroupContext"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="cartridgeContexts" nillable="true" type="ax216:CartridgeContext"></xs:element>
+ <xs:element minOccurs="0" name="dependencyContext" nillable="true" type="ax216:DependencyContext"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="groupContexts" nillable="true" type="ax216:GroupContext"></xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="CartridgeContext">
<xs:sequence>
<xs:element minOccurs="0" name="cartridgeMax" type="xs:int"></xs:element>
<xs:element minOccurs="0" name="cartridgeMin" type="xs:int"></xs:element>
- <xs:element minOccurs="0" name="subscribableInfoContext" nillable="true" type="ax223:SubscribableInfoContext"></xs:element>
+ <xs:element minOccurs="0" name="subscribableInfoContext" nillable="true" type="ax216:SubscribableInfoContext"></xs:element>
<xs:element minOccurs="0" name="type" nillable="true" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
@@ -91,8 +91,8 @@
<xs:complexType name="GroupContext">
<xs:sequence>
<xs:element minOccurs="0" name="alias" nillable="true" type="xs:string"></xs:element>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="cartridgeContexts" nillable="true" type="ax223:CartridgeContext"></xs:element>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="groupContexts" nillable="true" type="ax223:GroupContext"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="cartridgeContexts" nillable="true" type="ax216:CartridgeContext"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="groupContexts" nillable="true" type="ax216:GroupContext"></xs:element>
<xs:element minOccurs="0" name="groupMaxInstances" type="xs:int"></xs:element>
<xs:element minOccurs="0" name="groupMinInstances" type="xs:int"></xs:element>
<xs:element minOccurs="0" name="groupScalingEnabled" type="xs:boolean"></xs:element>
@@ -104,15 +104,15 @@
<xs:complexType name="ServiceGroup">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="cartridges" nillable="true" type="xs:string"></xs:element>
- <xs:element minOccurs="0" name="dependencies" nillable="true" type="ax218:Dependencies"></xs:element>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="groups" nillable="true" type="ax218:ServiceGroup"></xs:element>
+ <xs:element minOccurs="0" name="dependencies" nillable="true" type="ax224:Dependencies"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="groups" nillable="true" type="ax224:ServiceGroup"></xs:element>
<xs:element minOccurs="0" name="groupscalingEnabled" type="xs:boolean"></xs:element>
<xs:element minOccurs="0" name="name" nillable="true" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Dependencies">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="scalingOrders" nillable="true" type="xs:string"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="scalingDependants" nillable="true" type="xs:string"></xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="startupOrders" nillable="true" type="xs:string"></xs:element>
<xs:element minOccurs="0" name="terminationBehaviour" nillable="true" type="xs:string"></xs:element>
</xs:sequence>
@@ -201,78 +201,73 @@
</xs:sequence>
</xs:complexType>
</xs:schema>
- <xs:schema xmlns:ax215="http://autoscale.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax220="http://network.partition.deployment.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax212="http://exception.autoscaler.stratos.apache.org/xsd" xmlns:ax213="http://common.stratos.apache.org/xsd" xmlns:ax222="http://kubernetes.exception.autoscaler.stratos.apache.org/xsd" xmlns:ax210="http://deployment.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax225="http://pojo.applications.autoscaler.stratos.apache.org/xsd" xmlns:ax24="http://policy.exception.autoscaler.stratos.apache.org/xsd" xmlns:ax217="http://application.exception.autoscaler.stratos.apache.org/xsd" xmlns:ax219="http://pojo.autoscaler.stratos.apache.org/xsd" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://api.autoscaler.stratos.apache.org">
- <xs:import namespace="http://policy.exception.autoscaler.stratos.apache.org/xsd"></xs:import>
+ <xs:schema xmlns:ax215="http://application.exception.autoscaler.stratos.apache.org/xsd" xmlns:ax220="http://exception.autoscaler.stratos.apache.org/xsd" xmlns:ax212="http://policy.exception.autoscaler.stratos.apache.org/xsd" xmlns:ax221="http://common.stratos.apache.org/xsd" xmlns:ax213="http://network.partition.deployment.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax210="http://deployment.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax223="http://kubernetes.exception.autoscaler.stratos.apache.org/xsd" xmlns:ax225="http://pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax24="http://autoscale.policy.pojo.autoscaler.stratos.apache.org/xsd" xmlns:ax218="http://pojo.applications.autoscaler.stratos.apache.org/xsd" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://api.autoscaler.stratos.apache.org">
+ <xs:import namespace="http://autoscale.policy.pojo.autoscaler.stratos.apache.org/xsd"></xs:import>
<xs:import namespace="http://deployment.policy.pojo.autoscaler.stratos.apache.org/xsd"></xs:import>
+ <xs:import namespace="http://policy.exception.autoscaler.stratos.apache.org/xsd"></xs:import>
+ <xs:import namespace="http://network.partition.deployment.policy.pojo.autoscaler.stratos.apache.org/xsd"></xs:import>
+ <xs:import namespace="http://application.exception.autoscaler.stratos.apache.org/xsd"></xs:import>
+ <xs:import namespace="http://pojo.applications.autoscaler.stratos.apache.org/xsd"></xs:import>
<xs:import namespace="http://exception.autoscaler.stratos.apache.org/xsd"></xs:import>
<xs:import namespace="http://common.stratos.apache.org/xsd"></xs:import>
- <xs:import namespace="http://autoscale.policy.pojo.autoscaler.stratos.apache.org/xsd"></xs:import>
- <xs:import namespace="http://application.exception.autoscaler.stratos.apache.org/xsd"></xs:import>
- <xs:import namespace="http://pojo.autoscaler.stratos.apache.org/xsd"></xs:import>
- <xs:import namespace="http://network.partition.deployment.policy.pojo.autoscaler.stratos.apache.org/xsd"></xs:import>
<xs:import namespace="http://kubernetes.exception.autoscaler.stratos.apache.org/xsd"></xs:import>
- <xs:import namespace="http://pojo.applications.autoscaler.stratos.apache.org/xsd"></xs:import>
- <xs:element name="AutoScalerServiceInvalidPolicyException">
+ <xs:import namespace="http://pojo.autoscaler.stratos.apache.org/xsd"></xs:import>
+ <xs:element name="getAllAutoScalingPolicy">
<xs:complexType>
- <xs:sequence>
- <xs:element minOccurs="0" name="InvalidPolicyException" nillable="true" type="ax23:InvalidPolicyException"></xs:element>
- </xs:sequence>
+ <xs:sequence></xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="updateDeploymentPolicy">
+ <xs:element name="getAllAutoScalingPolicyResponse">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="deploymentPolicy" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax23:AutoscalePolicy"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="updateDeploymentPolicyResponse">
+ <xs:element name="getAllDeploymentPolicies">
<xs:complexType>
- <xs:sequence>
- <xs:element minOccurs="0" name="return" type="xs:boolean"></xs:element>
- </xs:sequence>
+ <xs:sequence></xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="AutoScalerServiceInvalidArgumentException">
+ <xs:element name="getAllDeploymentPoliciesResponse">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="InvalidArgumentException" nillable="true" type="ax212:InvalidArgumentException"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="updateClusterMonitor">
+ <xs:element name="getValidDeploymentPoliciesforCartridge">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="clusterId" nillable="true" type="xs:string"></xs:element>
- <xs:element minOccurs="0" name="properties" nillable="true" type="ax27:Properties"></xs:element>
+ <xs:element minOccurs="0" name="cartridgeType" nillable="true" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="updateAutoScalingPolicy">
+ <xs:element name="getValidDeploymentPoliciesforCartridgeResponse">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="autoscalePolicy" nillable="true" type="ax214:AutoscalePolicy"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="updateAutoScalingPolicyResponse">
+ <xs:element name="AutoScalerServiceInvalidPolicyException">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="return" type="xs:boolean"></xs:element>
+ <xs:element minOccurs="0" name="InvalidPolicyException" nillable="true" type="ax212:InvalidPolicyException"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="AutoScalerServiceAutoScalerException">
+ <xs:element name="addDeploymentPolicy">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="AutoScalerException" nillable="true" type="ax212:AutoScalerException"></xs:element>
+ <xs:element minOccurs="0" name="deploymentPolicy" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="undeployServiceGroup">
+ <xs:element name="addDeploymentPolicyResponse">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="name" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
@@ -290,217 +285,222 @@
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="AutoScalerServiceApplicationDefinitionException">
+ <xs:element name="updateDeploymentPolicy">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="ApplicationDefinitionException" nillable="true" type="ax217:ApplicationDefinitionException"></xs:element>
+ <xs:element minOccurs="0" name="deploymentPolicy" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="unDeployApplicationDefinition">
+ <xs:element name="updateDeploymentPolicyResponse">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="applicationId" nillable="true" type="xs:string"></xs:element>
- <xs:element minOccurs="0" name="tenantId" type="xs:int"></xs:element>
- <xs:element minOccurs="0" name="tenantDomain" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="return" type="xs:boolean"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="serviceGroupExist">
+ <xs:element name="addAutoScalingPolicy">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="serviceName" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="autoscalePolicy" nillable="true" type="ax23:AutoscalePolicy"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="serviceGroupExistResponse">
+ <xs:element name="addAutoScalingPolicyResponse">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="return" type="xs:boolean"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getValidDeploymentPoliciesforCartridge">
+ <xs:element name="updateAutoScalingPolicy">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="cartridgeType" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="autoscalePolicy" nillable="true" type="ax23:AutoscalePolicy"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getValidDeploymentPoliciesforCartridgeResponse">
+ <xs:element name="updateAutoScalingPolicyResponse">
<xs:complexType>
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
+ <xs:element minOccurs="0" name="return" type="xs:boolean"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getServiceGroups">
+ <xs:element name="getNetworkPartitions">
<xs:complexType>
- <xs:sequence></xs:sequence>
+ <xs:sequence>
+ <xs:element minOccurs="0" name="deploymentPolicyId" nillable="true" type="xs:string"></xs:element>
+ </xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getServiceGroupsResponse">
+ <xs:element name="getNetworkPartitionsResponse">
<xs:complexType>
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax219:ServiceGroup"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax26:ApplicationLevelNetworkPartition"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getServiceGroup">
+ <xs:element name="AutoScalerServiceApplicationDefinitionException">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="name" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="ApplicationDefinitionException" nillable="true" type="ax214:ApplicationDefinitionException"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getServiceGroupResponse">
+ <xs:element name="deployApplicationDefinition">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="return" nillable="true" type="ax219:ServiceGroup"></xs:element>
+ <xs:element minOccurs="0" name="applicationContext" nillable="true" type="ax216:ApplicationContext"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getPartitionsOfGroup">
+ <xs:element name="unDeployApplicationDefinition">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="deploymentPolicyId" nillable="true" type="xs:string"></xs:element>
- <xs:element minOccurs="0" name="groupId" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="applicationId" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="tenantId" type="xs:int"></xs:element>
+ <xs:element minOccurs="0" name="tenantDomain" nillable="true" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getPartitionsOfGroupResponse">
+ <xs:element name="AutoScalerServiceInvalidArgumentException">
<xs:complexType>
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax26:Partition"></xs:element>
+ <xs:element minOccurs="0" name="InvalidArgumentException" nillable="true" type="ax219:InvalidArgumentException"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getNetworkPartitions">
+ <xs:element name="updateClusterMonitor">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="deploymentPolicyId" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="clusterId" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="properties" nillable="true" type="ax27:Properties"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getNetworkPartitionsResponse">
+ <xs:element name="AutoScalerServiceInvalidServiceGroupException">
<xs:complexType>
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax26:ApplicationLevelNetworkPartition"></xs:element>
+ <xs:element minOccurs="0" name="InvalidServiceGroupException" nillable="true" type="ax222:InvalidServiceGroupException"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getDeploymentPolicy">
+ <xs:element name="deployServiceGroup">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="deploymentPolicyId" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="servicegroup" nillable="true" type="ax224:ServiceGroup"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getDeploymentPolicyResponse">
+ <xs:element name="serviceGroupExist">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="return" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
+ <xs:element minOccurs="0" name="serviceName" nillable="true" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getAutoscalingPolicy">
+ <xs:element name="serviceGroupExistResponse">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="autoscalingPolicyId" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="return" type="xs:boolean"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getAutoscalingPolicyResponse">
+ <xs:element name="AutoScalerServiceAutoScalerException">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="return" nillable="true" type="ax214:AutoscalePolicy"></xs:element>
+ <xs:element minOccurs="0" name="AutoScalerException" nillable="true" type="ax219:AutoScalerException"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getAllDeploymentPolicies">
+ <xs:element name="undeployServiceGroup">
<xs:complexType>
- <xs:sequence></xs:sequence>
+ <xs:sequence>
+ <xs:element minOccurs="0" name="name" nillable="true" type="xs:string"></xs:element>
+ </xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getAllDeploymentPoliciesResponse">
+ <xs:element name="deployDeploymentPolicy">
<xs:complexType>
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
+ <xs:element minOccurs="0" name="policy" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getAllAutoScalingPolicy">
+ <xs:element name="deployDeploymentPolicyResponse">
<xs:complexType>
- <xs:sequence></xs:sequence>
+ <xs:sequence>
+ <xs:element minOccurs="0" name="return" type="xs:boolean"></xs:element>
+ </xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="getAllAutoScalingPolicyResponse">
+ <xs:element name="getAutoscalingPolicy">
<xs:complexType>
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax214:AutoscalePolicy"></xs:element>
+ <xs:element minOccurs="0" name="autoscalingPolicyId" nillable="true" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="AutoScalerServiceInvalidServiceGroupException">
+ <xs:element name="getAutoscalingPolicyResponse">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="InvalidServiceGroupException" nillable="true" type="ax221:InvalidServiceGroupException"></xs:element>
+ <xs:element minOccurs="0" name="return" nillable="true" type="ax23:AutoscalePolicy"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="deployServiceGroup">
+ <xs:element name="getPartitionsOfGroup">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="servicegroup" nillable="true" type="ax219:ServiceGroup"></xs:element>
+ <xs:element minOccurs="0" name="deploymentPolicyId" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="groupId" nillable="true" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="deployDeploymentPolicy">
+ <xs:element name="getPartitionsOfGroupResponse">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="policy" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax26:Partition"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="deployDeploymentPolicyResponse">
+ <xs:element name="getServiceGroups">
<xs:complexType>
- <xs:sequence>
- <xs:element minOccurs="0" name="return" type="xs:boolean"></xs:element>
- </xs:sequence>
+ <xs:sequence></xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="deployApplicationDefinition">
+ <xs:element name="getServiceGroupsResponse">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="applicationContext" nillable="true" type="ax223:ApplicationContext"></xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="ax224:ServiceGroup"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="addDeploymentPolicy">
+ <xs:element name="getServiceGroup">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="deploymentPolicy" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
+ <xs:element minOccurs="0" name="name" nillable="true" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="addDeploymentPolicyResponse">
+ <xs:element name="getServiceGroupResponse">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"></xs:element>
+ <xs:element minOccurs="0" name="return" nillable="true" type="ax224:ServiceGroup"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="addAutoScalingPolicy">
+ <xs:element name="getDeploymentPolicy">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="autoscalePolicy" nillable="true" type="ax214:AutoscalePolicy"></xs:element>
+ <xs:element minOccurs="0" name="deploymentPolicyId" nillable="true" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="addAutoScalingPolicyResponse">
+ <xs:element name="getDeploymentPolicyResponse">
<xs:complexType>
<xs:sequence>
- <xs:element minOccurs="0" name="return" type="xs:boolean"></xs:element>
+ <xs:element minOccurs="0" name="return" nillable="true" type="ax25:DeploymentPolicy"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
@@ -842,8 +842,8 @@
<soap:fault use="literal" name="AutoScalerServiceAutoScalerException"></soap:fault>
</wsdl:fault>
</wsdl:operation>
- <wsdl:operation name="getAllAutoScalingPolicy">
- <soap:operation soapAction="urn:getAllAutoScalingPolicy" style="document"></soap:operation>
+ <wsdl:operation name="getPartitionsOfGroup">
+ <soap:operation soapAction="urn:getPartitionsOfGroup" style="document"></soap:operation>
<wsdl:input>
<soap:body use="literal"></soap:body>
</wsdl:input>
@@ -851,8 +851,8 @@
<soap:body use="literal"></soap:body>
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getPartitionsOfGroup">
- <soap:operation soapAction="urn:getPartitionsOfGroup" style="document"></soap:operation>
+ <wsdl:operation name="getAllAutoScalingPolicy">
+ <soap:operation soapAction="urn:getAllAutoScalingPolicy" style="document"></soap:operation>
<wsdl:input>
<soap:body use="literal"></soap:body>
</wsdl:input>
@@ -944,15 +944,6 @@
<soap:body use="literal"></soap:body>
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="addKubernetesHost">
- <soap:operation soapAction="urn:addKubernetesHost" style="document"></soap:operation>
- <wsdl:input>
- <soap:body use="literal"></soap:body>
- </wsdl:input>
- <wsdl:output>
- <soap:body use="literal"></soap:body>
- </wsdl:output>
- </wsdl:operation>
<wsdl:operation name="undeployServiceGroup">
<soap:operation soapAction="urn:undeployServiceGroup" style="document"></soap:operation>
<wsdl:input>
@@ -962,6 +953,15 @@
<soap:fault use="literal" name="AutoScalerServiceAutoScalerException"></soap:fault>
</wsdl:fault>
</wsdl:operation>
+ <wsdl:operation name="addKubernetesHost">
+ <soap:operation soapAction="urn:addKubernetesHost" style="document"></soap:operation>
+ <wsdl:input>
+ <soap:body use="literal"></soap:body>
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal"></soap:body>
+ </wsdl:output>
+ </wsdl:operation>
<wsdl:operation name="getAllAvailablePartitions">
<soap:operation soapAction="urn:getAllAvailablePartitions" style="document"></soap:operation>
<wsdl:input>
@@ -989,26 +989,26 @@
<soap:body use="literal"></soap:body>
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="updateAutoScalingPolicy">
- <soap:operation soapAction="urn:updateAutoScalingPolicy" style="document"></soap:operation>
+ <wsdl:operation name="deployDeploymentPolicy">
+ <soap:operation soapAction="urn:deployDeploymentPolicy" style="document"></soap:operation>
<wsdl:input>
<soap:body use="literal"></soap:body>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"></soap:body>
</wsdl:output>
- <wsdl:fault name="AutoScalerServiceInvalidPolicyException">
- <soap:fault use="literal" name="AutoScalerServiceInvalidPolicyException"></soap:fault>
- </wsdl:fault>
</wsdl:operation>
- <wsdl:operation name="deployDeploymentPolicy">
- <soap:operation soapAction="urn:deployDeploymentPolicy" style="document"></soap:operation>
+ <wsdl:operation name="updateAutoScalingPolicy">
+ <soap:operation soapAction="urn:updateAutoScalingPolicy" style="document"></soap:operation>
<wsdl:input>
<soap:body use="literal"></soap:body>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"></soap:body>
</wsdl:output>
+ <wsdl:fault name="AutoScalerServiceInvalidPolicyException">
+ <soap:fault use="literal" name="AutoScalerServiceInvalidPolicyException"></soap:fault>
+ </wsdl:fault>
</wsdl:operation>
<wsdl:operation name="removeKubernetesHost">
<soap:operation soapAction="urn:removeKubernetesHost" style="document"></soap:operation>
@@ -1148,8 +1148,8 @@
<soap12:fault use="literal" name="AutoScalerServiceAutoScalerException"></soap12:fault>
</wsdl:fault>
</wsdl:operation>
- <wsdl:operation name="getAllAutoScalingPolicy">
- <soap12:operation soapAction="urn:getAllAutoScalingPolicy" style="document"></soap12:operation>
+ <wsdl:operation name="getPartitionsOfGroup">
+ <soap12:operation soapAction="urn:getPartitionsOfGroup" style="document"></soap12:operation>
<wsdl:input>
<soap12:body use="literal"></soap12:body>
</wsdl:input>
@@ -1157,8 +1157,8 @@
<soap12:body use="literal"></soap12:body>
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getPartitionsOfGroup">
- <soap12:operation soapAction="urn:getPartitionsOfGroup" style="document"></soap12:operation>
+ <wsdl:operation name="getAllAutoScalingPolicy">
+ <soap12:operation soapAction="urn:getAllAutoScalingPolicy" style="document"></soap12:operation>
<wsdl:input>
<soap12:body use="literal"></soap12:body>
</wsdl:input>
@@ -1250,15 +1250,6 @@
<soap12:body use="literal"></soap12:body>
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="addKubernetesHost">
- <soap12:operation soapAction="urn:addKubernetesHost" style="document"></soap12:operation>
- <wsdl:input>
- <soap12:body use="literal"></soap12:body>
- </wsdl:input>
- <wsdl:output>
- <soap12:body use="literal"></soap12:body>
- </wsdl:output>
- </wsdl:operation>
<wsdl:operation name="undeployServiceGroup">
<soap12:operation soapAction="urn:undeployServiceGroup" style="document"></soap12:operation>
<wsdl:input>
@@ -1268,6 +1259,15 @@
<soap12:fault use="literal" name="AutoScalerServiceAutoScalerException"></soap12:fault>
</wsdl:fault>
</wsdl:operation>
+ <wsdl:operation name="addKubernetesHost">
+ <soap12:operation soapAction="urn:addKubernetesHost" style="document"></soap12:operation>
+ <wsdl:input>
+ <soap12:body use="literal"></soap12:body>
+ </wsdl:input>
+ <wsdl:output>
+ <soap12:body use="literal"></soap12:body>
+ </wsdl:output>
+ </wsdl:operation>
<wsdl:operation name="getAllAvailablePartitions">
<soap12:operation soapAction="urn:getAllAvailablePartitions" style="document"></soap12:operation>
<wsdl:input>
@@ -1295,26 +1295,26 @@
<soap12:body use="literal"></soap12:body>
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="updateAutoScalingPolicy">
- <soap12:operation soapAction="urn:updateAutoScalingPolicy" style="document"></soap12:operation>
+ <wsdl:operation name="deployDeploymentPolicy">
+ <soap12:operation soapAction="urn:deployDeploymentPolicy" style="document"></soap12:operation>
<wsdl:input>
<soap12:body use="literal"></soap12:body>
</wsdl:input>
<wsdl:output>
<soap12:body use="literal"></soap12:body>
</wsdl:output>
- <wsdl:fault name="AutoScalerServiceInvalidPolicyException">
- <soap12:fault use="literal" name="AutoScalerServiceInvalidPolicyException"></soap12:fault>
- </wsdl:fault>
</wsdl:operation>
- <wsdl:operation name="deployDeploymentPolicy">
- <soap12:operation soapAction="urn:deployDeploymentPolicy" style="document"></soap12:operation>
+ <wsdl:operation name="updateAutoScalingPolicy">
+ <soap12:operation soapAction="urn:updateAutoScalingPolicy" style="document"></soap12:operation>
<wsdl:input>
<soap12:body use="literal"></soap12:body>
</wsdl:input>
<wsdl:output>
<soap12:body use="literal"></soap12:body>
</wsdl:output>
+ <wsdl:fault name="AutoScalerServiceInvalidPolicyException">
+ <soap12:fault use="literal" name="AutoScalerServiceInvalidPolicyException"></soap12:fault>
+ </wsdl:fault>
</wsdl:operation>
<wsdl:operation name="removeKubernetesHost">
<soap12:operation soapAction="urn:removeKubernetesHost" style="document"></soap12:operation>
@@ -1451,8 +1451,8 @@
<mime:content type="text/xml" part="parameters"></mime:content>
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getAllAutoScalingPolicy">
- <http:operation location="getAllAutoScalingPolicy"></http:operation>
+ <wsdl:operation name="getPartitionsOfGroup">
+ <http:operation location="getPartitionsOfGroup"></http:operation>
<wsdl:input>
<mime:content type="text/xml" part="parameters"></mime:content>
</wsdl:input>
@@ -1460,8 +1460,8 @@
<mime:content type="text/xml" part="parameters"></mime:content>
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getPartitionsOfGroup">
- <http:operation location="getPartitionsOfGroup"></http:operation>
+ <wsdl:operation name="getAllAutoScalingPolicy">
+ <http:operation location="getAllAutoScalingPolicy"></http:operation>
<wsdl:input>
<mime:content type="text/xml" part="parameters"></mime:content>
</wsdl:input>
@@ -1547,6 +1547,12 @@
<mime:content type="text/xml" part="parameters"></mime:content>
</wsdl:output>
</wsdl:operation>
+ <wsdl:operation name="undeployServiceGroup">
+ <http:operation location="undeployServiceGroup"></http:operation>
+ <wsdl:input>
+ <mime:content type="text/xml" part="parameters"></mime:content>
+ </wsdl:input>
+ </wsdl:operation>
<wsdl:operation name="addKubernetesHost">
<http:operation location="addKubernetesHost"></http:operation>
<wsdl:input>
@@ -1556,12 +1562,6 @@
<mime:content type="text/xml" part="parameters"></mime:content>
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="undeployServiceGroup">
- <http:operation location="undeployServiceGroup"></http:operation>
- <wsdl:input>
- <mime:content type="text/xml" part="parameters"></mime:content>
- </wsdl:input>
- </wsdl:operation>
<wsdl:operation name="getAllAvailablePartitions">
<http:operation location="getAllAvailablePartitions"></http:operation>
<wsdl:input>
@@ -1586,8 +1586,8 @@
<mime:content type="text/xml" part="parameters"></mime:content>
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="updateAutoScalingPolicy">
- <http:operation location="updateAutoScalingPolicy"></http:operation>
+ <wsdl:operation name="deployDeploymentPolicy">
+ <http:operation location="deployDeploymentPolicy"></http:operation>
<wsdl:input>
<mime:content type="text/xml" part="parameters"></mime:content>
</wsdl:input>
@@ -1595,8 +1595,8 @@
<mime:content type="text/xml" part="parameters"></mime:content>
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="deployDeploymentPolicy">
- <http:operation location="deployDeploymentPolicy"></http:operation>
+ <wsdl:operation name="updateAutoScalingPolicy">
+ <http:operation location="updateAutoScalingPolicy"></http:operation>
<wsdl:input>
<mime:content type="text/xml" part="parameters"></mime:content>
</wsdl:input>
@@ -1700,22 +1700,22 @@
</wsdl:binding>
<wsdl:service name="AutoScalerService">
<wsdl:port name="AutoScalerServiceHttpSoap11Endpoint" binding="ns:AutoScalerServiceSoap11Binding">
- <soap:address location="http://10.100.1.142:9763/services/AutoScalerService.AutoScalerServiceHttpSoap11Endpoint/"></soap:address>
+ <soap:address location="http://172.17.42.1:9763/services/AutoScalerService.AutoScalerServiceHttpSoap11Endpoint/"></soap:address>
</wsdl:port>
<wsdl:port name="AutoScalerServiceHttpsSoap11Endpoint" binding="ns:AutoScalerServiceSoap11Binding">
- <soap:address location="https://10.100.1.142:9443/services/AutoScalerService.AutoScalerServiceHttpsSoap11Endpoint/"></soap:address>
+ <soap:address location="https://172.17.42.1:9443/services/AutoScalerService.AutoScalerServiceHttpsSoap11Endpoint/"></soap:address>
</wsdl:port>
<wsdl:port name="AutoScalerServiceHttpsSoap12Endpoint" binding="ns:AutoScalerServiceSoap12Binding">
- <soap12:address location="https://10.100.1.142:9443/services/AutoScalerService.AutoScalerServiceHttpsSoap12Endpoint/"></soap12:address>
+ <soap12:address location="https://172.17.42.1:9443/services/AutoScalerService.AutoScalerServiceHttpsSoap12Endpoint/"></soap12:address>
</wsdl:port>
<wsdl:port name="AutoScalerServiceHttpSoap12Endpoint" binding="ns:AutoScalerServiceSoap12Binding">
- <soap12:address location="http://10.100.1.142:9763/services/AutoScalerService.AutoScalerServiceHttpSoap12Endpoint/"></soap12:address>
+ <soap12:address location="http://172.17.42.1:9763/services/AutoScalerService.AutoScalerServiceHttpSoap12Endpoint/"></soap12:address>
</wsdl:port>
<wsdl:port name="AutoScalerServiceHttpEndpoint" binding="ns:AutoScalerServiceHttpBinding">
- <http:address location="http://10.100.1.142:9763/services/AutoScalerService.AutoScalerServiceHttpEndpoint/"></http:address>
+ <http:address location="http://172.17.42.1:9763/services/AutoScalerService.AutoScalerServiceHttpEndpoint/"></http:address>
</wsdl:port>
<wsdl:port name="AutoScalerServiceHttpsEndpoint" binding="ns:AutoScalerServiceHttpBinding">
- <http:address location="https://10.100.1.142:9443/services/AutoScalerService.AutoScalerServiceHttpsEndpoint/"></http:address>
+ <http:address location="https://172.17.42.1:9443/services/AutoScalerService.AutoScalerServiceHttpsEndpoint/"></http:address>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
\ No newline at end of file
[2/2] stratos git commit: Dependent scaling related changes.
Posted by sa...@apache.org.
Dependent scaling related changes.
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/1ee24837
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/1ee24837
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/1ee24837
Branch: refs/heads/4.1.0-test
Commit: 1ee24837736a28465beda7a44b884aab309d8904
Parents: 23087d1
Author: sajhak <sa...@gmail.com>
Authored: Fri Dec 12 19:08:25 2014 +0530
Committer: sajhak <sa...@gmail.com>
Committed: Fri Dec 12 19:12:04 2014 +0530
----------------------------------------------------------------------
.../autoscaler/api/AutoScalerServiceImpl.java | 10 +-
.../dependency/DependencyBuilder.java | 96 ++----
.../parser/DefaultApplicationParser.java | 1 +
.../context/cluster/ClusterInstanceContext.java | 13 +-
.../context/cluster/VMClusterContext.java | 35 +-
.../AutoscalerTopologyEventReceiver.java | 4 +-
.../autoscaler/monitor/MonitorFactory.java | 7 +-
.../monitor/cluster/VMClusterMonitor.java | 2 +-
.../monitor/component/GroupMonitor.java | 30 +-
.../component/ParentComponentMonitor.java | 9 +-
.../stratos/autoscaler/pojo/Dependencies.java | 15 +-
.../autoscaler/rule/RuleTasksDelegator.java | 3 +
.../definitions/DependencyDefinitions.java | 15 +-
.../deployer/DefaultServiceGroupDeployer.java | 12 +-
.../domain/applications/DependencyOrder.java | 16 +-
.../src/main/conf/drools/scaling.drl | 9 +-
.../src/main/resources/AutoScalerService.wsdl | 344 +++++++++----------
17 files changed, 308 insertions(+), 313 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/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 41d027f..66f6be8 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
@@ -341,15 +341,15 @@ public class AutoScalerServiceImpl implements AutoScalerServiceInterface {
log.debug("StartupOrder: is null");
}
}
- String[] scalingOrders = dependencies.getScalingOrders();
+ String[] scalingDependents = dependencies.getScalingDependants();
if (log.isDebugEnabled()) {
- log.debug("ScalingOrders " + scalingOrders);
+ log.debug("ScalingDependent " + scalingDependents);
- if (scalingOrders != null) {
- log.debug("ScalingOrder:size " + scalingOrders.length);
+ if (scalingDependents != null) {
+ log.debug("ScalingDependents:size " + scalingDependents.length);
} else {
- log.debug("ScalingOrder: is null");
+ log.debug("ScalingDependent: is null");
}
}
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyBuilder.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyBuilder.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyBuilder.java
index 7c9f792..745aaa5 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyBuilder.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyBuilder.java
@@ -27,6 +27,7 @@ import org.apache.stratos.autoscaler.exception.application.DependencyBuilderExce
import org.apache.stratos.messaging.domain.applications.*;
import java.util.Collection;
+import java.util.HashSet;
import java.util.Set;
/**
@@ -131,69 +132,7 @@ public class DependencyBuilder {
}
}
- //Parsing the scaling order
- Set<ScalingDependentList> scalingDependentLists = dependencyOrder.getScalingDependentLists();
-
- if (scalingDependentLists != null) {
- for (ScalingDependentList scalingDependentList : scalingDependentLists) {
- foundContext = null;
- parentContext = null;
-
-
- for (String scalingOrderComponent : scalingDependentList.getScalingDependentListComponents()) {
-
-
- if (scalingOrderComponent != null){
- String applicationContextId = null;
- if (scalingOrderComponent.startsWith(Constants.GROUP + ".")) {
- //getting the group alias
- applicationContextId = getGroupFromStartupOrder(scalingOrderComponent);
-
- } else if (scalingOrderComponent.startsWith(Constants.CARTRIDGE + ".")) {
- //getting the cluster alias
- applicationContextId = getClusterFromStartupOrder(scalingOrderComponent);
-
- } else {
- log.warn("[Scaling Order]: " + scalingOrderComponent + " contains unknown reference");
- }
-
- if(applicationContextId != null) {
- ApplicationChildContext applicationContext
- = dependencyTree.findApplicationContextWithIdInPrimaryTree(applicationContextId);
-
- ApplicationChildContext existingApplicationContext =
- dependencyTree.findApplicationContextWithIdInScalingDependencyTree(applicationContextId);
- if (existingApplicationContext == null) {
-
- if (parentContext != null) {
-
- parentContext.setGroupScalingEnabled(true);
- //appending the scaling order to already added parent group/cluster
- parentContext.addApplicationContext(applicationContext);
- parentContext = applicationContext;
- if (log.isDebugEnabled()) {
- log.debug("Found an existing [dependency] " + parentContext.getId() +
- " and adding the [dependency] " + applicationContextId + " as the child");
- }
- } else {
- //adding list of scaling order to the dependency tree
- dependencyTree.addScalingApplicationContext(applicationContext);
- parentContext = applicationContext;
- }
- } else {
- String msg = "Scaling order is not consistent. It contains the group/cluster " +
- "which has been already used in another scaling order";
- throw new DependencyBuilderException(msg);
-
- }
- }
- }
- }
-
-
- }
- }
-
+
}
//adding the rest of the children who are independent to the top level
@@ -216,6 +155,36 @@ public class DependencyBuilder {
}
return dependencyTree;
}
+
+ /**
+ *
+ * Utility method to build scaling dependencies
+ *
+ */
+ public Set<String> buildScalingDependencies(ParentComponent component) {
+ log.info(" ******* in build scaling dependencies ************ "); // TODO - remove
+ Set<String> scalingDependencies = new HashSet<String>();
+ if(component.getDependencyOrder() != null && component.getDependencyOrder().getScalingDependents() != null) {
+ log.info(" ******* in build scaling dependencies 22 ************ "); // TODO - remove
+ for (String string : component.getDependencyOrder().getScalingDependents()) {
+
+ log.info(" ******* in build scaling dependencies 33 ************ "); // TODO - remove
+ if (string.startsWith(Constants.GROUP + ".")) {
+ //getting the group alias
+ scalingDependencies.add(getGroupFromStartupOrder(string));
+ } else if (string.startsWith(Constants.CARTRIDGE + ".")) {
+ //getting the cluster alias
+ String id = getClusterFromStartupOrder(string);
+ //getting the cluster-id from cluster alias
+ ClusterDataHolder clusterDataHolder = (ClusterDataHolder) component.getClusterDataMap().get(id);
+ scalingDependencies.add(clusterDataHolder.getClusterId());
+ } else {
+ log.warn("[Scaling Dependency]: " + string + " contains unknown reference");
+ }
+ }
+ }
+ return scalingDependencies;
+ }
/**
* Utility method to get the group alias from the startup order Eg: group.mygroup
@@ -238,4 +207,5 @@ public class DependencyBuilder {
}
+
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/parser/DefaultApplicationParser.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/parser/DefaultApplicationParser.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/parser/DefaultApplicationParser.java
index eaaf19e..364274c 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/parser/DefaultApplicationParser.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/parser/DefaultApplicationParser.java
@@ -453,6 +453,7 @@ public class DefaultApplicationParser implements ApplicationParser {
dependencyOrder.setStartupOrders(ParserUtils.convert(startupOrders, groupCtxt));
}
dependencyOrder.setTerminationBehaviour(getKillbehaviour(groupCtxt.getName(),serviceGroup));
+ //dependencyOrder.setScalingDependents(scalingDependents);
group.setDependencyOrder(dependencyOrder);
Map<String, ClusterDataHolder> clusterDataMap;
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterInstanceContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterInstanceContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterInstanceContext.java
index ae63615..884c25e 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterInstanceContext.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterInstanceContext.java
@@ -64,9 +64,12 @@ public class ClusterInstanceContext extends InstanceContext {
private int currentPartitionIndex;
private String networkPartitionId;
+
+ private boolean hasScalingDependants;
public ClusterInstanceContext(String clusterInstanceId, String partitionAlgo,
- int min, int max, String networkPartitionId) {
+ int min, int max, String networkPartitionId,
+ boolean hasScalingDependants) {
super(clusterInstanceId);
this.networkPartitionId = networkPartitionId;
@@ -80,8 +83,7 @@ public class ClusterInstanceContext extends InstanceContext {
memoryConsumption = new MemoryConsumption();
requiredInstanceCountBasedOnStats = minInstanceCount;
requiredInstanceCountBasedOnDependencies = minInstanceCount;
-
-
+ this.hasScalingDependants = hasScalingDependants;
}
public List<ClusterLevelPartitionContext> getPartitionCtxts() {
@@ -459,4 +461,9 @@ public class ClusterInstanceContext extends InstanceContext {
public boolean isAverageRequestServedPerInstanceReset() {
return averageRequestServedPerInstanceReset;
}
+
+ public boolean isHasScalingDependants() {
+ return hasScalingDependants;
+ }
+
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/VMClusterContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/VMClusterContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/VMClusterContext.java
index 0c1931e..fba52ac 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/VMClusterContext.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/VMClusterContext.java
@@ -18,6 +18,9 @@
*/
package org.apache.stratos.autoscaler.context.cluster;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.stratos.autoscaler.applications.ApplicationHolder;
@@ -41,16 +44,14 @@ import org.apache.stratos.messaging.domain.topology.Cluster;
import org.apache.stratos.messaging.domain.topology.Member;
import org.apache.stratos.messaging.domain.topology.MemberStatus;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-
/*
* It holds the runtime data of a VM cluster
*/
public class VMClusterContext extends AbstractClusterContext {
- private static final Log log = LogFactory.getLog(VMClusterContext.class);
+ private static final long serialVersionUID = 17570842529682141L;
+
+ private static final Log log = LogFactory.getLog(VMClusterContext.class);
// Map<NetworkpartitionId, Network Partition Context>
protected Map<String, ClusterLevelNetworkPartitionContext> networkPartitionCtxts;
@@ -120,7 +121,7 @@ public class VMClusterContext extends AbstractClusterContext {
return null;
}
- public void addInstanceContext(String instanceId, Cluster cluster)
+ public void addInstanceContext(String instanceId, Cluster cluster, boolean hasGroupScalingDependent)
throws PolicyValidationException, PartitionValidationException {
ClusterLevelNetworkPartitionContext networkPartitionContext = null;
ClusterInstance clusterInstance = cluster.getInstanceContexts(instanceId);
@@ -147,10 +148,10 @@ public class VMClusterContext extends AbstractClusterContext {
if (clusterInstance.getPartitionId() != null) {
//Need to add partition Context based on the given one from the parent
networkPartitionContext = addPartition(clusterInstance, cluster,
- networkPartitionContext, null);
+ networkPartitionContext, null, hasGroupScalingDependent);
} else {
networkPartitionContext = parseDeploymentPolicy(clusterInstance, cluster,
- policy, networkPartitionContext);
+ policy, networkPartitionContext, hasGroupScalingDependent);
}
if (!networkPartitionCtxts.containsKey(clusterInstance.getNetworkPartitionId())) {
this.networkPartitionCtxts.put(clusterInstance.getNetworkPartitionId(),
@@ -168,7 +169,8 @@ public class VMClusterContext extends AbstractClusterContext {
ClusterInstance clusterInstance,
Cluster cluster,
ChildPolicy childPolicy,
- ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext)
+ ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext,
+ boolean hasGroupScalingDependent)
throws PolicyValidationException, PartitionValidationException {
if (childPolicy == null) {
@@ -197,16 +199,10 @@ public class VMClusterContext extends AbstractClusterContext {
ChildLevelNetworkPartition networkPartition;
networkPartition = childPolicy.
getChildLevelNetworkPartition(clusterInstance.getNetworkPartitionId());
- if (clusterLevelNetworkPartitionContext == null) {
- clusterLevelNetworkPartitionContext = new ClusterLevelNetworkPartitionContext(
- networkPartition.getId(),
- networkPartition.getPartitionAlgo(),
- networkPartition.getMin());
- }
-
+
//Fill cluster instance context with child level partitions
for (ChildLevelPartition childLevelPartition : networkPartition.getChildLevelPartitions()) {
- addPartition(clusterInstance, cluster, clusterLevelNetworkPartitionContext, childLevelPartition);
+ addPartition(clusterInstance, cluster, clusterLevelNetworkPartitionContext, childLevelPartition, hasGroupScalingDependent);
}
return clusterLevelNetworkPartitionContext;
}
@@ -215,7 +211,8 @@ public class VMClusterContext extends AbstractClusterContext {
ClusterInstance clusterInstance,
Cluster cluster,
ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext,
- ChildLevelPartition childLevelPartition)
+ ChildLevelPartition childLevelPartition,
+ boolean hasGroupScalingDependent)
throws PolicyValidationException, PartitionValidationException {
if (clusterLevelNetworkPartitionContext == null) {
String msg =
@@ -256,7 +253,7 @@ public class VMClusterContext extends AbstractClusterContext {
}
clusterInstanceContext = new ClusterInstanceContext(clusterInstance.getInstanceId(),
clusterLevelNetworkPartitionContext.getPartitionAlgorithm(),
- minInstances, maxInstances, nPartitionId);
+ minInstances, maxInstances, nPartitionId, hasGroupScalingDependent);
}
String partitionId;
if (childLevelPartition != null) {
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java
index b1217db..8b41824 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java
@@ -453,7 +453,9 @@ public class AutoscalerTopologyEventReceiver {
clusterMonitor.setClusterContext(clusterContext);
}
- clusterContext.addInstanceContext(instanceId, cluster);
+ log.info(" Cluster monitor has scaling dependents"
+ + " ["+clusterMonitor.hasGroupScalingDependent()+"] "); // TODO -- remove this log..
+ clusterContext.addInstanceContext(instanceId, cluster, clusterMonitor.hasGroupScalingDependent());
if (clusterMonitor.getInstance(instanceId) == null) {
// adding the same instance in topology to monitor as a reference
ClusterInstance clusterInstance1 = cluster.getInstanceContexts(instanceId);
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/MonitorFactory.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/MonitorFactory.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/MonitorFactory.java
index 5ee986b..3f83741 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/MonitorFactory.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/MonitorFactory.java
@@ -125,13 +125,14 @@ public class MonitorFactory {
groupMonitor.setHasStartupDependents(false);
}
}
+
+
if (group.isGroupScalingEnabled()) {
groupMonitor.setGroupScalingEnabled(true);
} else if (parentMonitor instanceof GroupMonitor) {
- if (((GroupMonitor) parentMonitor).isGroupScalingEnabled() ||
- parentMonitor.hasGroupScalingDependent()) {
+ /*if (parentMonitor.hasGroupScalingDependent() || parentMonitor.getList --> not empty) {
groupMonitor.setHasGroupScalingDependent(true);
- }
+ }*/
}
} finally {
ApplicationHolder.releaseReadLock();
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
index 9ebd24f..bd841ba 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
@@ -1148,7 +1148,7 @@ public class VMClusterMonitor extends AbstractClusterMonitor {
}
// create VMClusterContext and then add all the instanceContexts
- clusterContext.addInstanceContext(parentInstanceId, cluster);
+ clusterContext.addInstanceContext(parentInstanceId, cluster, this.hasGroupScalingDependent());
if (this.getInstance(clusterInstance.getInstanceId()) == null) {
this.addInstance(clusterInstance);
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/GroupMonitor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/GroupMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/GroupMonitor.java
index 35cb6c5..0928e93 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/GroupMonitor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/GroupMonitor.java
@@ -52,9 +52,11 @@ import org.apache.stratos.messaging.domain.topology.ClusterStatus;
import org.apache.stratos.messaging.domain.topology.lifecycle.LifeCycleState;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Set;
/**
* This is GroupMonitor to monitor the group which consists of
@@ -263,23 +265,19 @@ public class GroupMonitor extends ParentComponentMonitor implements Runnable {
+ ", [event] " + scalingEvent.getId() + ", [group instance] " + scalingEvent.getInstanceId());
}
- //find the child context of this group, from scaling dependency tree
- GroupChildContext currentChildContextInScalingTree =
- (GroupChildContext) scalingDependencyTree.findApplicationContextWithIdInScalingDependencyTree(id);
-
+ //find the child context of this group,
//Notifying children, if this group has scaling dependencies
- if (currentChildContextInScalingTree.isGroupScalingEnabled()) {
- for (ApplicationChildContext applicationChildContext :
- currentChildContextInScalingTree.getApplicationChildContextList()) {
-
- //Get group monitor so that it can notify it's children
- Monitor monitor = aliasToActiveMonitorsMap.get(applicationChildContext.getId());
-
- if (monitor instanceof GroupMonitor || monitor instanceof ApplicationMonitor) {
-
- monitor.onParentScalingEvent(scalingEvent);
- }
- }
+ if(scalingDependencies != null && !scalingDependencies.isEmpty()) {
+ // has dependencies. Notify children
+ if (aliasToActiveMonitorsMap != null
+ && !aliasToActiveMonitorsMap.values().isEmpty()) {
+ for (String dependent : scalingDependencies) {
+ Monitor monitor = aliasToActiveMonitorsMap.get(dependent);
+ if (monitor instanceof GroupMonitor || monitor instanceof ApplicationMonitor) {
+ monitor.onParentScalingEvent(scalingEvent);
+ }
+ }
+ }
}
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ParentComponentMonitor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ParentComponentMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ParentComponentMonitor.java
index 33bc4cb..3912029 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ParentComponentMonitor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ParentComponentMonitor.java
@@ -44,6 +44,7 @@ import org.apache.stratos.autoscaler.monitor.cluster.VMClusterMonitor;
import org.apache.stratos.autoscaler.util.ServiceReferenceHolder;
import org.apache.stratos.messaging.domain.applications.GroupStatus;
import org.apache.stratos.messaging.domain.applications.ParentComponent;
+import org.apache.stratos.messaging.domain.applications.ScalingDependentList;
import org.apache.stratos.messaging.domain.instance.ClusterInstance;
import org.apache.stratos.messaging.domain.instance.Instance;
import org.apache.stratos.messaging.domain.topology.ClusterStatus;
@@ -65,7 +66,7 @@ public abstract class ParentComponentMonitor extends Monitor {
//The monitors dependency tree with all the start-able/kill-able dependencies
protected DependencyTree startupDependencyTree;
//The monitors dependency tree with all the scaling dependencies
- protected DependencyTree scalingDependencyTree;
+ protected Set<String> scalingDependencies;
//monitors map, key=GroupAlias/clusterId and value=GroupMonitor/AbstractClusterMonitor
protected Map<String, Monitor> aliasToActiveMonitorsMap;
//Pending monitors list
@@ -84,8 +85,7 @@ public abstract class ParentComponentMonitor extends Monitor {
this.id = component.getUniqueIdentifier();
//Building the startup dependencies for this monitor within the immediate children
startupDependencyTree = DependencyBuilder.getInstance().buildDependency(component);
- //Building the scaling dependencies for this monitor within the immediate children
- scalingDependencyTree = DependencyBuilder.getInstance().buildDependency(component);
+ scalingDependencies = DependencyBuilder.getInstance().buildScalingDependencies(component);
}
/**
@@ -706,5 +706,8 @@ private class MonitorAdder implements Runnable {
}
}
+ public Set<String> getScalingDependencies() {
+ return scalingDependencies;
+ }
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/Dependencies.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/Dependencies.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/Dependencies.java
index da63a4d..a9e3548 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/Dependencies.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/Dependencies.java
@@ -26,7 +26,7 @@ public class Dependencies implements Serializable {
private String [] startupOrders;
- private String [] scalingOrders;
+ private String [] scalingDependants;
private String terminationBehaviour;
@@ -46,11 +46,12 @@ public class Dependencies implements Serializable {
this.startupOrders = startupOrders;
}
- public String[] getScalingOrders() {
- return scalingOrders;
- }
+ public String[] getScalingDependants() {
+ return scalingDependants;
+ }
- public void setScalingOrders(String[] scalingOrders) {
- this.scalingOrders = scalingOrders;
- }
+ public void setScalingDependants(String[] scalingDependants) {
+ this.scalingDependants = scalingDependants;
+ }
+
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
index 0e89a80..09dd518 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
@@ -309,6 +309,9 @@ public class RuleTasksDelegator {
public void delegateScalingDependencyNotification(String clusterId, String networkPartitionId, float factor) {
+ if(log.isDebugEnabled()) {
+ log.debug("In Delegate scaling dependent notification..");
+ }
//Notify parent for checking scaling dependencies
AbstractClusterMonitor clusterMonitor = AutoscalerContext.getInstance().getClusterMonitor(clusterId);
if (clusterMonitor instanceof VMClusterMonitor) {
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/definitions/DependencyDefinitions.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/definitions/DependencyDefinitions.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/definitions/DependencyDefinitions.java
index 3b71e8e..d6934a9 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/definitions/DependencyDefinitions.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/definitions/DependencyDefinitions.java
@@ -33,7 +33,7 @@ public class DependencyDefinitions implements Serializable {
private List<String> startupOrders;
- private List<String> scalingOrders;
+ private List<String> scalingDependants;
private String terminationBehaviour;
@@ -53,11 +53,12 @@ public class DependencyDefinitions implements Serializable {
this.startupOrders = startupOrders;
}
- public List<String> getScalingOrders() {
- return scalingOrders;
- }
+ public List<String> getScalingDependants() {
+ return scalingDependants;
+ }
- public void setScalingOrders(List<String> scalingOrders) {
- this.scalingOrders = scalingOrders;
- }
+ public void setScalingDependants(List<String> scalingDependants) {
+ this.scalingDependants = scalingDependants;
+ }
+
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/deployer/DefaultServiceGroupDeployer.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/deployer/DefaultServiceGroupDeployer.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/deployer/DefaultServiceGroupDeployer.java
index 891a85f..d075775 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/deployer/DefaultServiceGroupDeployer.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/deployer/DefaultServiceGroupDeployer.java
@@ -312,6 +312,10 @@ public class DefaultServiceGroupDeployer implements ServiceGroupDeployer {
// validate termination behavior
validateTerminationBehavior(depDefs.getTerminationBehaviour());
deps.setTerminationBehaviour(depDefs.getTerminationBehaviour());
+ if (depDefs.getScalingDependants() != null) {
+ deps.setScalingDependants(depDefs.getScalingDependants()
+ .toArray(new String[depDefs.getScalingDependants().size()]));
+ }
servicegroup.setDependencies(deps);
}
@@ -340,10 +344,10 @@ public class DefaultServiceGroupDeployer implements ServiceGroupDeployer {
depsDef.setStartupOrders(startupOrdersDef);
}
- String [] scalingOrders = deps.getScalingOrders();
- if (scalingOrders != null && scalingOrders[0] != null) {
- List<String> scalingOrdersDef = Arrays.asList(scalingOrders);
- depsDef.setStartupOrders(scalingOrdersDef);
+ String [] scalingDependants = deps.getScalingDependants();
+ if (scalingDependants != null && scalingDependants[0] != null) {
+ List<String> scalingDependenciesDef = Arrays.asList(scalingDependants);
+ depsDef.setScalingDependants(scalingDependenciesDef);
}
depsDef.setTerminationBehaviour(deps.getTerminationBehaviour());
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/applications/DependencyOrder.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/applications/DependencyOrder.java b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/applications/DependencyOrder.java
index 127cd4f..1225fe0 100644
--- a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/applications/DependencyOrder.java
+++ b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/applications/DependencyOrder.java
@@ -28,7 +28,7 @@ public class DependencyOrder implements Serializable {
private Set<StartupOrder> startupOrders;
- private Set<ScalingDependentList> scalingDependentLists;
+ private Set<String> scalingDependents;
private String terminationBehaviour;
@@ -52,11 +52,13 @@ public class DependencyOrder implements Serializable {
this.startupOrders = startupOrders;
}
- public Set<ScalingDependentList> getScalingDependentLists() {
- return scalingDependentLists;
- }
+ public Set<String> getScalingDependents() {
+ return scalingDependents;
+ }
- public void setScalingDependentLists(Set<ScalingDependentList> scalingDependentLists) {
- this.scalingDependentLists = scalingDependentLists;
- }
+ public void setScalingDependents(Set<String> scalingDependents) {
+ this.scalingDependents = scalingDependents;
+ }
+
+
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/1ee24837/products/stratos/modules/distribution/src/main/conf/drools/scaling.drl
----------------------------------------------------------------------
diff --git a/products/stratos/modules/distribution/src/main/conf/drools/scaling.drl b/products/stratos/modules/distribution/src/main/conf/drools/scaling.drl
index 0b70dfd..346dd00 100644
--- a/products/stratos/modules/distribution/src/main/conf/drools/scaling.drl
+++ b/products/stratos/modules/distribution/src/main/conf/drools/scaling.drl
@@ -129,7 +129,7 @@ dialect "mvel"
// delegator.delegateScalingDependencyNotification(clusterId, clusterInstanceContext.getId(), factor);
boolean partitionsAvailable = true;
- int count = 0;
+ int count = 0;
while(count != additionalInstances && partitionsAvailable){
ClusterLevelPartitionContext partitionContext = (ClusterLevelPartitionContext)autoscaleAlgorithm.getNextScaleUpPartitionContext(clusterInstanceContext.getPartitionCtxtsAsAnArray());
@@ -137,7 +137,12 @@ dialect "mvel"
log.info("[scale-up] Partition available, hence trying to spawn an instance to scale up!" );
log.debug("[scale-up] " + " [partition] " + partitionContext.getPartitionId() + " [cluster] " + clusterId );
- delegator.delegateSpawn(partitionContext, clusterId, clusterInstanceContext.getId(), isPrimary);
+ log.debug("[scale-up] " + " has scaling dependents " + clusterInstanceContext.isHasScalingDependants() + " [cluster] " + clusterId );
+ if(clusterInstanceContext.isHasScalingDependants()) {
+ delegator.delegateScalingDependencyNotification(clusterId, clusterInstanceContext.getNetworkPartitionId(), factor);
+ } else {
+ delegator.delegateSpawn(partitionContext, clusterId, clusterInstanceContext.getId(), isPrimary);
+ }
count++;
} else {