Service Replacement
<?xml version="1.0" encoding="ASCII"?> <camel:CamelModel
xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:adaptation="http://www.cloudsocket.eu/2016/05/camel/adaptation"
xmlns:camel="http://www.cloudsocket.eu/2016/05/camel"
xmlns:deployment="http://www.cloudsocket.eu/2016/05/camel/deployment"
xmlns:metric="http://www.cloudsocket.eu/2016/05/camel/metric"
xmlns:provider="http://www.cloudsocket.eu/2016/05/camel/provider"
xmlns:requirement="http://www.cloudsocket.eu/2016/05/camel/requirement"
xmlns:type="http://www.cloudsocket.eu/2016/05/camel/type"
xmlns:unit="http://www.cloudsocket.eu/2016/05/camel/unit"
xsi:schemaLocation="http://www.cloudsocket.eu/2016/05/camel/adaptation camel.ecore#//adaptation http://www.cloudsocket.eu/2016/05/camel camel.ecore http://www.cloudsocket.eu/2016/05/camel/deployment camel.ecore#//deployment http://www.cloudsocket.eu/2016/05/camel/metric camel.ecore#//metric http://www.cloudsocket.eu/2016/05/camel/provider camel.ecore#//provider http://www.cloudsocket.eu/2016/05/camel/requirement camel.ecore#//requirement http://www.cloudsocket.eu/2016/05/camel/type camel.ecore#//type http://www.cloudsocket.eu/2016/05/camel/unit camel.ecore#//unit"
name="ChristmasCardSendingModel">
<applications
name="ChristmasCardSending"
version="1.0"
owner="//@organisationModels.0/@organisation"/>
<deploymentModels
name="ChristmasCardSendingDeployment"
globalVMRequirementSet="//@deploymentModels.0/@vmRequirementSets.1">
<internalComponents
xsi:type="deployment:InternalServiceComponent"
name="CardDesigner"
type="SERVLET"
serviceType="REST">
<configurations
xsi:type="deployment:ScriptConfiguration"
name="CardDesignerConfiguration"
downloadCommand="'sudo apt-get install -y curl'"
installCommand="'curl -o demoapp_install_ubuntu.sh https://omi-gitlab.e-technik.uni-ulm.de/cloudsocket/prototype_v1_files/raw/master/demoapp_install_ubuntu.sh && chmod +x demoapp_install_ubuntu.sh && ./demoapp_install_ubuntu.sh'"
startCommand="'/apache-tomcat-7.0.65/bin/catalina.sh run'"
os="Ubuntu"/>
<requiredHost
name="CardDesignerRequiredHost"/>
<workflowTaskIDs>sid-1C5E88D8-C7E3-4FAC-85E5-FAD80099C28B</workflowTaskIDs>
<workflowTaskIDs>sid-D891CCD3-40B6-4555-9C84-81BECCDCB1C2</workflowTaskIDs>
<workflowTaskIDs>sid-B99151C2-9914-4E71-9540-9DFE38334B7B</workflowTaskIDs>
</internalComponents>
<internalComponents
xsi:type="deployment:InternalServiceComponent"
name="EmailService"
type="SERVLET">
<requiredHost
name="EmailServiceRequiredHost"/>
<workflowTaskIDs>sid-A952A4DD-CED9-440F-82FC-A6DE0568780A</workflowTaskIDs>
</internalComponents>
<internalComponentInstances
xsi:type="deployment:InternalServiceComponentInstance"
name="CardDesignerInstance"
type="//@deploymentModels.0/@internalComponents.0"
endpoint="http://localhost:8080/demo-app-1.0/services/cardDesigner">
<requiredHostInstance
name="CardDesignerInstanceRequiredHost"
type="//@deploymentModels.0/@internalComponents.0/@requiredHost"/>
</internalComponentInstances>
<internalComponentInstances
xsi:type="deployment:InternalServiceComponentInstance"
name="EmailServiceInstance"
type="//@deploymentModels.0/@internalComponents.1"
endpoint="http://localhost:8080/service/wsdl/ZimbraService.wsdl">
<requiredHostInstance
name="EmailInstanceRequiredHost"
type="//@deploymentModels.0/@internalComponents.1/@requiredHost"/>
</internalComponentInstances>
<vms name="CardDesignerVM"
vmRequirementSet="//@deploymentModels.0/@vmRequirementSets.0">
<providedHosts
name="CardDesignerVMProvidedHost"/>
</vms>
<vms name="EmailServiceVM">
<providedHosts
name="EmailServiceProvidedHost"/>
</vms>
<vmInstances
name="CardDesignerVMInstance"
type="//@deploymentModels.0/@vms.0"
vmType="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
vmTypeValue="//@providerModels.0/@constraints.12/@attributeConstraints.0/@fromValue">
<providedHostInstances
name="CardDesignerVMInstanceProvidedHost"
type="//@deploymentModels.0/@vms.0/@providedHosts.0"/>
</vmInstances>
<vmInstances
name="EmailServicePrivateVMInstance"
type="//@deploymentModels.0/@vms.1"
vmType="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
vmTypeValue="//@typeModels.0/@dataTypes.10/@values.1">
<providedHostInstances
name="EmailServicePrivateVMInstanceProvidedHost"
type="//@deploymentModels.0/@vms.1/@providedHosts.0"/>
</vmInstances>
<hostings
name="CardDesignerToVM"
providedHost="//@deploymentModels.0/@vms.0/@providedHosts.0"
requiredHost="//@deploymentModels.0/@internalComponents.0/@requiredHost"/>
<hostings
name="EmailServiceToVM"
providedHost="//@deploymentModels.0/@vms.1/@providedHosts.0"
requiredHost="//@deploymentModels.0/@internalComponents.1/@requiredHost"/>
<hostingInstances
name="CardDesignerInstanceToVMInstance"
type="//@deploymentModels.0/@hostings.0"
providedHostInstance="//@deploymentModels.0/@vmInstances.0/@providedHostInstances.0"
requiredHostInstance="//@deploymentModels.0/@internalComponentInstances.0/@requiredHostInstance"/>
<hostingInstances
name="EmailServiceInstanceToVMInstance"
type="//@deploymentModels.0/@hostings.1"
providedHostInstance="//@deploymentModels.0/@vmInstances.1/@providedHostInstances.0"
requiredHostInstance="//@deploymentModels.0/@internalComponentInstances.1/@requiredHostInstance"/>
<vmRequirementSets
name="CardDesignerVMRequirementSet"
quantitativeHardwareRequirement="//@requirementModels.0/@requirements.3"/>
<vmRequirementSets
name="GlobalVMRequirementSet"
locationRequirement="//@requirementModels.0/@requirements.4"
osOrImageRequirement="//@requirementModels.0/@requirements.2"/>
<vmRequirementSets
name="EmailServiceVMRequirementSet"
quantitativeHardwareRequirement="//@requirementModels.0/@requirements.5"/>
</deploymentModels>
<locationModels
name="ChristmasCardSendingLocation">
<regions
id="EU"
name="Europe"/>
</locationModels>
<metricModels
name="ChristmasCardSendingMetric">
<contexts
xsi:type="metric:RawMetricContext"
name="RawResponseTimeContext"
component="//@deploymentModels.0/@internalComponents.1"
application="//@applications.0"
metric="//@metricModels.0/@metrics.0"
sensor="//@metricModels.0/@sensors.0"/>
<metrics
xsi:type="metric:RawMetric"
name="RawResponseTime"
unit="//@unitModels.0/@units.0"
property="//@metricModels.0/@properties.0"/>
<conditions
xsi:type="metric:MetricCondition"
name="RTLeqSixty"
comparisonOperator="LESS_EQUAL_THAN"
threshold="60.0"
metricContext="//@metricModels.0/@contexts.0"/>
<properties
name="ResponseTime"
type="MEASURABLE"/>
<sensors
name="ResponseTimeSensor"/>
</metricModels>
<organisationModels
name="BrokerOrganisation">
<organisation
name="Broker"
email="info@broker.com"/>
</organisationModels>
<providerModels
name="OmistackProvider">
<constraints
xsi:type="provider:Implies"
name="M1.SMALL_Constraint_Mapping"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0">
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.2">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.small"/>
<toValue
xsi:type="type:IntegerValue"
value="2048"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.3">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.small"/>
<toValue
xsi:type="type:IntegerValue"
value="1"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.5">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.small"/>
<toValue
xsi:type="type:IntegerValue"
value="20"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.8">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.small"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne/2"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="M1.LARGE_Constraint_Mapping"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0">
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.2">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.large"
value="1"/>
<toValue
xsi:type="type:IntegerValue"
value="8192"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.3">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.large"
value="1"/>
<toValue
xsi:type="type:IntegerValue"
value="4"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.5">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.large"
value="1"/>
<toValue
xsi:type="type:IntegerValue"
value="80"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.8">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.large"
value="1"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne/4"
value="1"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="RegionOne/9c154d9a-fab9-4507-a3d7-21b72d31de97_Constraint_Mapping_OS_CREDENTIALS"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0">
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.9"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.1">
<fromValue
xsi:type="type:EnumerateValue"
name="RegionOne/9c154d9a-fab9-4507-a3d7-21b72d31de97"
value="1"/>
<toValue
xsi:type="type:EnumerateValue"
name="Ubuntu Server 14.04.2 AMD64 LTS"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.9"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.6">
<fromValue
xsi:type="type:EnumerateValue"
name="RegionOne/9c154d9a-fab9-4507-a3d7-21b72d31de97"
value="1"/>
<toValue
xsi:type="type:EnumerateValue"
name="UNIX"
value="1"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.9"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.7">
<fromValue
xsi:type="type:EnumerateValue"
name="RegionOne/9c154d9a-fab9-4507-a3d7-21b72d31de97"
value="1"/>
<toValue
xsi:type="type:EnumerateValue"
name="AMD64"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.9"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.10">
<fromValue
xsi:type="type:EnumerateValue"
name="RegionOne/9c154d9a-fab9-4507-a3d7-21b72d31de97"
value="1"/>
<toValue
xsi:type="type:StringsValue"
value="ubuntu"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="RegionOne/9c154d9a-fab9-4507-a3d7-21b72d31de97_Constraint_Mapping_LOCATION"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1">
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.9"
to="//@providerModels.0/@rootFeature/@subFeatures.1/@attributes.0">
<fromValue
xsi:type="type:EnumerateValue"
name="RegionOne/9c154d9a-fab9-4507-a3d7-21b72d31de97"
value="1"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="RegionOne/11a845d0-7ed3-48c8-a36a-9a76a2fe4938_Constraint_Mapping_OS_CREDENTIALS"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0">
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.9"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.1">
<fromValue
xsi:type="type:EnumerateValue"
name="RegionOne/11a845d0-7ed3-48c8-a36a-9a76a2fe4938"/>
<toValue
xsi:type="type:EnumerateValue"
name="Windows2012R2_PW_No_Firewall_0.2"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.9"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.6">
<fromValue
xsi:type="type:EnumerateValue"
name="RegionOne/11a845d0-7ed3-48c8-a36a-9a76a2fe4938"/>
<toValue
xsi:type="type:EnumerateValue"
name="WINDOWS"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.9"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.7">
<fromValue
xsi:type="type:EnumerateValue"
name="RegionOne/11a845d0-7ed3-48c8-a36a-9a76a2fe4938"/>
<toValue
xsi:type="type:EnumerateValue"
name="AMD64"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.9"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.10">
<fromValue
xsi:type="type:EnumerateValue"
name="RegionOne/11a845d0-7ed3-48c8-a36a-9a76a2fe4938"/>
<toValue
xsi:type="type:StringsValue"
value="Administrator"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.9"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.11">
<fromValue
xsi:type="type:EnumerateValue"
name="RegionOne/11a845d0-7ed3-48c8-a36a-9a76a2fe4938"/>
<toValue
xsi:type="type:StringsValue"
value="Admin1"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="RegionOne/11a845d0-7ed3-48c8-a36a-9a76a2fe4938_Constraint_Mapping_LOCATION"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1">
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.9"
to="//@providerModels.0/@rootFeature/@subFeatures.1/@attributes.0">
<fromValue
xsi:type="type:EnumerateValue"
name="RegionOne/11a845d0-7ed3-48c8-a36a-9a76a2fe4938"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="M1.TINY_Constraint_Mapping"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0">
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.2">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.tiny"
value="2"/>
<toValue
xsi:type="type:IntegerValue"
value="512"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.3">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.tiny"
value="2"/>
<toValue
xsi:type="type:IntegerValue"
value="1"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.5">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.tiny"
value="2"/>
<toValue
xsi:type="type:IntegerValue"
value="1"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.8">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.tiny"
value="2"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne/1"
value="2"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="M1.MEDIUM_Constraint_Mapping"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0">
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.2">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.medium"
value="3"/>
<toValue
xsi:type="type:IntegerValue"
value="4096"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.3">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.medium"
value="3"/>
<toValue
xsi:type="type:IntegerValue"
value="2"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.5">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.medium"
value="3"/>
<toValue
xsi:type="type:IntegerValue"
value="40"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.8">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.medium"
value="3"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne/3"
value="3"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="M1.XLARGE_Constraint_Mapping"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0">
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.2">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.xlarge"
value="4"/>
<toValue
xsi:type="type:IntegerValue"
value="16384"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.3">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.xlarge"
value="4"/>
<toValue
xsi:type="type:IntegerValue"
value="8"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.5">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.xlarge"
value="4"/>
<toValue
xsi:type="type:IntegerValue"
value="160"/>
</attributeConstraints>
<attributeConstraints
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.8">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.xlarge"
value="4"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne/5"
value="4"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="M1.SMALL_Constraint_Mapping_LOCATION"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1">
<attributeConstraints
name=""
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1/@attributes.0">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.small"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="M1.LARGE_Constraint_Mapping_LOCATION"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1">
<attributeConstraints
name=""
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1/@attributes.0">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.large"
value="1"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="M1.TINY_Constraint_Mapping_LOCATION"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1">
<attributeConstraints
name=""
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1/@attributes.0">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.tiny"
value="2"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="M1.MEDIUM_Constraint_Mapping_LOCATION"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1">
<attributeConstraints
name=""
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1/@attributes.0">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.medium"
value="3"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne"/>
</attributeConstraints>
</constraints>
<constraints
xsi:type="provider:Implies"
name="M1.XLARGE_Constraint_Mapping_LOCATION"
from="//@providerModels.0/@rootFeature/@subFeatures.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1">
<attributeConstraints
name=""
from="//@providerModels.0/@rootFeature/@subFeatures.0/@attributes.0"
to="//@providerModels.0/@rootFeature/@subFeatures.1/@attributes.0">
<fromValue
xsi:type="type:EnumerateValue"
name="m1.xlarge"
value="4"/>
<toValue
xsi:type="type:EnumerateValue"
name="RegionOne"/>
</attributeConstraints>
</constraints>
<rootFeature
name="Omistack">
<attributes
name="DeploymentModel"
valueType="//@typeModels.0/@dataTypes.4">
<value
xsi:type="type:StringsValue"
value="Private"/>
</attributes>
<attributes
name="ServiceModel"
valueType="//@typeModels.0/@dataTypes.4">
<value
xsi:type="type:StringsValue"
value="IaaS"/>
</attributes>
<attributes
name="Availability"
valueType="//@typeModels.0/@dataTypes.4"
unitType="PERCENTAGE">
<value
xsi:type="type:StringsValue"
value="95"/>
</attributes>
<attributes
name="Driver"
valueType="//@typeModels.0/@dataTypes.4">
<value
xsi:type="type:StringsValue"
value="openstack-nova"/>
</attributes>
<attributes
name="EndPoint"
valueType="//@typeModels.0/@dataTypes.4">
<value
xsi:type="type:StringsValue"
value="http://omistack-beta.e-technik.uni-ulm.de:5000/v2.0"/>
</attributes>
<attributes
name="Name"
valueType="//@typeModels.0/@dataTypes.4">
<value
xsi:type="type:StringsValue"
value="omistack"/>
</attributes>
<subFeatures
name="VM">
<attributes
name="VMType"
valueType="//@typeModels.0/@dataTypes.10"/>
<attributes
name="VMOS"
valueType="//@typeModels.0/@dataTypes.1"/>
<attributes
name="VMMemory"
valueType="//@typeModels.0/@dataTypes.6"
unitType="MEGABYTES"/>
<attributes
name="VMCores"
valueType="//@typeModels.0/@dataTypes.11"/>
<attributes
name="CostPerHour"
valueType="//@typeModels.0/@dataTypes.3"/>
<attributes
name="VMStorage"
valueType="//@typeModels.0/@dataTypes.5"
unitType="GIGABYTES"/>
<attributes
name="OSVendorType"
valueType="//@typeModels.0/@dataTypes.7"/>
<attributes
name="OSArchitecture"
valueType="//@typeModels.0/@dataTypes.8"/>
<attributes
name="VMTypeCloudProviderId"
valueType="//@typeModels.0/@dataTypes.0"/>
<attributes
name="VMImageId"
valueType="//@typeModels.0/@dataTypes.2"/>
<attributes
name="DefaultLoginName"
valueType="//@typeModels.0/@dataTypes.12"/>
<attributes
name="DefaultLoginPassword"
valueType="//@typeModels.0/@dataTypes.13"/>
<featureCardinality
cardinalityMin="1"
cardinalityMax="8"/>
</subFeatures>
<subFeatures
name="Location">
<attributes
name="LocationId"
valueType="//@typeModels.0/@dataTypes.9"/>
<attributes
name="Longitude">
<value
xsi:type="type:FloatsValue"
value="9.96291"/>
</attributes>
<attributes
name="Latitude">
<value
xsi:type="type:FloatsValue"
value="48.42599"/>
</attributes>
<subFeatures
name="EU">
<subFeatures
name="Germany">
<subFeatures
name="Ulm">
<featureCardinality
cardinalityMin="1"
cardinalityMax="1"/>
</subFeatures>
<featureCardinality
cardinalityMin="1"
cardinalityMax="1"/>
</subFeatures>
<featureCardinality
cardinalityMin="1"
cardinalityMax="1"/>
</subFeatures>
<featureCardinality
cardinalityMin="1"
cardinalityMax="1"
value="1"/>
</subFeatures>
<featureCardinality
cardinalityMin="1"
cardinalityMax="1"/>
</rootFeature>
</providerModels>
<requirementModels
name="ChristmasCardSendingRequirement">
<requirements
xsi:type="requirement:InternalComponentRequirement"
name="TomcatBetweenSevenAndEight"
minVersion="7.0"
minVersionIncluded="true"
maxVersion="8.0"
maxVersionIncluded="true"/>
<requirements
xsi:type="requirement:PaaSRequirement"
name="CardDesignerPaaSRequirement">
<pricingTypes>METERED</pricingTypes>
<statusTypes>PRODUCTION</statusTypes>
<runtimeTypes>JAVA</runtimeTypes>
</requirements>
<requirements
xsi:type="requirement:OSRequirement"
name="UbuntuRequirement"
os="ubuntu"/>
<requirements
xsi:type="requirement:QuantitativeHardwareRequirement"
name="CardDesignerHWRequirement"
minCPU="1.0"
minCores="2"
minRAM="4096"
minStorage="20"/>
<requirements
xsi:type="requirement:LocationRequirement"
name="EuropeLocationRequirement"
locations="//@locationModels.0/@regions.0"/>
<requirements
xsi:type="requirement:QuantitativeHardwareRequirement"
name="EmailServiceHWRequirement"
minCPU="1.0"
minCores="4"
minRAM="8192"
minStorage="40"/>
<requirements
xsi:type="requirement:ServiceLevelObjective"
name="RTLeqSixtySLO"
customServiceLevel="//@metricModels.0/@conditions.0"/>
</requirementModels>
<adaptationModels
name="ChristmasCardSendingAdaptation">
<rules name="Replace"
event="//@adaptationModels.0/@events.0"
task="//@adaptationModels.0/@tasks.0"
entity="//@organisationModels.0/@organisation"/>
<events
xsi:type="adaptation:NonFunctionalEvent"
name="ViolRTCondition"
metricCondition="//@metricModels.0/@conditions.0"
isViolation="true"/>
<tasks xsi:type="adaptation:ServiceReplacement"
name="ReplaceEmailService"
previousService="//@deploymentModels.0/@internalComponents.1"/>
</adaptationModels>
<typeModels
name="OmistackType">
<dataTypes
xsi:type="type:Enumeration"
name="VMTypeCloudProviderIdEnum">
<values
name="RegionOne/2"/>
<values
name="RegionOne/4"
value="1"/>
<values
name="RegionOne/1"
value="2"/>
<values
name="RegionOne/3"
value="3"/>
<values
name="RegionOne/5"
value="4"/>
</dataTypes>
<dataTypes
xsi:type="type:Enumeration"
name="VMOsEnum">
<values
name="Ubuntu Server 14.04.2 AMD64 LTS"/>
<values
name="Windows2012R2_PW_No_Firewall_0.2"
value="1"/>
</dataTypes>
<dataTypes
xsi:type="type:Enumeration"
name="VMImageIdEnum">
<values
name="RegionOne/11a845d0-7ed3-48c8-a36a-9a76a2fe4938"/>
<values
name="RegionOne/9c154d9a-fab9-4507-a3d7-21b72d31de97"
value="1"/>
</dataTypes>
<dataTypes
xsi:type="type:Range"
name="CostRange"
primitiveType="DoubleType">
<lowerLimit
included="true">
<value
xsi:type="type:DoublePrecisionValue"
value="0.054"/>
</lowerLimit>
<upperLimit
included="true">
<value
xsi:type="type:DoublePrecisionValue"
value="0.095"/>
</upperLimit>
</dataTypes>
<dataTypes
xsi:type="type:StringValueType"
name="StringValueType"
primitiveType="StringType"/>
<dataTypes
xsi:type="type:List"
name="StorageList">
<values
xsi:type="type:IntegerValue"
value="20"/>
<values
xsi:type="type:IntegerValue"
value="80"/>
<values
xsi:type="type:IntegerValue"
value="1"/>
<values
xsi:type="type:IntegerValue"
value="40"/>
<values
xsi:type="type:IntegerValue"
value="160"/>
</dataTypes>
<dataTypes
xsi:type="type:List"
name="MemoryList">
<values
xsi:type="type:IntegerValue"
value="2048"/>
<values
xsi:type="type:IntegerValue"
value="8192"/>
<values
xsi:type="type:IntegerValue"
value="512"/>
<values
xsi:type="type:IntegerValue"
value="4096"/>
<values
xsi:type="type:IntegerValue"
value="16384"/>
</dataTypes>
<dataTypes
xsi:type="type:Enumeration"
name="OSVendorType">
<values
name="WINDOWS"/>
<values
name="UNIX"
value="1"/>
</dataTypes>
<dataTypes
xsi:type="type:Enumeration"
name="OSArchitectureType">
<values
name="AMD64"/>
</dataTypes>
<dataTypes
xsi:type="type:Enumeration"
name="LocationIdType">
<values
name="RegionOne"/>
</dataTypes>
<dataTypes
xsi:type="type:Enumeration"
name="VMTypeEnumeration">
<values
name="m1.small"/>
<values
name="m1.large"
value="1"/>
<values
name="m1.tiny"
value="2"/>
<values
name="m1.medium"
value="3"/>
<values
name="m1.xlarge"
value="4"/>
</dataTypes>
<dataTypes
xsi:type="type:List"
name="CoresList">
<values
xsi:type="type:IntegerValue"
value="1"/>
<values
xsi:type="type:IntegerValue"
value="2"/>
<values
xsi:type="type:IntegerValue"
value="4"/>
<values
xsi:type="type:IntegerValue"
value="8"/>
</dataTypes>
<dataTypes
xsi:type="type:List"
name="LoginNameList"
primitiveType="StringType">
<values
xsi:type="type:StringsValue"
value="Administrator"/>
<values
xsi:type="type:StringsValue"
value="ubuntu"/>
</dataTypes>
<dataTypes
xsi:type="type:List"
name="LoginPasswordList"
primitiveType="StringType">
<values
xsi:type="type:StringsValue"
value="Admin1"/>
</dataTypes>
</typeModels>
<unitModels
name="ChristmasCardSendingUnit">
<units xsi:type="unit:TimeIntervalUnit"
name="Seconds"
unit="SECONDS"/>
<units xsi:type="unit:TransactionUnit"
name="CapacityUnit"
unit="TRANSACTIONS"/>
</unitModels>
</camel:CamelModel>