http://git-wip-us.apache.org/repos/asf/stratos/blob/0b9602e8/service-stubs/org.apache.stratos.cloud.controller.service.stub/src/main/resources/CloudControllerService.wsdl
----------------------------------------------------------------------
diff --cc 
service-stubs/org.apache.stratos.cloud.controller.service.stub/src/main/resources/CloudControllerService.wsdl
index 8896a8d,c4e7f03..c7b2e30
--- 
a/service-stubs/org.apache.stratos.cloud.controller.service.stub/src/main/resources/CloudControllerService.wsdl
+++ 
b/service-stubs/org.apache.stratos.cloud.controller.service.stub/src/main/resources/CloudControllerService.wsdl
@@@ -1,14 -1,19 +1,19 @@@
- <?xml version="1.0" encoding="UTF-8"?><wsdl:definitions 
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; 
xmlns:ax29="http://topology.domain.messaging.stratos.apache.org/xsd"; 
xmlns:ns="http://impl.services.controller.cloud.stratos.apache.org"; 
xmlns:ax27="http://domain.common.stratos.apache.org/xsd"; 
xmlns:ax25="http://common.stratos.apache.org/xsd"; 
xmlns:ax23="http://domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:ax21="http://exception.controller.cloud.stratos.apache.org/xsd"; 
xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
xmlns:ns1="http://org.apache.axis2/xsd"; 
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"; 
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"; 
xmlns:ax211="http://kubernetes.domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"; 
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"; 
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"; 
targetNamespace="http://impl.services.controller.cloud.stratos.apache.org";>
 -<?xml version="1.0" encoding="UTF-8"?><wsdl:definitions 
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; 
xmlns:ax29="http://topology.domain.messaging.stratos.apache.org/xsd"; 
xmlns:ns="http://impl.services.controller.cloud.stratos.apache.org"; 
xmlns:ax27="http://domain.common.stratos.apache.org/xsd"; 
xmlns:ax23="http://domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:ax24="http://common.stratos.apache.org/xsd"; 
xmlns:ax21="http://exception.controller.cloud.stratos.apache.org/xsd"; 
xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
xmlns:ns1="http://org.apache.axis2/xsd"; 
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"; 
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"; 
xmlns:ax211="http://kubernetes.domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"; 
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"; 
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"; 
targetNamespace="http://impl.services.controller.cloud.stratos.apache.org";>
++<?xml version="1.0" encoding="UTF-8"?><wsdl:definitions 
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; 
xmlns:ns="http://impl.services.controller.cloud.stratos.apache.org"; 
xmlns:ax27="http://kubernetes.domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:ax23="http://domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:ax24="http://common.stratos.apache.org/xsd"; 
xmlns:ax21="http://exception.controller.cloud.stratos.apache.org/xsd"; 
xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
xmlns:ns1="http://org.apache.axis2/xsd"; 
xmlns:ax212="http://domain.common.stratos.apache.org/xsd"; 
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"; 
xmlns:ax210="http://topology.domain.messaging.stratos.apache.org/xsd"; 
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"; 
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"; 
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"; 
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"; 
targetNamespace="http://impl.services.controller.cloud.stratos.apache.org";>
      <wsdl:types>
-         <xs:schema 
xmlns:ax213="http://kubernetes.domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:ax210="http://topology.domain.messaging.stratos.apache.org/xsd"; 
xmlns:ax24="http://domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:ax22="http://exception.controller.cloud.stratos.apache.org/xsd"; 
attributeFormDefault="qualified" elementFormDefault="qualified" 
targetNamespace="http://impl.services.controller.cloud.stratos.apache.org";>
 -        <xs:schema 
xmlns:ax213="http://kubernetes.domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:ax210="http://topology.domain.messaging.stratos.apache.org/xsd"; 
xmlns:ax26="http://domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:ax22="http://exception.controller.cloud.stratos.apache.org/xsd"; 
attributeFormDefault="qualified" elementFormDefault="qualified" 
targetNamespace="http://impl.services.controller.cloud.stratos.apache.org";>
++        <xs:schema 
xmlns:ax29="http://kubernetes.domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:ax26="http://domain.controller.cloud.stratos.apache.org/xsd"; 
xmlns:ax211="http://topology.domain.messaging.stratos.apache.org/xsd"; 
xmlns:ax22="http://exception.controller.cloud.stratos.apache.org/xsd"; 
attributeFormDefault="qualified" elementFormDefault="qualified" 
targetNamespace="http://impl.services.controller.cloud.stratos.apache.org";>
              <xs:import 
namespace="http://exception.controller.cloud.stratos.apache.org/xsd"/>
              <xs:import 
namespace="http://domain.controller.cloud.stratos.apache.org/xsd"/>
--            <xs:import 
namespace="http://topology.domain.messaging.stratos.apache.org/xsd"/>
              <xs:import 
namespace="http://kubernetes.domain.controller.cloud.stratos.apache.org/xsd"/>
-             <xs:element 
name="CloudControllerServiceInvalidCartridgeTypeException">
++            <xs:import 
namespace="http://topology.domain.messaging.stratos.apache.org/xsd"/>
+             <xs:element name="getIaasProviders">
+                 <xs:complexType>
+                     <xs:sequence/>
+                 </xs:complexType>
+             </xs:element>
+             <xs:element name="getIaasProvidersResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" 
name="InvalidCartridgeTypeException" nillable="true" 
type="ax21:InvalidCartridgeTypeException"/>
+                         <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -26,10 -31,52 +31,10 @@@
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element 
name="CloudControllerServiceInvalidServiceGroupException">
 -            <xs:element 
name="CloudControllerServiceCartridgeDefinitionNotExistsException">
 -                <xs:complexType>
 -                    <xs:sequence>
 -                        <xs:element minOccurs="0" 
name="CartridgeDefinitionNotExistsException" nillable="true" 
type="ax21:CartridgeDefinitionNotExistsException"/>
 -                    </xs:sequence>
 -                </xs:complexType>
 -            </xs:element>
 -            <xs:element name="updateCartridge">
 -                <xs:complexType>
 -                    <xs:sequence>
 -                        <xs:element minOccurs="0" name="cartridge" 
nillable="true" type="ax26:Cartridge"/>
 -                    </xs:sequence>
 -                </xs:complexType>
 -            </xs:element>
 -            <xs:element name="updateCartridgeResponse">
 -                <xs:complexType>
 -                    <xs:sequence>
 -                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
 -                    </xs:sequence>
 -                </xs:complexType>
 -            </xs:element>
 -            <xs:element 
name="CloudControllerServiceCartridgeNotFoundException">
 -                <xs:complexType>
 -                    <xs:sequence>
 -                        <xs:element minOccurs="0" 
name="CartridgeNotFoundException" nillable="true" 
type="ax21:CartridgeNotFoundException"/>
 -                    </xs:sequence>
 -                </xs:complexType>
 -            </xs:element>
 -            <xs:element name="getCartridge">
 -                <xs:complexType>
 -                    <xs:sequence>
 -                        <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
 -                    </xs:sequence>
 -                </xs:complexType>
 -            </xs:element>
 -            <xs:element name="getCartridgeResponse">
 -                <xs:complexType>
 -                    <xs:sequence>
 -                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:Cartridge"/>
 -                    </xs:sequence>
 -                </xs:complexType>
 -            </xs:element>
+             <xs:element 
name="CloudControllerServiceCartridgeAlreadyExistsException">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" 
name="InvalidServiceGroupException" nillable="true" 
type="ax21:InvalidServiceGroupException"/>
+                         <xs:element minOccurs="0" 
name="CartridgeAlreadyExistsException" nillable="true" 
type="ax21:CartridgeAlreadyExistsException"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -47,24 -94,24 +52,24 @@@
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="removeServiceGroup">
 -            <xs:element name="CloudControllerServiceCloudControllerException">
