TAPI and MSA create and delete
[sdnc/oam.git] / platform-logic / optical-service / src / main / xml / optical-service_optical-service-delete.xml
index 4b42278..ce1937f 100644 (file)
                 <parameter name='contextPrefix' value='prop' />\r
             </execute>\r
             <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
-key='SELECT controller_id\r
+key='SELECT *\r
 from REQUEST_DETAILS\r
 WHERE request_id = $optical-service-delete-input.request-id'\r
-pfx='controllerid'>\r
+pfx='detail-db'>\r
                 <outcome value='success'>\r
                     <set>\r
-                        <parameter name='controller-id' value='`$controllerid.controller-id`' />\r
+                        <parameter name='domain-req' value='`$detail-db.domain-requests`' />\r
                     </set>\r
                 </outcome>\r
             </get-resource>\r
             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
-                <parameter name="original_string" value='`$controller-id`'/>\r
-                <parameter name="regex" value="_"/>\r
-                <parameter name="ctx_memory_result_key" value="param-prefix"/>\r
+                <parameter name="original_string" value='`$domain-req`'/>\r
+                <parameter name="regex" value=","/>\r
+                <parameter name="ctx_memory_result_key" value="param-prefix1"/>\r
             </execute>\r
             <set>\r
-                <parameter name='controller-ip' value='`$param-prefix[1]`' />\r
-                <parameter name='domain-type' value='`$param-prefix[0]`' />\r
-                <parameter name='notification-url' value="`$prop.controller.url + '/' + $prop.sdnc.async.url`" />\r
+                <parameter name='notification-url' value="http://167.254.204.152:31817/asyncNotification" />\r
+                <parameter name='domain-service1' value='`$param-prefix1[0]`' />\r
+                <parameter name='domain-service2' value='`$param-prefix1[1]`' />\r
             </set>\r
