SLA and Service Directory code added
[unfold.git] / sla / slaclient / templates / fed4fire / django / agreement.xml
diff --git a/sla/slaclient/templates/fed4fire/django/agreement.xml b/sla/slaclient/templates/fed4fire/django/agreement.xml
new file mode 100755 (executable)
index 0000000..096a7e3
--- /dev/null
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>\r
+<wsag:Agreement xmlns:wsag="http://www.ggf.org/namespaces/ws-agreement"\r
+    {% if data.agreement_id %}AgreementId="{{data.agreement_id}}"{% endif %}>\r
+    {% if data.agreement_name %}<wsag:Name>{{data.agreement_name}}</wsag:Name>{% endif %}\r
+\r
+    <wsag:Context>\r
+        <wsag:AgreementInitiator>{{data.consumer}}</wsag:AgreementInitiator>\r
+        <wsag:AgreementResponder>{{data.provider}}</wsag:AgreementResponder>\r
+        <wsag:ServiceProvider>AgreementResponder</wsag:ServiceProvider>\r
+        <wsag:ExpirationTime>{{data.expiration_time_iso}}</wsag:ExpirationTime>\r
+        <wsag:TemplateId>{{data.template_id}}</wsag:TemplateId>\r
+        {% if data.service_id %}<sla:Service xmlns:sla="http://sla.atos.eu">{{data.service_id}}</sla:Service>{% endif %}\r
+    </wsag:Context>\r
+\r
+    <wsag:Terms>\r
+        <wsag:All>\r
+            <wsag:ServiceProperties\r
+                    wsag:Name="ServiceProperties"\r
+                    wsag:ServiceName="{{data.service_id|default:"service"}}">\r
+                <wsag:Variables>\r
+                {% for property in data.service_properties %}   <wsag:Variable\r
+                            wsag:Name="{{property.name}}"\r
+                            wsag:Metric="{{property.metric|default:'xs:double'}}">\r
+                        <wsag:Location>{{property.location|default:property.name}}</wsag:Location>\r
+                    </wsag:Variable>\r
+                {% endfor %}</wsag:Variables>\r
+            </wsag:ServiceProperties>\r
+            {% for term in data.guarantee_terms %}\r
+            <wsag:GuaranteeTerm Name="{{term.name}}">\r
+                {# do not need servicescope #}\r
+                   {% for scope in term.scopes %}\r
+                <wsag:ServiceScope ServiceName="{{scope.servicename}}"/>\r
+                {% endfor %}\r
+                <wsag:ServiceLevelObjective>\r
+                    <wsag:KPITarget>\r
+                        <wsag:KPIName>{{term.servicelevelobjective.kpiname}}</wsag:KPIName>\r
+                        <wsag:CustomServiceLevel>\r
+                        {% autoescape off %}\r
+                               {{term.servicelevelobjective.customservicelevel}}\r
+                        {% endautoescape %}\r
+                        </wsag:CustomServiceLevel>\r
+                    </wsag:KPITarget>\r
+                </wsag:ServiceLevelObjective>\r
+            </wsag:GuaranteeTerm>{% endfor %}\r
+        </wsag:All>\r
+    </wsag:Terms>\r
+</wsag:Agreement>
\ No newline at end of file