++            <xs:element 
name="CloudControllerServiceCartridgeDefinitionNotExistsException">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
 -                        <xs:element minOccurs="0" 
name="CloudControllerException" nillable="true" 
type="ax21:CloudControllerException"/>
++                        <xs:element minOccurs="0" 
name="CartridgeDefinitionNotExistsException" nillable="true" 
type="ax21:CartridgeDefinitionNotExistsException"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="removeServiceGroupResponse">
 -            <xs:element name="startInstance">
++            <xs:element name="updateCartridge">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
 -                        <xs:element minOccurs="0" name="instanceContext" 
nillable="true" type="ax26:InstanceContext"/>
++                        <xs:element minOccurs="0" name="cartridge" 
nillable="true" type="ax26:Cartridge"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="getServiceGroup">
 -            <xs:element name="startInstanceResponse">
++            <xs:element name="updateCartridgeResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
 -                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:MemberContext"/>
++                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -89,108 -136,115 +94,108 @@@
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="getServiceGroupCartridges">
 -            <xs:element 
name="CloudControllerServiceInvalidServiceGroupException">
++            <xs:element 
name="CloudControllerServiceNonExistingKubernetesClusterException">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
 -                        <xs:element minOccurs="0" 
name="InvalidServiceGroupException" nillable="true" 
type="ax21:InvalidServiceGroupException"/>
++                        <xs:element minOccurs="0" 
name="NonExistingKubernetesClusterException" nillable="true" 
type="ax21:NonExistingKubernetesClusterException"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="getServiceGroupCartridgesResponse">
 -            <xs:element name="addServiceGroup">
++            <xs:element name="getKubernetesCluster">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="xs:string"/>
 -                        <xs:element minOccurs="0" name="servicegroup" 
nillable="true" type="ax26:ServiceGroup"/>
++                        <xs:element minOccurs="0" name="kubernetesClusterId" 
nillable="true" type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="getServiceGroupDependencies">
 -            <xs:element name="addServiceGroupResponse">
++            <xs:element name="getKubernetesClusterResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
 -                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
++                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax29:KubernetesCluster"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="getServiceGroupDependenciesResponse">
 -            <xs:element name="removeServiceGroup">
++            <xs:element name="terminateInstanceForcefully">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="return" 
nillable="true" type="ax23:Dependencies"/>
 -                        <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
++                        <xs:element minOccurs="0" name="memberId" 
nillable="true" type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element 
name="CloudControllerServiceCartridgeNotFoundException">
 -            <xs:element name="removeServiceGroupResponse">
++            <xs:element name="terminateInstanceForcefullyResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" 
name="CartridgeNotFoundException" nillable="true" 
type="ax21:CartridgeNotFoundException"/>
+                         <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element 
name="CloudControllerServiceInvalidIaasProviderException">
 -            <xs:element name="getServiceGroup">
 -                <xs:complexType>
 -                    <xs:sequence>
 -                        <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
 -                    </xs:sequence>
 -                </xs:complexType>
 -            </xs:element>
 -            <xs:element name="getServiceGroupResponse">
++            <xs:element name="CloudControllerServiceInvalidClusterException">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" 
name="InvalidIaasProviderException" nillable="true" 
type="ax21:InvalidIaasProviderException"/>
 -                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:ServiceGroup"/>
++                        <xs:element minOccurs="0" 
name="InvalidClusterException" nillable="true" 
type="ax21:InvalidClusterException"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="CloudControllerServiceCloudControllerException">
 -            <xs:element name="getServiceGroupSubGroups">
++            <xs:element name="terminateInstances">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" 
name="CloudControllerException" nillable="true" 
type="ax21:CloudControllerException"/>
 -                        <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
++                        <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="startInstances">
 -            <xs:element name="getServiceGroupSubGroupsResponse">
++            <xs:element name="terminateInstancesResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element maxOccurs="unbounded" minOccurs="0" 
name="instanceContexts" nillable="true" type="ax23:InstanceContext"/>
 -                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="startInstancesResponse">
 -            <xs:element name="getServiceGroupCartridges">
++            <xs:element 
name="CloudControllerServiceCartridgeNotFoundException">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="ax23:MemberContext"/>
 -                        <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
++                        <xs:element minOccurs="0" 
name="CartridgeNotFoundException" nillable="true" 
type="ax21:CartridgeNotFoundException"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="terminateInstanceForcefully">
 -            <xs:element name="getServiceGroupCartridgesResponse">
++            <xs:element name="registerService">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="memberId" 
nillable="true" type="xs:string"/>
 -                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="registrant" 
nillable="true" type="ax26:Registrant"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="terminateInstanceForcefullyResponse">
 -            <xs:element name="getServiceGroupDependencies">
++            <xs:element name="registerServiceResponse">
                  <xs:complexType>
                      <xs:sequence>
 -                        <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
 +                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element 
name="CloudControllerServiceInvalidPartitionException">
 -            <xs:element name="getServiceGroupDependenciesResponse">
++            <xs:element 
name="CloudControllerServiceUnregisteredClusterException">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" 
name="InvalidPartitionException" nillable="true" 
type="ax21:InvalidPartitionException"/>
 -                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:Dependencies"/>
++                        <xs:element minOccurs="0" 
name="UnregisteredClusterException" nillable="true" 
type="ax21:UnregisteredClusterException"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="validatePartition">
 -            <xs:element 
name="CloudControllerServiceInvalidPartitionException">
++            <xs:element name="unregisterService">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="partition" 
nillable="true" type="ax23:Partition"/>
 -                        <xs:element minOccurs="0" 
name="InvalidPartitionException" nillable="true" 
type="ax21:InvalidPartitionException"/>
++                        <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="validatePartitionResponse">
 -            <xs:element name="validatePartition">
++            <xs:element name="unregisterServiceResponse">
                  <xs:complexType>
                      <xs:sequence>
 -                        <xs:element minOccurs="0" name="partition" 
nillable="true" type="ax26:Partition"/>
 +                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="startInstance">
 -            <xs:element name="validatePartitionResponse">
++            <xs:element 
name="CloudControllerServiceInvalidPartitionException">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="instanceContext" 
nillable="true" type="ax23:InstanceContext"/>
 -                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
++                        <xs:element minOccurs="0" 
name="InvalidPartitionException" nillable="true" 
type="ax21:InvalidPartitionException"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -208,134 -263,151 +214,146 @@@
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="terminateInstance">
 -            <xs:element name="registerService">
++            <xs:element name="updateClusterStatus">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="memberId" 
nillable="true" type="xs:string"/>
 -                        <xs:element minOccurs="0" name="registrant" 
nillable="true" type="ax26:Registrant"/>
++                        <xs:element minOccurs="0" name="serviceName" 
nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="instanceId" 
nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="status" 
nillable="true" type="ax210:ClusterStatus"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="terminateInstanceResponse">
 -            <xs:element name="registerServiceResponse">
++            <xs:element name="updateClusterStatusResponse">
                  <xs:complexType>
                      <xs:sequence>
                          <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="getCartridge">
 -            <xs:element name="startInstances">
++            <xs:element name="validatePartition">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
-                         <xs:element minOccurs="0" name="tenantId" 
type="xs:int"/>
 -                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="instanceContexts" nillable="true" type="ax26:InstanceContext"/>
++                        <xs:element minOccurs="0" name="partition" 
nillable="true" type="ax26:Partition"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="getCartridgeResponse">
 -            <xs:element name="startInstancesResponse">