-            <switch test='`$domain-type`'>\r
-                <outcome value='MSA'>\r
-                    <block>\r
-                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
-                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/optical-service-delete-msa.json'`" />\r
-                            <parameter name="restapiUrl" value="`$controller-ip + '/cxf/openroadm/openroadm-services/' + $optical-service-delete-input.payload.service-name`"/>\r
-                            <parameter name='restapiUser' value='admin' />\r
-                            <parameter name='restapiPassword' value='admin' />\r
-                            <parameter name="httpMethod" value="DELETE"/>\r
-                            <parameter name="responsePrefix" value="service-delete-response"/>\r
-                            <parameter name='contentType' value='application/json' />\r
-                            <parameter name='format' value='json' />\r
-                            <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.msa.jks"/>\r
-                            <parameter name="trustStorePassword" value="adminadmin"/>\r
-                            <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>\r
-                            <parameter name="keyStorePassword" value="adminadmin"/>\r
-                            <outcome value='failure'>\r
-                                <block atomic='true'>\r
-                                    <return status='failure'>\r
-                                        <parameter name='error-code' value='500' />\r
-                                        <parameter name='error-message' value='Error deleting the Service' />\r
-                                    </return>\r
-                                </block>\r
-                            </outcome>\r
-                            <outcome value='success'>\r
-                                <block atomic='true'>\r
-                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
-                                        <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />\r
-                                        <parameter name="level" value="info" />\r
-                                        <parameter name="field1" value="Successfully sent the request"/>\r
-                                    </record>\r
-                                    <switch test='`$service-delete-response.configuration-response-common.response-code`'>\r
-                                        <outcome value='Other'>\r
+            <set>\r
+                <parameter name='access-id' value="`$optical-service-delete-input.request-id`" />\r
+            </set>\r
+            <for index='ppx' start='0' end='`$param-prefix1_length`' >\r
+                <switch test='`$param-prefix1_length`'>\r
+                    <outcome value='1'>\r
+                        <block atomic='true'>\r
+                            <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
+key='SELECT controller_id\r
+from REQUEST_DETAILS\r
+WHERE request_id = $domain-service1'\r
+pfx='detail-db1'>\r
+                                <outcome value='success'>\r
+                                    <set>\r
+                                        <parameter name='controller-id1' value='`$detail-db1.controller-id`' />\r
+                                    </set>\r
+                                </outcome>\r
+                            </get-resource>\r
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
+                                <parameter name="original_string" value='`$controller-id1`'/>\r
+                                <parameter name="regex" value="_"/>\r
+                                <parameter name="ctx_memory_result_key" value="param-prefix"/>\r
+                            </execute>\r
+                            <set>\r
+                                <parameter name='domain-type' value='`$param-prefix[0]`' />\r
+                                <parameter name='controller-ip' value='`$param-prefix[1]`' />\r
+                                <parameter name='optical-service-delete-input.request-id' value="`$domain-service1`" />\r
+                                <parameter name='optical-service-delete-input.payload.service-name' value="`$optical-service-delete-input.payload.param[0].value + '_MDONS-OTN'`"/>\r
+                            </set>\r
+                            <switch test='`$domain-type`'>\r
+                                <outcome value='MSA'>\r
+                                    <block>\r
+                                        <call module='optical-service' rpc='service-delete-msa' mode='sync' >\r
+                                            <outcome value='success'>\r
+                                                <block atomic='true'>\r
+                                                    <set>\r
+                                                        <parameter name='service1-status' value='`$final-response-code`' />\r
+                                                    </set>\r
+                                                </block>\r
+                                            </outcome>\r
+                                            <outcome value='failure'>\r
+                                                <return status='failure'>\r
+                                                    <parameter name='error-code' value='500' />\r
+                                                    <parameter name='error-message' value='Failed to call MSA DG' />\r
+                                                    <parameter name='ack-final-indicator' value="Y" />\r
+                                                </return>\r
+                                            </outcome>\r
+                                        </call>\r
+                                    </block>\r
+                                </outcome>\r
+                                <outcome value='TAPI'>\r
+                                    <block>\r
+                                        <call module='optical-service' rpc='service-delete-tapi' mode='sync' >\r
+                                            <outcome value='success'>\r
+                                                <block>\r
+                                                    <set>\r
+                                                        <parameter name='service1-status' value='`$final-response-code`' />\r
+                                                    </set>\r
+                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
+                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/service-delete-tapi.log" />\r
+                                                        <parameter name="level" value="info" />\r
+                                                        <parameter name="field1" value="`$service1-status`"/>\r
+                                                    </record>\r
+                                                </block>\r
+                                            </outcome>\r
+                                            <outcome value='failure'>\r
+                                                <return status='failure'>\r
+                                                    <parameter name='error-code' value='500' />\r
+                                                    <parameter name='error-message' value='Failed to call MSA DG' />\r
+                                                    <parameter name='ack-final-indicator' value="Y" />\r
+                                                </return>\r
+                                            </outcome>\r
+                                        </call>\r
+                                    </block>\r
+                                </outcome>\r
+                            </switch>\r
+                        </block>\r
+                    </outcome>\r
+                    <outcome value='2'>\r
+                        <switch test='`$ppx`'>\r
+                            <outcome value='0'>\r
+                                <block>\r
+                                    <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
+key='SELECT controller_id\r
+from REQUEST_DETAILS\r
+WHERE request_id = $domain-service1'\r
+pfx='detail-db11'>\r
+                                        <outcome value='success'>\r
+                                            <set>\r
+                                                <parameter name='controller-id11' value='`$detail-db11.controller-id`' />\r
+                                            </set>\r
+                                        </outcome>\r
+                                    </get-resource>\r
+                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
+                                        <parameter name="original_string" value='`$controller-id11`'/>\r
+                                        <parameter name="regex" value="_"/>\r
+                                        <parameter name="ctx_memory_result_key" value="domain1"/>\r
+                                    </execute>\r
+                                    <set>\r
+                                        <parameter name='optical-service-delete-input.request-id' value="`$domain-service1`" />\r
+                                        <parameter name='optical-service-delete-input.payload.service-name' value="`$optical-service-delete-input.payload.param[0].value + '_MDONS-OTN-TAPI-1'`"/>\r
+                                        <parameter name='domain-type' value='`$domain1[0]`' />\r
+                                        <parameter name='controller-ip' value='`$domain1[1]`' />\r
+                                    </set>\r
+                                    <call module='optical-service' rpc='service-delete-tapi' mode='sync' >\r
+                                        <outcome value='success'>\r
+                                            <block>\r
+                                                <set>\r
+                                                    <parameter name='service1-status' value='`$final-response-code`' />\r
+                                                </set>\r
+                                                <switch test='`$service1-status == 200`'>\r
+                                                    <outcome value='true'>\r
+                                                        <set>\r
+                                                            <parameter name='service1' value='success' />\r
+                                                        </set>\r
+                                                    </outcome>\r
+                                                    <outcome value='false'>\r
+                                                        <set>\r
+                                                            <parameter name='service1' value='failure' />\r
+                                                        </set>\r
+                                                    </outcome>\r
+                                                </switch>\r
+                                            </block>\r
+                                        </outcome>\r
+                                        <outcome value='failure'>\r
                                             <return status='failure'>\r
