--- /dev/null
+<service-logic\r
+ xmlns='http://www.onap.org/sdnc/svclogic'\r
+ xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>\r
+ <method rpc='validate-getpathsegment-input' mode='sync'>\r
+ <block atomic="true">\r
+ <switch test='`$getpathsegment-topology-operation-input.sdnc-request-header.svc-action`'>\r
+ <outcome value=''>\r
+ <return status='failure'>\r
+ <parameter name='ack-final' value='Y'/>\r
+ <parameter name="error-code" value="500" />\r
+ <parameter name="error-message" value="sdnc-request-header.svc-action is a required input" />\r
+ </return>\r
+ </outcome>\r
+ </switch>\r
+ <switch test='`$getpathsegment-topology-operation-input.sdnc-request-header.svc-request-id`'>\r
+ <outcome value=''>\r
+ <return status='failure'>\r
+ <parameter name='ack-final' value='Y'/>\r
+ <parameter name="error-code" value="500" />\r
+ <parameter name="error-message" value="sdnc-request-header.svc-request-id is a required input" />\r
+ </return>\r
+ </outcome>\r
+ </switch>\r
+ <switch test='`$getpathsegment-topology-operation-input.request-information.request-action`'>\r
+ <outcome value=''>\r
+ <return status='failure'>\r
+ <parameter name='ack-final' value='Y'/>\r
+ <parameter name="error-code" value="500" />\r
+ <parameter name="error-message" value="request-information.request-action is a required input" />\r
+ </return>\r
+ </outcome>\r
+ </switch>\r
+ <switch test='`$getpathsegment-topology-operation-input.service-information.onap-model-information.model-uuid`'>\r
+ <outcome value=''>\r
+ <return status='failure'>\r
+ <parameter name='ack-final' value='Y'/>\r
+ <parameter name="error-code" value="500" />\r
+ <parameter name="error-message" value="service-information.onap-model-information.model-uuid is a required input" />\r
+ </return>\r
+ </outcome>\r
+ </switch>\r
+ <switch test='`$getpathsegment-topology-operation-input.service-information.onap-model-information.model-invariant-uuid`'>\r
+ <outcome value=''>\r
+ <return status='failure'>\r
+ <parameter name='ack-final' value='Y'/>\r
+ <parameter name="error-code" value="500" />\r
+ <parameter name="error-message" value="service-information.onap-model-information.model-invariant-uuid is a required input" />\r
+ </return>\r
+ </outcome>\r
+ </switch>\r
+ <switch test='`$getpathsegment-topology-operation-input.sdnc-request-header.svc-action`'>\r
+ <outcome value='create'>\r
+ <block atomic="true">\r
+ <switch test='`$getpathsegment-topology-operation-input.request-information.request-action`'>\r
+ <outcome value='CreateForwardingPathInstance'>\r
+ <block></block>\r
+ </outcome>\r
+ <outcome value='Other'>\r
+ <return status='failure'>\r
+ <parameter name='ack-final' value='Y'/>\r
+ <parameter name="error-code" value="500" />\r
+ <parameter name="error-message" value="service-information.subscription-service-type is a required input" />\r
+ </return>\r
+ </outcome>\r
+ </switch>\r
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
+ key='SELECT * from SERVICE_MODEL WHERE service_uuid = $getpathsegment-topology-operation-input.service-information.onap-model-information.model-uuid'\r
+ pfx='db.service-model'>\r
+ <outcome value='failure'>\r
+ <return status='failure'>\r
+ <parameter name='ack-final' value='Y'/>\r
+ <parameter name="error-code" value="500" />\r
+ <parameter name="error-message" value="System error reading SERVICE_MODEL table" />\r
+ </return>\r
+ </outcome>\r
+ <outcome value='not-found'>\r
+ <return status='failure'>\r
+ <parameter name='ack-final' value='Y'/>\r
+ <parameter name="error-code" value="500" />\r
+ <parameter name="error-message" value="`'No service model found for service UUID ' + $getpathsegment-topology-operation-input.service-information.onap-model-information.model-uuid`" />\r
+ </return>\r
+ </outcome>\r
+ </get-resource>\r
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
+ key='SELECT * from SERVICE_MODEL WHERE invariant_uuid = $getpathsegment-topology-operation-input.service-information.onap-model-information.model-invariant-uuid'\r
+ pfx='db.service-model'>\r
+ <outcome value='failure'>\r
+ <return status='failure'>\r
+ <parameter name='ack-final' value='Y'/>\r
+ <parameter name="error-code" value="500" />\r
+ <parameter name="error-message" value="System error reading SERVICE_MODEL table" />\r
+ </return>\r
+ </outcome>\r
+ <outcome value='not-found'>\r
+ <return status='failure'>\r
+ <parameter name='ack-final' value='Y'/>\r
+ <parameter name="error-code" value="500" />\r
+ <parameter name="error-message" value="`'No service model found for invariant UUID ' + $getpathsegment-topology-operation-input.service-information.onap-model-information.model-invariant-uuid`" />\r
+ </return>\r
+ </outcome>\r
+ </get-resource>\r
+ </block>\r
+ </outcome>\r
+ </switch>\r
+ </block>\r
+ </method>\r
+</service-logic>
\ No newline at end of file