++            <xs:element name="validatePartitionResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="return" 
nillable="true" type="ax23:Cartridge"/>
 -                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="ax26:MemberContext"/>
++                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="getClusterContext">
 -            <xs:element name="CloudControllerServiceInvalidMemberException">
++            <xs:element 
name="CloudControllerServiceInvalidServiceGroupException">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
 -                        <xs:element minOccurs="0" 
name="InvalidMemberException" nillable="true" 
type="ax21:InvalidMemberException"/>
++                        <xs:element minOccurs="0" 
name="InvalidServiceGroupException" nillable="true" 
type="ax21:InvalidServiceGroupException"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="getClusterContextResponse">
 -            <xs:element name="terminateInstance">
++            <xs:element name="addServiceGroup">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="return" 
nillable="true" type="ax23:ClusterContext"/>
 -                        <xs:element minOccurs="0" name="memberId" 
nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="servicegroup" 
nillable="true" type="ax26:ServiceGroup"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="CloudControllerServiceInvalidClusterException">
 -            <xs:element name="terminateInstanceResponse">
++            <xs:element name="addServiceGroupResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" 
name="InvalidClusterException" nillable="true" 
type="ax21:InvalidClusterException"/>
+                         <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="terminateInstances">
 -            <xs:element name="terminateInstanceForcefully">
++            <xs:element name="removeServiceGroup">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
 -                        <xs:element minOccurs="0" name="memberId" 
nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="terminateInstancesResponse">
 -            <xs:element name="terminateInstanceForcefullyResponse">
++            <xs:element name="removeServiceGroupResponse">
                  <xs:complexType>
                      <xs:sequence>
                          <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="registerService">
 -            <xs:element name="CloudControllerServiceInvalidClusterException">
++            <xs:element name="getServiceGroup">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="registrant" 
nillable="true" type="ax23:Registrant"/>
 -                        <xs:element minOccurs="0" 
name="InvalidClusterException" nillable="true" 
type="ax21:InvalidClusterException"/>
++                        <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="registerServiceResponse">
 -            <xs:element name="terminateInstances">
++            <xs:element name="getServiceGroupResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
 -                        <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:ServiceGroup"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element 
name="CloudControllerServiceUnregisteredClusterException">
 -            <xs:element name="terminateInstancesResponse">
++            <xs:element name="getServiceGroupSubGroups">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" 
name="UnregisteredClusterException" nillable="true" 
type="ax21:UnregisteredClusterException"/>
 -                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
++                        <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="unregisterService">
 -            <xs:element name="updateClusterStatus">
++            <xs:element name="getServiceGroupSubGroupsResponse">
                  <xs:complexType>
                      <xs:sequence>
 -                        <xs:element minOccurs="0" name="serviceName" 
nillable="true" type="xs:string"/>
--                        <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
 -                        <xs:element minOccurs="0" name="instanceId" 
nillable="true" type="xs:string"/>
 -                        <xs:element minOccurs="0" name="status" 
nillable="true" type="ax29:ClusterStatus"/>
++                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="unregisterServiceResponse">
 -            <xs:element name="updateClusterStatusResponse">
++            <xs:element name="getServiceGroupCartridges">
                  <xs:complexType>
                      <xs:sequence>
--                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
++                        <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="validateDeploymentPolicyNetworkPartition">
 -            <xs:element 
name="CloudControllerServiceUnregisteredClusterException">
++            <xs:element name="getServiceGroupCartridgesResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
-                         <xs:element minOccurs="0" name="networkPartitionId" 
nillable="true" type="xs:string"/>
 -                        <xs:element minOccurs="0" 
name="UnregisteredClusterException" nillable="true" 
type="ax21:UnregisteredClusterException"/>
++                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element 
name="validateDeploymentPolicyNetworkPartitionResponse">
 -            <xs:element name="unregisterService">
++            <xs:element name="getServiceGroupDependencies">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
 -                        <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="updateClusterStatus">
 -            <xs:element name="unregisterServiceResponse">
++            <xs:element name="getServiceGroupDependenciesResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="serviceName" 
nillable="true" type="xs:string"/>
-                         <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
-                         <xs:element minOccurs="0" name="instanceId" 
nillable="true" type="xs:string"/>
-                         <xs:element minOccurs="0" name="status" 
nillable="true" type="ax29:ClusterStatus"/>
 -                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
++                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:Dependencies"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="updateClusterStatusResponse">
 -            <xs:element name="getCartridges">
 -                <xs:complexType>
 -                    <xs:sequence/>
 -                </xs:complexType>
 -            </xs:element>
 -            <xs:element name="getCartridgesResponse">
++            <xs:element name="CloudControllerServiceCloudControllerException">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
 -                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" 
name="CloudControllerException" nillable="true" 
type="ax21:CloudControllerException"/>
+                     </xs:sequence>
+                 </xs:complexType>
+             </xs:element>
 -            <xs:element name="getClusterContext">
++            <xs:element name="startInstances">
+                 <xs:complexType>
+                     <xs:sequence>
 -                        <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
++                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="instanceContexts" nillable="true" type="ax26:InstanceContext"/>
+                     </xs:sequence>
+                 </xs:complexType>
+             </xs:element>
 -            <xs:element name="getClusterContextResponse">
++            <xs:element name="startInstancesResponse">
+                 <xs:complexType>
+                     <xs:sequence>
 -                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:ClusterContext"/>
++                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="ax26:MemberContext"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -395,14 -467,28 +413,7 @@@
              <xs:element name="getKubernetesClustersResponse">
                  <xs:complexType>
                      <xs:sequence>
--                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="ax213:KubernetesCluster"/>
--                    </xs:sequence>
--                </xs:complexType>
--            </xs:element>
--            <xs:element 
name="CloudControllerServiceNonExistingKubernetesClusterException">
--                <xs:complexType>
--                    <xs:sequence>
--                        <xs:element minOccurs="0" 
name="NonExistingKubernetesClusterException" nillable="true" 
type="ax21:NonExistingKubernetesClusterException"/>
 -                    </xs:sequence>
 -                </xs:complexType>
 -            </xs:element>
 -            <xs:element name="getKubernetesCluster">
 -                <xs:complexType>
 -                    <xs:sequence>
 -                        <xs:element minOccurs="0" name="kubernetesClusterId" 
nillable="true" type="xs:string"/>
 -                    </xs:sequence>
 -                </xs:complexType>
 -            </xs:element>
 -            <xs:element name="getKubernetesClusterResponse">
 -                <xs:complexType>
 -                    <xs:sequence>
 -                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax213:KubernetesCluster"/>
++                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="ax29:KubernetesCluster"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -416,7 -502,7 +427,7 @@@
              <xs:element name="getMasterForKubernetesClusterResponse">
                  <xs:complexType>
                      <xs:sequence>
--                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax213:KubernetesMaster"/>
++                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax29:KubernetesMaster"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -430,7 -516,7 +441,7 @@@
              <xs:element name="getHostsForKubernetesClusterResponse">
                  <xs:complexType>
                      <xs:sequence>
--                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="ax213:KubernetesHost"/>
++                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="ax29:KubernetesHost"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -451,7 -537,7 +462,7 @@@
              <xs:element name="addKubernetesCluster">
                  <xs:complexType>
                      <xs:sequence>
--                        <xs:element minOccurs="0" name="kubernetesCluster" 
nillable="true" type="ax213:KubernetesCluster"/>
++                        <xs:element minOccurs="0" name="kubernetesCluster" 
nillable="true" type="ax29:KubernetesCluster"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -465,7 -551,7 +476,7 @@@
              <xs:element name="updateKubernetesCluster">
                  <xs:complexType>
                      <xs:sequence>
