<service-logic xmlns='http://www.onap.org/sdnc/svclogic' 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}'><method rpc='policy-update-notify-operation' mode='sync'> <block atomic="true"><switch test='`$policy-update-notify-operation-input.update-type`'> <outcome value='Update'> <block atomic="true"><execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' > <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' /> <parameter name='contextPrefix' value='prop' /> </execute><set> <parameter name='tmp.sql' value="`'insert into POLICY_UPDATE_NOTIFICATION (policy_name,version_id,update_type) values ( ' + ' $policy-update-notify-operation-input.policy-name , $policy-update-notify-operation-input.version-id , $policy-update-notify-operation-input.update-type )'`" /> </set><save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL' key="`$tmp.sql`" pfx='pfx'> </save><execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.pm.getpolicy.templatefile`" /> <parameter name='restapiUrl' value="`$prop.policy-manager.url + '/pdp/api/getConfig'`" /> <parameter name='format' value='json' /> <parameter name='httpMethod' value='POST' /> <parameter name='responsePrefix' value="policy" /> <parameter name='customHttpHeaders' value="`'Authorization=Basic ' + $prop.policy-manager.authorization + ',ClientAuth=Basic ' + $prop.policy-manager.clientauth + ',Environment=' + $prop.policy-manager.environment `" /> <outcome value='success'> <block atomic="true"> </block></outcome><outcome value='Other'> <return status='failure'> <parameter name='error-code' value='500' /> <parameter name='error-message' value='Failed to get policy from Policy Manager' /> </return></outcome></execute><execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' > <parameter name='api-name' value='network-policy' /> <parameter name='api-action' value='update' /> <parameter name='resp-prefix' value='contrailResp' /> <parameter name='cloud-region-id' value='`$cloud-region-id`' /> <parameter name='update-network-policy-json' value='`$policy.config`' /><outcome value='success'> <block atomic="true"> </block></outcome><outcome value='Other'> <return status='failure'> <parameter name='error-code' value='500' /> <parameter name='error-message' value='Failed to get policy from Policy Manager' /> </return></outcome></execute></block></outcome></switch><return status='success'> <parameter name="ack-final-indicator" value="Y" /> <parameter name="error-code" value="200" /> <parameter name="error-message" value="success" /> </return></block></method></service-logic>