-                                                <parameter name='error-code' value='`$service-delete-response.configuration-response-common.response-code`' />\r
-                                                <parameter name='error-message' value='`$service-delete-response.configuration-response-common.response-message`' />\r
+                                                <parameter name='error-code' value='500' />\r
+                                                <parameter name='error-message' value='Main Delete Dg not available' />\r
+                                                <parameter name='ack-final-indicator' value="Y" />\r
                                             </return>\r
                                         </outcome>\r
-                                        <outcome value='200'>\r
-                                            <block atomic='true'>\r
-                                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
-                                                    <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />\r
-                                                    <parameter name="level" value="info" />\r
-                                                    <parameter name="field1" value="Inside controller"/>\r
-                                                </record>\r
-                                                <save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' \r
-resource='SQL' \r
-key='UPDATE REQUEST_DETAILS SET status = "DELETING" WHERE request_id = $optical-service-delete-input.request-id' \r
-force='true' pfx='save-result'></save>\r
-                                                <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL' \r
-key='SELECT *\r
-from REQUEST_DETAILS \r
-WHERE request_id = $optical-service-delete-input.request-id'\r
-pfx='db.request-details'>\r
-                                                    <outcome value='success'>\r
+                                    </call>\r
+                                </block>\r
+                            </outcome>\r
+                            <outcome value='1'>\r
+                                <block>\r
+                                    <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
+key='SELECT controller_id\r
+from REQUEST_DETAILS\r
+WHERE request_id = $domain-service2'\r
+pfx='detail-db22'>\r
+                                        <outcome value='success'>\r
+                                            <set>\r
+                                                <parameter name='controller-id22' value='`$detail-db22.controller-id`' />\r
+                                            </set>\r
+                                        </outcome>\r
+                                    </get-resource>\r
+                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
+                                        <parameter name="original_string" value='`$controller-id22`'/>\r
+                                        <parameter name="regex" value="_"/>\r
+                                        <parameter name="ctx_memory_result_key" value="domain2"/>\r
+                                    </execute>\r
+                                    <set>\r
+                                        <parameter name='optical-service-delete-input.request-id' value="`$domain-service2`" />\r
+                                        <parameter name='optical-service-delete-input.payload.service-name' value="`$optical-service-delete-input.payload.param[0].value + '_MDONS-OTN-TAPI-2'`"/>\r
+                                        <parameter name='domain-type' value='`$domain2[0]`' />\r
+                                        <parameter name='controller-ip' value='`$domain2[1]`' />\r
+                                    </set>\r
+                                    <call module='optical-service' rpc='service-delete-tapi' mode='sync' >\r
+                                        <outcome value='success'>\r
+                                            <block>\r
+                                                <set>\r
+                                                    <parameter name='service2-status' value='`$final-response-code`' />\r
+                                                </set>\r
+                                                <switch test='`$service2-status == 200`'>\r
+                                                    <outcome value='true'>\r
                                                         <set>\r
-                                                            <parameter name='instance-id' value='`$db.request-details.service-instance-id`' />\r
-                                                            <parameter name='customer-id' value='`$db.request-details.global-customer-id`' />\r
-                                                            <parameter name='service-id' value='`$db.request-details.service-type`' />\r
+                                                            <parameter name='service2' value='success' />\r
                                                         </set>\r
                                                     </outcome>\r