--                        <xs:element minOccurs="0" name="kubernetesCluster" 
nillable="true" type="ax213:KubernetesCluster"/>
++                        <xs:element minOccurs="0" name="kubernetesCluster" 
nillable="true" type="ax29:KubernetesCluster"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -487,7 -573,7 +498,7 @@@
                  <xs:complexType>
                      <xs:sequence>
                          <xs:element minOccurs="0" name="kubernetesClusterId" 
nillable="true" type="xs:string"/>
--                        <xs:element minOccurs="0" name="kubernetesHost" 
nillable="true" type="ax213:KubernetesHost"/>
++                        <xs:element minOccurs="0" name="kubernetesHost" 
nillable="true" type="ax29:KubernetesHost"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -550,7 -650,7 +561,7 @@@
              <xs:element name="updateKubernetesMaster">
                  <xs:complexType>
                      <xs:sequence>
--                        <xs:element minOccurs="0" name="kubernetesMaster" 
nillable="true" type="ax213:KubernetesMaster"/>
++                        <xs:element minOccurs="0" name="kubernetesMaster" 
nillable="true" type="ax29:KubernetesMaster"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -561,20 -661,6 +572,20 @@@
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
 +            <xs:element name="updateKubernetesHost">
 +                <xs:complexType>
 +                    <xs:sequence>
-                         <xs:element minOccurs="0" name="kubernetesHost" 
nillable="true" type="ax213:KubernetesHost"/>
++                        <xs:element minOccurs="0" name="kubernetesHost" 
nillable="true" type="ax29:KubernetesHost"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
 +            <xs:element name="updateKubernetesHostResponse">
 +                <xs:complexType>
 +                    <xs:sequence>
 +                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
              <xs:element 
name="CloudControllerServiceNetworkPartitionAlreadyExistsException">
                  <xs:complexType>
                      <xs:sequence>
@@@ -643,111 -730,24 +655,100 @@@
                      <xs:sequence/>
                  </xs:complexType>
              </xs:element>
 -            <xs:element name="getNetworkPartitionsResponse">
 +            <xs:element name="getNetworkPartitionsResponse">
 +                <xs:complexType>
 +                    <xs:sequence>
-                         <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="ax23:NetworkPartition"/>
++                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="ax26:NetworkPartition"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
 +            <xs:element name="getNetworkPartition">
 +                <xs:complexType>
 +                    <xs:sequence>
 +                        <xs:element minOccurs="0" name="networkPartitionId" 
nillable="true" type="xs:string"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
 +            <xs:element name="getNetworkPartitionResponse">
 +                <xs:complexType>
 +                    <xs:sequence>
-                         <xs:element minOccurs="0" name="return" 
nillable="true" type="ax23:NetworkPartition"/>
++                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:NetworkPartition"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
-             <xs:element name="getKubernetesCluster">
++            <xs:element name="CloudControllerServiceInvalidMemberException">
 +                <xs:complexType>
 +                    <xs:sequence>
-                         <xs:element minOccurs="0" name="kubernetesClusterId" 
nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" 
name="InvalidMemberException" nillable="true" 
type="ax21:InvalidMemberException"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
-             <xs:element name="getKubernetesClusterResponse">
++            <xs:element name="terminateInstance">
 +                <xs:complexType>
 +                    <xs:sequence>
-                         <xs:element minOccurs="0" name="return" 
nillable="true" type="ax213:KubernetesCluster"/>
++                        <xs:element minOccurs="0" name="memberId" 
nillable="true" type="xs:string"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
-             <xs:element name="getIaasProviders">
-                 <xs:complexType>
-                     <xs:sequence/>
-                 </xs:complexType>
-             </xs:element>
-             <xs:element name="getIaasProvidersResponse">
++            <xs:element name="terminateInstanceResponse">
 +                <xs:complexType>
 +                    <xs:sequence>
-                         <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
-             <xs:element 
name="CloudControllerServiceInvalidCartridgeDefinitionException">
++            <xs:element name="getCartridges">
 +                <xs:complexType>
-                     <xs:sequence>
-                         <xs:element minOccurs="0" 
name="InvalidCartridgeDefinitionException" nillable="true" 
type="ax21:InvalidCartridgeDefinitionException"/>
-                     </xs:sequence>
++                    <xs:sequence/>
 +                </xs:complexType>
 +            </xs:element>
-             <xs:element 
name="CloudControllerServiceCartridgeAlreadyExistsException">
++            <xs:element name="getCartridgesResponse">
 +                <xs:complexType>
 +                    <xs:sequence>
-                         <xs:element minOccurs="0" 
name="CartridgeAlreadyExistsException" nillable="true" 
type="ax21:CartridgeAlreadyExistsException"/>
++                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="xs:string"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
-             <xs:element name="addCartridge">
++            <xs:element name="startInstance">
 +                <xs:complexType>
 +                    <xs:sequence>
-                         <xs:element minOccurs="0" name="cartridgeConfig" 
nillable="true" type="ax23:Cartridge"/>
++                        <xs:element minOccurs="0" name="instanceContext" 
nillable="true" type="ax26:InstanceContext"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
-             <xs:element name="addCartridgeResponse">
++            <xs:element name="startInstanceResponse">
 +                <xs:complexType>
 +                    <xs:sequence>
-                         <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
++                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:MemberContext"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
-             <xs:element 
name="CloudControllerServiceCartridgeDefinitionNotExistsException">
++            <xs:element name="getCartridge">
 +                <xs:complexType>
 +                    <xs:sequence>
-                         <xs:element minOccurs="0" 
name="CartridgeDefinitionNotExistsException" nillable="true" 
type="ax21:CartridgeDefinitionNotExistsException"/>
++                        <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="tenantId" 
type="xs:int"/>
 +                    </xs:sequence>
 +                </xs:complexType>
 +            </xs:element>
-             <xs:element name="updateCartridge">
++            <xs:element name="getCartridgeResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="cartridge" 
nillable="true" type="ax23:Cartridge"/>
 -                        <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="ax26:NetworkPartition"/>
++                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:Cartridge"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="updateCartridgeResponse">
 -            <xs:element name="getNetworkPartition">
++            <xs:element name="getClusterContext">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element minOccurs="0" name="return" 
type="xs:boolean"/>
 -                        <xs:element minOccurs="0" name="networkPartitionId" 
nillable="true" type="xs:string"/>
++                        <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
-             <xs:element name="getCartridges">
-                 <xs:complexType>
-                     <xs:sequence/>
-                 </xs:complexType>
-             </xs:element>
-             <xs:element name="getCartridgesResponse">
 -            <xs:element name="getNetworkPartitionResponse">
++            <xs:element name="getClusterContextResponse">
                  <xs:complexType>
                      <xs:sequence>
-                         <xs:element maxOccurs="unbounded" minOccurs="0" 
name="return" nillable="true" type="xs:string"/>
 -                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:NetworkPartition"/>
++                        <xs:element minOccurs="0" name="return" 
nillable="true" type="ax26:ClusterContext"/>
                      </xs:sequence>
                  </xs:complexType>
              </xs:element>
@@@ -787,34 -787,37 +788,30 @@@
                      <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
                  </xs:sequence>
              </xs:complexType>
-             <xs:complexType name="CartridgeNotFoundException">
++            <xs:complexType name="CartridgeAlreadyExistsException">
++                <xs:sequence/>
++            </xs:complexType>
+             <xs:complexType name="CartridgeDefinitionNotExistsException">
                  <xs:sequence>
                      <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
                  </xs:sequence>
              </xs:complexType>
-             <xs:complexType name="InvalidIaasProviderException">
 -            <xs:complexType name="CartridgeNotFoundException">
++            <xs:complexType name="InvalidCartridgeTypeException">
                  <xs:sequence>
                      <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
                  </xs:sequence>
              </xs:complexType>
 -            <xs:complexType name="CartridgeAlreadyExistsException">
 -                <xs:sequence/>
 -            </xs:complexType>
--            <xs:complexType name="CloudControllerException">
--                <xs:complexContent>
--                    <xs:extension base="xs:RuntimeException">
--                        <xs:sequence/>
--                    </xs:extension>
--                </xs:complexContent>
--            </xs:complexType>
-             <xs:complexType name="InvalidPartitionException">
 -            <xs:complexType name="InvalidCartridgeTypeException">
++            <xs:complexType name="NonExistingKubernetesClusterException">
                  <xs:sequence>
                      <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
                  </xs:sequence>
              </xs:complexType>
-             <xs:complexType name="InvalidMemberException">
 -            <xs:complexType name="InvalidServiceGroupException">
++            <xs:complexType name="InvalidClusterException">
                  <xs:sequence>
                      <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
                  </xs:sequence>
              </xs:complexType>
-             <xs:complexType name="InvalidClusterException">
 -            <xs:complexType name="InvalidPartitionException">
++            <xs:complexType name="CartridgeNotFoundException">
                  <xs:sequence>
                      <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
                  </xs:sequence>
@@@ -824,17 -827,22 +821,29 @@@
                      <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
                  </xs:sequence>
              </xs:complexType>
-             <xs:complexType name="ApplicationClusterRegistrationException">
 -            <xs:complexType name="InvalidClusterException">
++            <xs:complexType name="InvalidPartitionException">
                  <xs:sequence>
                      <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
                  </xs:sequence>
              </xs:complexType>
-             <xs:complexType name="ClusterInstanceCreationException">
 -            <xs:complexType name="UnregisteredClusterException">
++            <xs:complexType name="InvalidServiceGroupException">
                  <xs:sequence>
                      <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
                  </xs:sequence>
              </xs:complexType>
-             <xs:complexType name="NonExistingKubernetesClusterException">
++            <xs:complexType name="CloudControllerException">
++                <xs:complexContent>
++                    <xs:extension base="xs:RuntimeException">
++                        <xs:sequence/>
++                    </xs:extension>
++                </xs:complexContent>
++            </xs:complexType>
+             <xs:complexType name="ApplicationClusterRegistrationException">
+                 <xs:sequence>
+                     <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
+                 </xs:sequence>
+             </xs:complexType>
+             <xs:complexType name="ClusterInstanceCreationException">
                  <xs:sequence>
                      <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
                  </xs:sequence>
@@@ -882,30 -895,17 +891,37 @@@
              <xs:complexType name="NetworkPartitionNotExistsException">
                  <xs:sequence/>
              </xs:complexType>
-             <xs:complexType name="InvalidCartridgeDefinitionException">
++            <xs:complexType name="InvalidMemberException">
 +                <xs:sequence>
 +                    <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
 +                </xs:sequence>
 +            </xs:complexType>
-             <xs:complexType name="CartridgeAlreadyExistsException">
-                 <xs:sequence/>
-             </xs:complexType>
-             <xs:complexType name="CartridgeDefinitionNotExistsException">
++        </xs:schema>
++        <xs:schema attributeFormDefault="qualified" 
elementFormDefault="qualified" 
targetNamespace="http://domain.common.stratos.apache.org/xsd";>
++            <xs:complexType name="NameValuePair">
 +                <xs:sequence>
-                     <xs:element minOccurs="0" name="message" nillable="true" 
type="xs:string"/>
++                    <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
++                    <xs:element minOccurs="0" name="value" nillable="true" 
type="xs:string"/>
 +                </xs:sequence>
 +            </xs:complexType>
++            <xs:complexType name="LoadBalancingIPType">
++                <xs:complexContent>
++                    <xs:extension base="xs:Enum">
++                        <xs:sequence/>
++                    </xs:extension>
++                </xs:complexContent>
++            </xs:complexType>
          </xs:schema>
--        <xs:schema xmlns:ax212="http://common.stratos.apache.org/xsd"; 
attributeFormDefault="qualified" elementFormDefault="qualified" 
targetNamespace="http://kubernetes.domain.controller.cloud.stratos.apache.org/xsd";>
++        <xs:schema xmlns:ax28="http://common.stratos.apache.org/xsd"; 
attributeFormDefault="qualified" elementFormDefault="qualified" 
targetNamespace="http://kubernetes.domain.controller.cloud.stratos.apache.org/xsd";>
              <xs:import namespace="http://common.stratos.apache.org/xsd"/>
              <xs:complexType name="KubernetesCluster">
                  <xs:sequence>
                      <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
                      <xs:element minOccurs="0" name="description" 
nillable="true" type="xs:string"/>
--                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="kubernetesHosts" nillable="true" type="ax211:KubernetesHost"/>
--                    <xs:element minOccurs="0" name="kubernetesMaster" 
nillable="true" type="ax211:KubernetesMaster"/>
--                    <xs:element minOccurs="0" name="portRange" 
nillable="true" type="ax211:PortRange"/>
--                    <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax212:Properties"/>
++                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="kubernetesHosts" nillable="true" type="ax27:KubernetesHost"/>
++                    <xs:element minOccurs="0" name="kubernetesMaster" 
nillable="true" type="ax27:KubernetesMaster"/>
++                    <xs:element minOccurs="0" name="portRange" 
nillable="true" type="ax27:PortRange"/>
++                    <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax28:Properties"/>
                  </xs:sequence>
              </xs:complexType>
              <xs:complexType name="KubernetesHost">
@@@ -913,13 -913,13 +929,13 @@@
                      <xs:element minOccurs="0" name="hostId" nillable="true" 
type="xs:string"/>
                      <xs:element minOccurs="0" name="hostname" nillable="true" 
type="xs:string"/>
                      <xs:element minOccurs="0" name="privateIPAddress" 
nillable="true" type="xs:string"/>
--                    <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax212:Properties"/>
++                    <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax28:Properties"/>
                      <xs:element minOccurs="0" name="publicIPAddress" 
nillable="true" type="xs:string"/>
                  </xs:sequence>
              </xs:complexType>
              <xs:complexType name="KubernetesMaster">
                  <xs:complexContent>
--                    <xs:extension base="ax211:KubernetesHost">
++                    <xs:extension base="ax27:KubernetesHost">
                          <xs:sequence/>
                      </xs:extension>
                  </xs:complexContent>
@@@ -931,116 -931,24 +947,9 @@@
                  </xs:sequence>
              </xs:complexType>
          </xs:schema>
--        <xs:schema attributeFormDefault="qualified" 
elementFormDefault="qualified" 
targetNamespace="http://domain.common.stratos.apache.org/xsd";>
--            <xs:complexType name="NameValuePair">
--                <xs:sequence>
--                    <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
--                    <xs:element minOccurs="0" name="value" nillable="true" 
type="xs:string"/>
--                </xs:sequence>
--            </xs:complexType>
--            <xs:complexType name="LoadBalancingIPType">
--                <xs:complexContent>
--                    <xs:extension base="xs:Enum">
--                        <xs:sequence/>
--                    </xs:extension>
--                </xs:complexContent>
--            </xs:complexType>
--        </xs:schema>
-         <xs:schema xmlns:ax28="http://domain.common.stratos.apache.org/xsd"; 
xmlns:ax26="http://common.stratos.apache.org/xsd"; 
attributeFormDefault="qualified" elementFormDefault="qualified" 
targetNamespace="http://domain.controller.cloud.stratos.apache.org/xsd";>
 -        <xs:schema xmlns:ax28="http://domain.common.stratos.apache.org/xsd"; 