-                                                </get-resource>\r
-                                                <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
-force='true' \r
-resource='service-instance' \r
-key = 'customer.global-customer-id = $customer-id AND\r
-     service-subscription.service-type = $service-id AND\r
-     service-instance.service-instance-id = $instance-id'\r
-local-only='false'>\r
-                                                    <parameter name='orchestration-status' value='DELETING' />\r
-                                                </update>\r
-                                                <return status='success'>\r
-                                                    <parameter name="error-code" value="200" />\r
-                                                    <parameter name="error-message" value="Service Deletion in Progress" />\r
-                                                    <parameter name='ack-final-indicator' value='N' />\r
-                                                </return>\r
+                                                    <outcome value='false'>\r
+                                                        <set>\r
+                                                            <parameter name='service2' value='failure' />\r
+                                                        </set>\r
+                                                    </outcome>\r
+                                                </switch>\r
                                             </block>\r
                                         </outcome>\r
-                                    </switch>\r
+                                        <outcome value='failure'>\r
+                                            <return status='failure'>\r
+                                                <parameter name='error-code' value='500' />\r
+                                                <parameter name='error-message' value='Main Delete Dg not available' />\r
+                                                <parameter name='ack-final-indicator' value="Y" />\r
+                                            </return>\r
+                                        </outcome>\r
+                                    </call>\r
+                                </block>\r
+                            </outcome>\r
+                        </switch>\r
+                    </outcome>\r
+                </switch>\r
+            </for>\r
+            <switch test='`$ppx`'>\r
+                <outcome value='0'>\r
+                    <block>\r
+                        <switch test='`$service1-status`'>\r
+                            <outcome value='200'>\r
+                                <block>\r
+                                    <delete plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'\r
+    resource="SQL"\r
+    key="DELETE FROM REQUEST_DETAILS WHERE request_id = $access-id"></delete>\r
+                                    <return status='success'>\r
+                                        <parameter name="error-code" value="200" />\r
+                                        <parameter name="error-message" value="Service Deleted Successfully" />\r
+                                        <parameter name='ack-final-indicator' value='Y' />\r
+                                    </return>\r
                                 </block>\r
                             </outcome>\r
-                        </execute>\r
+                            <outcome value='Other'>\r
+                                <block>\r
+                                    <return status='failure'>\r
+                                        <parameter name='error-code' value='500' />\r
+                                        <parameter name='error-message' value='Access service request entry cannot be deleted' />\r
+                                        <parameter name='ack-final-indicator' value="Y" />\r
+                                    </return>\r
+                                </block>\r
+                            </outcome>\r
+                        </switch>\r
                     </block>\r
                 </outcome>\r
-                <outcome value='TAPI'>\r
+                <outcome value='1'>\r
                     <block>\r
-                        <call module='optical-service' rpc='service-delete-tapi' mode='sync' ></call>\r
+                        <switch test='`$service1-status == $service2-status == 200`'>\r
+                            <outcome value='true'>\r
+                                <block>\r
+                                    <delete plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'\r
+    resource="SQL"\r
+    key="DELETE FROM REQUEST_DETAILS WHERE request_id = $access-id"></delete>\r
+                                    <return status='success'>\r
+                                        <parameter name="error-code" value="200" />\r
+                                        <parameter name="error-message" value="Service Deleted Successfully" />\r
+                                        <parameter name='ack-final-indicator' value='Y' />\r
+                                    </return>\r
+                                </block>\r
+                            </outcome>\r
+                            <outcome value='false'>\r
+                                <block>\r
+                                    <return status='failure'>\r
+                                        <parameter name='error-code' value='500' />\r
+                                        <parameter name='error-message' value='Access service request entry cannot be deleted' />\r
+                                        <parameter name='ack-final-indicator' value="Y" />\r
+                                    </return>\r
+                                </block>\r
+                            </outcome>\r
+                        </switch>\r
                     </block>\r
                 </outcome>\r
             </switch>\r