xmlns:ax25="http://common.stratos.apache.org/xsd"; 
attributeFormDefault="qualified" elementFormDefault="qualified" 
targetNamespace="http://domain.controller.cloud.stratos.apache.org/xsd";>
++        <xs:schema xmlns:ax213="http://domain.common.stratos.apache.org/xsd"; 
xmlns:ax25="http://common.stratos.apache.org/xsd"; 
attributeFormDefault="qualified" elementFormDefault="qualified" 
targetNamespace="http://domain.controller.cloud.stratos.apache.org/xsd";>
              <xs:import namespace="http://common.stratos.apache.org/xsd"/>
              <xs:import 
namespace="http://domain.common.stratos.apache.org/xsd"/>
-             <xs:complexType name="ServiceGroup">
-                 <xs:sequence>
-                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="cartridges" nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="dependencies" 
nillable="true" type="ax23:Dependencies"/>
-                     <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
-                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="subGroups" nillable="true" type="xs:string"/>
-                 </xs:sequence>
-             </xs:complexType>
-             <xs:complexType name="Dependencies">
-                 <xs:sequence>
-                     <xs:element minOccurs="0" name="killBehaviour" 
nillable="true" type="xs:string"/>
-                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="startupOrders" nillable="true" type="xs:string"/>
-                 </xs:sequence>
-             </xs:complexType>
-             <xs:complexType name="InstanceContext">
-                 <xs:sequence>
-                     <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="clusterInstanceId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="initTime" type="xs:long"/>
-                     <xs:element minOccurs="0" name="networkPartitionId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="obsoleteExpiryTime" 
type="xs:long"/>
-                     <xs:element minOccurs="0" name="partition" 
nillable="true" type="ax23:Partition"/>
-                     <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax25:Properties"/>
-                     <xs:element minOccurs="0" name="volumeRequired" 
type="xs:boolean"/>
-                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="volumes" nillable="true" type="ax23:Volume"/>
-                 </xs:sequence>
-             </xs:complexType>
-             <xs:complexType name="Partition">
-                 <xs:sequence>
-                     <xs:element minOccurs="0" name="description" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="id" nillable="true" 
type="xs:string"/>
-                     <xs:element minOccurs="0" name="isPublic" 
type="xs:boolean"/>
-                     <xs:element minOccurs="0" name="kubernetesClusterId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="partitionMax" 
type="xs:int"/>
-                     <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax25:Properties"/>
-                     <xs:element minOccurs="0" name="provider" nillable="true" 
type="xs:string"/>
-                 </xs:sequence>
-             </xs:complexType>
-             <xs:complexType name="Volume">
-                 <xs:sequence>
-                     <xs:element minOccurs="0" name="device" nillable="true" 
type="xs:string"/>
-                     <xs:element minOccurs="0" name="iaasType" nillable="true" 
type="xs:string"/>
-                     <xs:element minOccurs="0" name="id" nillable="true" 
type="xs:string"/>
-                     <xs:element minOccurs="0" name="mappingPath" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="removeOntermination" 
type="xs:boolean"/>
-                     <xs:element minOccurs="0" name="size" type="xs:int"/>
-                     <xs:element minOccurs="0" name="snapshotId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="volumeId" nillable="true" 
type="xs:string"/>
-                 </xs:sequence>
-             </xs:complexType>
-             <xs:complexType name="MemberContext">
-                 <xs:sequence>
-                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="allocatedIPs" nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="applicationId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="clusterInstanceId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="defaultPrivateIP" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="defaultPublicIP" 
nillable="true" type="xs:string"/>
-                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="dynamicPayload" nillable="true" type="ax27:NameValuePair"/>
-                     <xs:element minOccurs="0" name="initTime" type="xs:long"/>
-                     <xs:element minOccurs="0" name="instanceId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="instanceMetadata" 
nillable="true" type="ax23:InstanceMetadata"/>
-                     <xs:element minOccurs="0" name="kubernetesPodId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="kubernetesPodLabel" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="lbClusterId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="loadBalancingIPType" 
nillable="true" type="ax27:LoadBalancingIPType"/>
-                     <xs:element minOccurs="0" name="memberId" nillable="true" 
type="xs:string"/>
-                     <xs:element minOccurs="0" name="networkPartitionId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="obsoleteExpiryTime" 
type="xs:long"/>
-                     <xs:element minOccurs="0" name="obsoleteInitTime" 
type="xs:long"/>
-                     <xs:element minOccurs="0" name="partition" 
nillable="true" type="ax23:Partition"/>
-                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="privateIPs" nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax25:Properties"/>
-                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="publicIPs" nillable="true" type="xs:string"/>
-                 </xs:sequence>
-             </xs:complexType>
-             <xs:complexType name="InstanceMetadata">
-                 <xs:sequence>
-                     <xs:element minOccurs="0" name="cpu" type="xs:int"/>
-                     <xs:element minOccurs="0" name="hostname" nillable="true" 
type="xs:string"/>
-                     <xs:element minOccurs="0" name="hypervisor" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="imageId" nillable="true" 
type="xs:string"/>
-                     <xs:element minOccurs="0" name="loginPort" type="xs:int"/>
-                     <xs:element minOccurs="0" name="operatingSystem64bit" 
type="xs:boolean"/>
-                     <xs:element minOccurs="0" 
name="operatingSystemArchitecture" nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="operatingSystemName" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="operatingSystemVersion" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="ram" type="xs:int"/>
-                 </xs:sequence>
-             </xs:complexType>
              <xs:complexType name="Cartridge">
                  <xs:sequence>
                      <xs:element maxOccurs="unbounded" minOccurs="0" 
name="appTypeMappings" nillable="true" type="ax23:AppType"/>
@@@ -1126,35 -1044,115 +1047,99 @@@
                      <xs:element minOccurs="0" name="proxyPort" type="xs:int"/>
                  </xs:sequence>
              </xs:complexType>
-             <xs:complexType name="ClusterContext">
 -            <xs:complexType name="InstanceContext">
++            <xs:complexType name="Registrant">
                  <xs:sequence>
-                     <xs:element minOccurs="0" name="applicationId" 
nillable="true" type="xs:string"/>
++                    <xs:element minOccurs="0" name="autoScalerPolicyName" 
nillable="true" type="xs:string"/>
                      <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
                      <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="clusterInstanceId" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="initTime" type="xs:long"/>
 -                    <xs:element minOccurs="0" name="networkPartitionId" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="obsoleteExpiryTime" 
type="xs:long"/>
 -                    <xs:element minOccurs="0" name="partition" 
nillable="true" type="ax23:Partition"/>
++                    <xs:element minOccurs="0" name="deploymentPolicyName" 
nillable="true" type="xs:string"/>
 +                    <xs:element minOccurs="0" name="hostName" nillable="true" 
type="xs:string"/>
-                     <xs:element minOccurs="0" name="kubernetesClusterId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="kubernetesServices" 
nillable="true" type="xs:anyType"/>
-                     <xs:element minOccurs="0" name="lbCluster" 
type="xs:boolean"/>
 +                    <xs:element minOccurs="0" name="payload" nillable="true" 
type="xs:string"/>
++                    <xs:element minOccurs="0" name="persistence" 
nillable="true" type="ax23:Persistence"/>
+                     <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax25:Properties"/>
 -                    <xs:element minOccurs="0" name="volumeRequired" 
type="xs:boolean"/>
 -                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="volumes" nillable="true" type="ax23:Volume"/>
++                    <xs:element minOccurs="0" name="tenantRange" 
nillable="true" type="xs:string"/>
+                 </xs:sequence>
+             </xs:complexType>
+             <xs:complexType name="Partition">
+                 <xs:sequence>
+                     <xs:element minOccurs="0" name="description" 
nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="id" nillable="true" 
type="xs:string"/>
+                     <xs:element minOccurs="0" name="isPublic" 
type="xs:boolean"/>
+                     <xs:element minOccurs="0" name="kubernetesClusterId" 
nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="partitionMax" 
type="xs:int"/>
+                     <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax25:Properties"/>
+                     <xs:element minOccurs="0" name="provider" nillable="true" 
type="xs:string"/>
+                 </xs:sequence>
+             </xs:complexType>
++            <xs:complexType name="ServiceGroup">
++                <xs:sequence>
++                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="cartridges" nillable="true" type="xs:string"/>
++                    <xs:element minOccurs="0" name="dependencies" 
nillable="true" type="ax23:Dependencies"/>
++                    <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
++                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="subGroups" nillable="true" type="xs:string"/>
++                </xs:sequence>
++            </xs:complexType>
++            <xs:complexType name="Dependencies">
++                <xs:sequence>
++                    <xs:element minOccurs="0" name="killBehaviour" 
nillable="true" type="xs:string"/>
++                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="startupOrders" nillable="true" type="xs:string"/>
++                </xs:sequence>
++            </xs:complexType>
++            <xs:complexType name="InstanceContext">
++                <xs:sequence>
++                    <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
++                    <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
++                    <xs:element minOccurs="0" name="clusterInstanceId" 
nillable="true" type="xs:string"/>
++                    <xs:element minOccurs="0" name="initTime" type="xs:long"/>
++                    <xs:element minOccurs="0" name="networkPartitionId" 
nillable="true" type="xs:string"/>
++                    <xs:element minOccurs="0" name="obsoleteExpiryTime" 
type="xs:long"/>
++                    <xs:element minOccurs="0" name="partition" 
nillable="true" type="ax23:Partition"/>
 +                    <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax25:Properties"/>
-                     <xs:element minOccurs="0" name="timeoutInMillis" 
type="xs:long"/>
 +                    <xs:element minOccurs="0" name="volumeRequired" 
type="xs:boolean"/>
 +                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="volumes" nillable="true" type="ax23:Volume"/>
 +                </xs:sequence>
 +            </xs:complexType>
-             <xs:complexType name="Registrant">
+             <xs:complexType name="MemberContext">
                  <xs:sequence>
-                     <xs:element minOccurs="0" name="autoScalerPolicyName" 
nillable="true" type="xs:string"/>
+                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="allocatedIPs" nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="applicationId" 
nillable="true" type="xs:string"/>
                      <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
                      <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="deploymentPolicyName" 
nillable="true" type="xs:string"/>
-                     <xs:element minOccurs="0" name="hostName" nillable="true" 
type="xs:string"/>
-                     <xs:element minOccurs="0" name="payload" nillable="true" 
type="xs:string"/>
-                     <xs:element minOccurs="0" name="persistence" 
nillable="true" type="ax23:Persistence"/>
+                     <xs:element minOccurs="0" name="clusterInstanceId" 
nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="defaultPrivateIP" 
nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="defaultPublicIP" 
nillable="true" type="xs:string"/>
 -                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="dynamicPayload" nillable="true" type="ax27:NameValuePair"/>
++                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="dynamicPayload" nillable="true" type="ax212:NameValuePair"/>
+                     <xs:element minOccurs="0" name="initTime" type="xs:long"/>
+                     <xs:element minOccurs="0" name="instanceId" 
nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="instanceMetadata" 
nillable="true" type="ax23:InstanceMetadata"/>
+                     <xs:element minOccurs="0" name="kubernetesPodId" 
nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="kubernetesPodLabel" 
nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="lbClusterId" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="loadBalancingIPType" 
nillable="true" type="ax27:LoadBalancingIPType"/>
++                    <xs:element minOccurs="0" name="loadBalancingIPType" 
nillable="true" type="ax212:LoadBalancingIPType"/>
+                     <xs:element minOccurs="0" name="memberId" nillable="true" 
type="xs:string"/>
+                     <xs:element minOccurs="0" name="networkPartitionId" 
nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="obsoleteExpiryTime" 
type="xs:long"/>
+                     <xs:element minOccurs="0" name="obsoleteInitTime" 
type="xs:long"/>
+                     <xs:element minOccurs="0" name="partition" 
nillable="true" type="ax23:Partition"/>
+                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="privateIPs" nillable="true" type="xs:string"/>
                      <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax25:Properties"/>
-                     <xs:element minOccurs="0" name="tenantRange" 
nillable="true" type="xs:string"/>
+                     <xs:element maxOccurs="unbounded" minOccurs="0" 
name="publicIPs" nillable="true" type="xs:string"/>
+                 </xs:sequence>
+             </xs:complexType>
+             <xs:complexType name="InstanceMetadata">
+                 <xs:sequence>
+                     <xs:element minOccurs="0" name="cpu" type="xs:int"/>
+                     <xs:element minOccurs="0" name="hostname" nillable="true" 
type="xs:string"/>
+                     <xs:element minOccurs="0" name="hypervisor" 
nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="imageId" nillable="true" 
type="xs:string"/>
+                     <xs:element minOccurs="0" name="loginPort" type="xs:int"/>
+                     <xs:element minOccurs="0" name="operatingSystem64bit" 
type="xs:boolean"/>
+                     <xs:element minOccurs="0" 
name="operatingSystemArchitecture" nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="operatingSystemName" 
nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="operatingSystemVersion" 
nillable="true" type="xs:string"/>
+                     <xs:element minOccurs="0" name="ram" type="xs:int"/>
                  </xs:sequence>
              </xs:complexType>
 -            <xs:complexType name="ServiceGroup">
 -                <xs:sequence>
 -                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="cartridges" nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="dependencies" 
nillable="true" type="ax23:Dependencies"/>
 -                    <xs:element minOccurs="0" name="name" nillable="true" 
type="xs:string"/>
 -                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="subGroups" nillable="true" type="xs:string"/>
 -                </xs:sequence>
 -            </xs:complexType>
 -            <xs:complexType name="Dependencies">
 -                <xs:sequence>
 -                    <xs:element minOccurs="0" name="killBehaviour" 
nillable="true" type="xs:string"/>
 -                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="startupOrders" nillable="true" type="xs:string"/>
 -                </xs:sequence>
 -            </xs:complexType>
 -            <xs:complexType name="Registrant">
 -                <xs:sequence>
 -                    <xs:element minOccurs="0" name="autoScalerPolicyName" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="deploymentPolicyName" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="hostName" nillable="true" 
type="xs:string"/>
 -                    <xs:element minOccurs="0" name="payload" nillable="true" 
type="xs:string"/>
 -                    <xs:element minOccurs="0" name="persistence" 
nillable="true" type="ax23:Persistence"/>
 -                    <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax25:Properties"/>
 -                    <xs:element minOccurs="0" name="tenantRange" 
nillable="true" type="xs:string"/>
 -                </xs:sequence>
 -            </xs:complexType>
 -            <xs:complexType name="ClusterContext">
 -                <xs:sequence>
 -                    <xs:element minOccurs="0" name="applicationId" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="hostName" nillable="true" 
type="xs:string"/>
 -                    <xs:element minOccurs="0" name="kubernetesClusterId" 
nillable="true" type="xs:string"/>
 -                    <xs:element minOccurs="0" name="kubernetesServices" 
nillable="true" type="xs:anyType"/>
 -                    <xs:element minOccurs="0" name="lbCluster" 
type="xs:boolean"/>
 -                    <xs:element minOccurs="0" name="payload" nillable="true" 
type="xs:string"/>
 -                    <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax25:Properties"/>
 -                    <xs:element minOccurs="0" name="timeoutInMillis" 
type="xs:long"/>
 -                    <xs:element minOccurs="0" name="volumeRequired" 
type="xs:boolean"/>
 -                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="volumes" nillable="true" type="ax23:Volume"/>
 -                </xs:sequence>
 -            </xs:complexType>
              <xs:complexType name="ApplicationClusterContext">
                  <xs:sequence>
                      <xs:element minOccurs="0" name="autoscalePolicyName" 
nillable="true" type="xs:string"/>
@@@ -1183,6 -1181,6 +1168,22 @@@
                      <xs:element minOccurs="0" name="uuid" nillable="true" 
type="xs:string"/>
                  </xs:sequence>
              </xs:complexType>
++            <xs:complexType name="ClusterContext">
++                <xs:sequence>
++                    <xs:element minOccurs="0" name="applicationId" 
nillable="true" type="xs:string"/>
++                    <xs:element minOccurs="0" name="cartridgeType" 
nillable="true" type="xs:string"/>
++                    <xs:element minOccurs="0" name="clusterId" 
nillable="true" type="xs:string"/>
++                    <xs:element minOccurs="0" name="hostName" nillable="true" 
type="xs:string"/>
++                    <xs:element minOccurs="0" name="kubernetesClusterId" 
nillable="true" type="xs:string"/>
++                    <xs:element minOccurs="0" name="kubernetesServices" 
nillable="true" type="xs:anyType"/>
++                    <xs:element minOccurs="0" name="lbCluster" 
type="xs:boolean"/>
++                    <xs:element minOccurs="0" name="payload" nillable="true" 
type="xs:string"/>
++                    <xs:element minOccurs="0" name="properties" 
nillable="true" type="ax25:Properties"/>
++                    <xs:element minOccurs="0" name="timeoutInMillis" 
type="xs:long"/>
++                    <xs:element minOccurs="0" name="volumeRequired" 
type="xs:boolean"/>
++                    <xs:element maxOccurs="unbounded" minOccurs="0" 
name="volumes" nillable="true" type="ax23:Volume"/>
++                </xs:sequence>
++            </xs:complexType>
          </xs:schema>
      </wsdl:types>
      <wsdl:message name="getCartridgesRequest">
@@@ -1257,21 -1255,21 +1258,21 @@@
      <wsdl:message 
name="CloudControllerServiceInvalidKubernetesClusterException">
          <wsdl:part name="parameters" 
element="ns:CloudControllerServiceInvalidKubernetesClusterException"/>
      </wsdl:message>
-     <wsdl:message 
name="CloudControllerServiceKubernetesClusterAlreadyExistsException">
-         <wsdl:part name="parameters" 
element="ns:CloudControllerServiceKubernetesClusterAlreadyExistsException"/>
-     </wsdl:message>
-     <wsdl:message name="registerServiceRequest">
-         <wsdl:part name="parameters" element="ns:registerService"/>
-     </wsdl:message>
-     <wsdl:message name="registerServiceResponse">
-         <wsdl:part name="parameters" element="ns:registerServiceResponse"/>
+     <wsdl:message 
name="CloudControllerServiceKubernetesClusterAlreadyExistsException">
+         <wsdl:part name="parameters" 
element="ns:CloudControllerServiceKubernetesClusterAlreadyExistsException"/>
      </wsdl:message>
 -    <wsdl:message name="registerServiceRequest">
 -        <wsdl:part name="parameters" element="ns:registerService"/>
 -    </wsdl:message>
 -    <wsdl:message name="registerServiceResponse">
 -        <wsdl:part name="parameters" element="ns:registerServiceResponse"/>
 -    </wsdl:message>
      <wsdl:message name="addServiceGroupRequest">
          <wsdl:part name="parameters" element="ns:addServiceGroup"/>
      </wsdl:message>
      <wsdl:message name="addServiceGroupResponse">
          <wsdl:part name="parameters" element="ns:addServiceGroupResponse"/>
      </wsdl:message>
++    <wsdl:message name="registerServiceRequest">
++        <wsdl:part name="parameters" element="ns:registerService"/>
++    </wsdl:message>
++    <wsdl:message name="registerServiceResponse">
++        <wsdl:part name="parameters" element="ns:registerServiceResponse"/>
++    </wsdl:message>
      <wsdl:message name="terminateInstanceRequest">
          <wsdl:part name="parameters" element="ns:terminateInstance"/>
      </wsdl:message>
@@@ -1545,16 -1543,16 +1546,16 @@@
              <wsdl:fault 
message="ns:CloudControllerServiceInvalidKubernetesClusterException" 
name="CloudControllerServiceInvalidKubernetesClusterException" 
wsaw:Action="urn:addKubernetesClusterCloudControllerServiceInvalidKubernetesClusterException"/>
              <wsdl:fault 
message="ns:CloudControllerServiceKubernetesClusterAlreadyExistsException" 
name="CloudControllerServiceKubernetesClusterAlreadyExistsException" 
wsaw:Action="urn:addKubernetesClusterCloudControllerServiceKubernetesClusterAlreadyExistsException"/>
          </wsdl:operation>
--        <wsdl:operation name="registerService">
--            <wsdl:input message="ns:registerServiceRequest" 
wsaw:Action="urn:registerService"/>
--            <wsdl:output message="ns:registerServiceResponse" 
wsaw:Action="urn:registerServiceResponse"/>
--            <wsdl:fault 
message="ns:CloudControllerServiceCartridgeNotFoundException" 
name="CloudControllerServiceCartridgeNotFoundException" 
wsaw:Action="urn:registerServiceCloudControllerServiceCartridgeNotFoundException"/>
--        </wsdl:operation>
          <wsdl:operation name="addServiceGroup">
              <wsdl:input message="ns:addServiceGroupRequest" 
wsaw:Action="urn:addServiceGroup"/>
              <wsdl:output message="ns:addServiceGroupResponse" 
wsaw:Action="urn:addServiceGroupResponse"/>
              <wsdl:fault 
message="ns:CloudControllerServiceInvalidServiceGroupException" 
name="CloudControllerServiceInvalidServiceGroupException" 
wsaw:Action="urn:addServiceGroupCloudControllerServiceInvalidServiceGroupException"/>
          </wsdl:operation>
++        <wsdl:operation name="registerService">
++            <wsdl:input message="ns:registerServiceRequest" 
wsaw:Action="urn:registerService"/>
++            <wsdl:output message="ns:registerServiceResponse" 
wsaw:Action="urn:registerServiceResponse"/>
++            <wsdl:fault 
message="ns:CloudControllerServiceCartridgeNotFoundException" 
name="CloudControllerServiceCartridgeNotFoundException" 
wsaw:Action="urn:registerServiceCloudControllerServiceCartridgeNotFoundException"/>
++        </wsdl:operation>
          <wsdl:operation name="terminateInstance">
              <wsdl:input message="ns:terminateInstanceRequest" 
wsaw:Action="urn:terminateInstance"/>
              <wsdl:output message="ns:terminateInstanceResponse" 
wsaw:Action="urn:terminateInstanceResponse"/>
@@@ -1819,28 -1817,28 +1820,28 @@@
                  <soap:fault use="literal" 
name="CloudControllerServiceKubernetesClusterAlreadyExistsException"/>
              </wsdl:fault>
          </wsdl:operation>
--        <wsdl:operation name="addServiceGroup">
--            <soap:operation soapAction="urn:addServiceGroup" 
style="document"/>
++        <wsdl:operation name="registerService">
++            <soap:operation soapAction="urn:registerServ

<TRUNCATED>

Reply via email to