Fix reuse InstanceName when re-creating a service
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_generate-unique-name.xml
index b00bc79..7393842 100755 (executable)
-<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='generate-unique-name' mode='sync'>\r
-<block atomic="true"><set>\r
-<parameter name='generate-unique-name-output.error-message' value='' />\r
-<parameter name='generate-unique-name-output.generated-name' value='' />\r
-</set><switch test='`$generate-unique-name-input.supplied-name`'>\r
-<outcome value='Other'>\r
-<block atomic="true"><switch test='`$generate-unique-name-input.name-table-type`'>\r
-<outcome value=''><return status='failure'>\r
-<parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.name-table-type not supplied' />\r
-</return></outcome></switch><set>\r
-<parameter name='tmp.gun.sql' value="`'SELECT * from GENERIC_RESOURCE_NAME WHERE type = $generate-unique-name-input.name-table-type'\r
+<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='generate-unique-name' mode='sync'>\r
+        <block atomic="true">\r
+            <set>\r
+                <parameter name='generate-unique-name-output.error-message' value='' />\r
+                <parameter name='generate-unique-name-output.generated-name' value='' />\r
+            </set>\r
+            <switch test='`$generate-unique-name-input.supplied-name`'>\r
+                <outcome value='Other'>\r
+                    <block atomic="true">\r
+                        <switch test='`$generate-unique-name-input.name-table-type`'>\r
+                            <outcome value=''>\r
+                                <return status='failure'>\r
+                                    <parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.name-table-type not supplied' />\r
+                                </return>\r
+                            </outcome>\r
+                        </switch>\r
+                        <set>\r
+                            <parameter name='tmp.gun.sql' value="`'SELECT * from GENERIC_RESOURCE_NAME WHERE type = $generate-unique-name-input.name-table-type'\r
 + ' AND name = $generate-unique-name-input.supplied-name'`" />\r
-</set><get-resource plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource' resource='SQL'\r
+                        </set>\r
+                        <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key="`$tmp.gun.sql`" pfx='tmp.gun.namedb'>\r
-\r
-<outcome value='failure'>\r
-<return status='failure'>\r
-<parameter name='generate-unique-name-output.error-message' value="`'Error reading the ' + $generate-unique-name-input.name-table-index + ' table'`" />\r
-\r
-</return></outcome><outcome value='not-found'>\r
-<block atomic="true"><set>\r
-<parameter name='tmp.gun.sql' value="`'insert into GENERIC_RESOURCE_NAME values ( '\r
-+ ' $generate-unique-name-input.name-table-type , $generate-unique-name-input.supplied-name )'`" />\r
-\r
-</set><save plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource' resource='SQL'\r
+                            <outcome value='failure'>\r
+                                <return status='failure'>\r
+                                    <parameter name='generate-unique-name-output.error-message' value="`'Error reading the ' + $generate-unique-name-input.name-table-index + ' table'`" />\r
+                                </return>\r
+                            </outcome>\r
+                            <outcome value='not-found'>\r
+                                <block atomic="true">\r
+                                    <set>\r
+                                        <parameter name='tmp.gun.sql' value="`'insert into GENERIC_RESOURCE_NAME values ( '\r
++ ' $generate-unique-name-input.name-table-type , $generate-unique-name-input.supplied-name , null , null, $generate-unique-name-input.service-instance-id )'`" />\r
+                                    </set>\r
+                                    <save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key="`$tmp.gun.sql`" pfx='pfx'>\r
-<outcome value='failure'>\r
-<return status='failure'>\r
-<parameter name="generate-unique-name-output.error-message" value="Failed insert into GENERIC_RESOURCE_NAME table" />\r
-</return></outcome></save></block></outcome><outcome value='Other'>\r
-<return status='failure'>\r
-<parameter name='generate-unique-name-output.error-message' value="`'The name ' + $generate-unique-name-input.supplied-name + ' has already been used'`" />\r
-\r
-</return></outcome></get-resource></block></outcome><outcome value=''><block atomic="true"><switch test='`$generate-unique-name-input.index-table-name`'>\r
-<outcome value=''><return status='failure'>\r
-<parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.index-table-name not supplied' />\r
-</return></outcome></switch><switch test='`$generate-unique-name-input.index-table-prefix-column`'>\r
-<outcome value=''><return status='failure'>\r
-<parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.index-table-prefix-column not supplied' />\r
-</return></outcome></switch><switch test='`$generate-unique-name-input.name-table-type`'>\r
-<outcome value=''><return status='failure'>\r
-<parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.name-table-type not supplied' />\r
-</return></outcome></switch><switch test='`$generate-unique-name-input.prefix`'>\r
-<outcome value=''><return status='failure'>\r
-<parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.prefix not supplied' />\r
-</return></outcome></switch><switch test='`$generate-unique-name-input.index-length`'>\r
-<outcome value=''><set>\r
-<parameter name='tmp.gun.list-end' value='10000' />\r
-</set></outcome><outcome value='1'>\r
-<set>\r
-<parameter name='tmp.gun.list-end' value='10' />\r
-</set></outcome><outcome value='2'>\r
-<set>\r
-<parameter name='tmp.gun.list-end' value='100' />\r
-</set></outcome><outcome value='3'>\r
-<set>\r
-<parameter name='tmp.gun.list-end' value='1000' />\r
-</set></outcome><outcome value='Other'>\r
-<return status='failure'>\r
-<parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.prefix not supplied' />\r
-</return></outcome></switch><set>\r
-<parameter name='tmp.gun.sql' value="`'SELECT * from ' + $generate-unique-name-input.index-table-name\r
+                                        <outcome value='failure'>\r
+                                            <return status='failure'>\r
+                                                <parameter name="generate-unique-name-output.error-message" value="Failed insert into GENERIC_RESOURCE_NAME table" />\r
+                                            </return>\r
+                                        </outcome>\r
+                                    </save>\r
+                                </block>\r
+                            </outcome>\r
+                            <outcome value='Other'>\r
+                                <return status='failure'>\r
+                                    <parameter name='generate-unique-name-output.error-message' value="`'The name ' + $generate-unique-name-input.supplied-name + ' has already been used'`" />\r
+                                </return>\r
+                            </outcome>\r
+                        </get-resource>\r
+                    </block>\r
+                </outcome>\r
+                <outcome value=''>\r
+                    <block atomic="true">\r
+                        <switch test='`$generate-unique-name-input.index-table-name`'>\r
+                            <outcome value=''>\r
+                                <return status='failure'>\r
+                                    <parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.index-table-name not supplied' />\r
+                                </return>\r
+                            </outcome>\r
+                        </switch>\r
+                        <switch test='`$generate-unique-name-input.index-table-prefix-column`'>\r
+                            <outcome value=''>\r
+                                <return status='failure'>\r
+                                    <parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.index-table-prefix-column not supplied' />\r
+                                </return>\r
+                            </outcome>\r
+                        </switch>\r
+                        <switch test='`$generate-unique-name-input.name-table-type`'>\r
+                            <outcome value=''>\r
+                                <return status='failure'>\r
+                                    <parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.name-table-type not supplied' />\r
+                                </return>\r
+                            </outcome>\r
+                        </switch>\r
+                        <switch test='`$generate-unique-name-input.prefix`'>\r
+                            <outcome value=''>\r
+                                <return status='failure'>\r
+                                    <parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.prefix not supplied' />\r
+                                </return>\r
+                            </outcome>\r
+                        </switch>\r
+                        <switch test='`$generate-unique-name-input.index-length`'>\r
+                            <outcome value=''>\r
+                                <set>\r
+                                    <parameter name='tmp.gun.list-end' value='100000' />\r
+                                </set>\r
+                            </outcome>\r
+                            <outcome value='0'>\r
+                                <set>\r
+                                    <parameter name='tmp.gun.list-end' value='0' />\r
+                                </set>\r
+                            </outcome>\r
+                            <outcome value='1'>\r
+                                <set>\r
+                                    <parameter name='tmp.gun.list-end' value='10' />\r
+                                </set>\r
+                            </outcome>\r
+                            <outcome value='2'>\r
+                                <set>\r
+                                    <parameter name='tmp.gun.list-end' value='100' />\r
+                                </set>\r
+                            </outcome>\r
+                            <outcome value='3'>\r
+                                <set>\r
+                                    <parameter name='tmp.gun.list-end' value='1000' />\r
+                                </set>\r
+                            </outcome>\r
+                            <outcome value='4'>\r
+                                <set>\r
+                                    <parameter name='tmp.gun.list-end' value='10000' />\r
+                                </set>\r
+                            </outcome>\r
+                            <outcome value='Other'>\r
+                                <return status='failure'>\r
+                                    <parameter name='generate-unique-name-output.error-message' value='generate-unique-name-input.prefix not supplied' />\r
+                                </return>\r
+                            </outcome>\r
+                        </switch>\r
+                        <set>\r
+                            <parameter name='tmp.gun.noindex-flag' value='false' />\r
+                        </set>\r
+                        <set>\r
+                            <parameter name='tmp.gun.sql' value="`'SELECT * from ' + $generate-unique-name-input.index-table-name\r
 + ' WHERE ' + $generate-unique-name-input.index-table-prefix-column + ' = '\r
 + '$generate-unique-name-input.prefix'`" />\r
-</set><get-resource plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource' resource='SQL'\r
+                        </set>\r
+                        <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key="`$tmp.gun.sql`" pfx='tmp.gun.prefixdb'>\r
-\r
-<outcome value='success'>\r
-<block>\r
-<set>\r
-<parameter name='tmp.gun.index-exists' value='true' />\r
-</set><set>\r
-<parameter name='tmp.gun.index-number' value='`$tmp.gun.prefixdb.index-number + 1`' />\r
-</set></block></outcome><outcome value='not-found'>\r
-<block>\r
-<set>\r
-<parameter name='tmp.gun.index-exists' value='false' />\r
-</set><set>\r
-<parameter name='tmp.gun.index-number' value='1' />\r
-</set></block></outcome><outcome value='failure'>\r
-<return status='failure'>\r
-    <parameter name="generate-unique-name-output.error-message" value="`'Error reading the ' + $generate-unique-name-input.index-table-name + ' table'`" />\r
-</return></outcome></get-resource><set>\r
-<parameter name='tmp.gun.found-flag' value='false' />\r
-</set><block>\r
-<for index='tmp.gun.idx' start='`$tmp.gun.index-number`' end='`$tmp.gun.list-end`' >\r
-<block atomic="true"><switch test='`$generate-unique-name-input.index-length`'>\r
-<outcome value=''><set>\r
-<parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
-</set></outcome><outcome value='1'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
-</set></outcome><outcome value='2'>\r
-<switch test='`$tmp.gun.idx &lt; 10`'>\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value="`'' + '0' + $tmp.gun.idx`" />\r
-</set></outcome><outcome value='false'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
-</set></outcome></switch></outcome><outcome value='3'>\r
-<switch test='`$tmp.gun.idx &lt; 10`'>\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value="`'' + '00' + $tmp.gun.idx`" />\r
-</set></outcome><outcome value='false'>\r
-<switch test='`$tmp.gun.idx &lt; 100`'>\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value="`'' + '0' + $tmp.gun.idx`" />\r
-</set></outcome><outcome value='false'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
-</set></outcome></switch></outcome></switch></outcome></switch><set>\r
-<parameter name='tmp.gun.generated-name' value='`$generate-unique-name-input.prefix + $tmp.gun.index-string`' />\r
-</set><set>\r
-<parameter name='tmp.gun.sql' value="`'SELECT * from GENERIC_RESOURCE_NAME WHERE type = $generate-unique-name-input.name-table-type'\r
+                            <outcome value='success'>\r
+                                <block>\r
+                                    <set>\r
+                                        <parameter name='tmp.gun.index-exists' value='true' />\r
+                                    </set>\r
+                                    <switch test='`$generate-unique-name-input.index-length`'>\r
+                                        <outcome value='Other'>\r
+                                            <set>\r
+                                                <parameter name='tmp.gun.index-number' value='`$tmp.gun.prefixdb.index-number + 1`' />\r
+                                            </set>\r
+                                        </outcome>\r
+                                        <outcome value='0'>\r
+                                            <block>\r
+                                                <set>\r
+                                                    <parameter name='tmp.gun.index-number' value='0' />\r
+                                                </set>\r
+                                                <set>\r
+                                                    <parameter name='tmp.gun.noindex-flag' value='true' />\r
+                                                </set>\r
+                                            </block>\r
+                                        </outcome>\r
+                                    </switch>\r
+                                </block>\r
+                            </outcome>\r
+                            <outcome value='not-found'>\r
+                                <block>\r
+                                    <set>\r
+                                        <parameter name='tmp.gun.index-exists' value='false' />\r
+                                    </set>\r
+                                    <switch test='`$generate-unique-name-input.index-length`'>\r
+                                        <outcome value='0'>\r
+                                            <block>\r
+                                                <set>\r
+                                                    <parameter name='tmp.gun.index-number' value='0' />\r
+                                                </set>\r
+                                                <set>\r
+                                                    <parameter name='tmp.gun.noindex-flag' value='true' />\r
+                                                </set>\r
+                                            </block>\r
+                                        </outcome>\r
+                                        <outcome value='Other'>\r
+                                            <set>\r
+                                                <parameter name='tmp.gun.index-number' value='1' />\r
+                                            </set>\r
+                                        </outcome>\r
+                                    </switch>\r
+                                </block>\r
+                            </outcome>\r
+                            <outcome value='failure'>\r
+                                <return status='failure'>\r
+                                    <parameter name="generate-unique-name-output.error-message" value="`'Error reading the ' + $generate-unique-name-input.index-table-name + ' table'`" />\r
+                                </return>\r
+                            </outcome>\r
+                        </get-resource>\r
+                        <set>\r
+                            <parameter name='tmp.gun.found-flag' value='false' />\r
+                        </set>\r
+                        <block>\r
+                            <for index='tmp.gun.idx' start='`$tmp.gun.index-number`' end='`$tmp.gun.list-end`' >\r
+                                <block atomic="true">\r
+                                    <switch test='`$generate-unique-name-input.index-length`'>\r
+                                        <outcome value=''>\r
+                                            <set>\r
+                                                <parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
+                                            </set>\r
+                                        </outcome>\r
+                                        <outcome value='1'>\r
+                                            <set>\r
+                                                <parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
+                                            </set>\r
+                                        </outcome>\r
+                                        <outcome value='2'>\r
+                                            <switch test='`$tmp.gun.idx &lt; 10`'>\r
+                                                <outcome value='true'>\r
+                                                    <set>\r
+                                                        <parameter name='tmp.gun.index-string' value="`'' + '0' + $tmp.gun.idx`" />\r
+                                                    </set>\r
+                                                </outcome>\r
+                                                <outcome value='false'>\r
+                                                    <set>\r
+                                                        <parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
+                                                    </set>\r
+                                                </outcome>\r
+                                            </switch>\r
+                                        </outcome>\r
+                                        <outcome value='3'>\r
+                                            <switch test='`$tmp.gun.idx &lt; 10`'>\r
+                                                <outcome value='true'>\r
+                                                    <set>\r
+                                                        <parameter name='tmp.gun.index-string' value="`'' + '00' + $tmp.gun.idx`" />\r
+                                                    </set>\r
+                                                </outcome>\r
+                                                <outcome value='false'>\r
+                                                    <switch test='`$tmp.gun.idx &lt; 100`'>\r
+                                                        <outcome value='true'>\r
+                                                            <set>\r
+                                                                <parameter name='tmp.gun.index-string' value="`'' + '0' + $tmp.gun.idx`" />\r
+                                                            </set>\r
+                                                        </outcome>\r
+                                                        <outcome value='false'>\r
+                                                            <set>\r
+                                                                <parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
+                                                            </set>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                            </switch>\r
+                                        </outcome>\r
+                                        <outcome value='4'>\r
+                                            <switch test='`$tmp.gun.idx &lt; 10`'>\r
+                                                <outcome value='true'>\r
+                                                    <set>\r
+                                                        <parameter name='tmp.gun.index-string' value="`'' + '000' + $tmp.gun.idx`" />\r
+                                                    </set>\r
+                                                </outcome>\r
+                                                <outcome value='false'>\r
+                                                    <switch test='`$tmp.gun.idx &lt; 100`'>\r
+                                                        <outcome value='true'>\r
+                                                            <set>\r
+                                                                <parameter name='tmp.gun.index-string' value="`'' + '00' + $tmp.gun.idx`" />\r
+                                                            </set>\r
+                                                        </outcome>\r
+                                                        <outcome value='false'>\r
+                                                            <switch test='`$tmp.gun.idx &lt; 1000`'>\r
+                                                                <outcome value='true'>\r
+                                                                    <set>\r
+                                                                        <parameter name='tmp.gun.index-string' value="`'' + '0' + $tmp.gun.idx`" />\r
+                                                                    </set>\r
+                                                                </outcome>\r
+                                                                <outcome value='false'>\r
+                                                                    <set>\r
+                                                                        <parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
+                                                                    </set>\r
+                                                                </outcome>\r
+                                                            </switch>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                            </switch>\r
+                                        </outcome>\r
+                                    </switch>\r
+                                    <set>\r
+                                        <parameter name='tmp.gun.generated-name' value='`$generate-unique-name-input.prefix + $tmp.gun.index-string`' />\r
+                                    </set>\r
+                                    <set>\r
+                                        <parameter name='tmp.gun.sql' value="`'SELECT * from GENERIC_RESOURCE_NAME WHERE type = $generate-unique-name-input.name-table-type'\r
 + ' AND name = $tmp.gun.generated-name'`" />\r
-</set><get-resource plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource' resource='SQL'\r
+                                    </set>\r
+                                    <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key="`$tmp.gun.sql`" pfx='tmp.gun.namedb'>\r
-\r
-<outcome value='failure'>\r
-<block atomic="true"><set>\r
-<parameter name='generate-unique-name-output.error-message' value="`'Error reading the GENERIC_RESOURCE_NAME table'`" />\r
-</set><return status='failure'>\r
-</return></block></outcome><outcome value='not-found'>\r
-<block atomic="true"><set>\r
-<parameter name='tmp.gun.found-flag' value='true' />\r
-</set><return status='failure'>\r
-</return></block></outcome></get-resource></block></for><return status='success'>\r
-\r
-</return></block><switch test='`$generate-unique-name-output.error-message`'>\r
-<outcome value=''><block>\r
-</block></outcome><outcome value='Other'>\r
-<return status='failure'>\r
-</return></outcome></switch><switch test='`$tmp.gun.found-flag`'>\r
-<outcome value='true'><block atomic="true"><set>\r
-<parameter name='generate-unique-name-output.generated-name' value='`$tmp.gun.generated-name`' />\r
-</set><switch test='`$tmp.gun.index-exists`'>\r
-<outcome value='true'>\r
-<block atomic="true"><set>\r
-<parameter name='tmp.gun.sql' value="`'update ' + $generate-unique-name-input.index-table-name\r
+                                        <outcome value='failure'>\r
+                                            <block atomic="true">\r
+                                                <set>\r
+                                                    <parameter name='generate-unique-name-output.error-message' value="`'Error reading the GENERIC_RESOURCE_NAME table'`" />\r
+                                                </set>\r
+                                                <return status='failure'></return>\r
+                                            </block>\r
+                                        </outcome>\r
+                                        <outcome value='not-found'>\r
+                                            <block atomic="true">\r
+                                                <set>\r
+                                                    <parameter name='tmp.gun.found-flag' value='true' />\r
+                                                </set>\r
+                                                <return status='failure'></return>\r
+                                            </block>\r
+                                        </outcome>\r
+                                    </get-resource>\r
+                                </block>\r
+                            </for>\r
+                            <switch test='`$tmp.gun.noindex-flag`'>\r
+                                <outcome value='true'>\r
+                                    <block atomic="true">\r
+                                        <set>\r
+                                            <parameter name='tmp.gun.index-string' value='0' />\r
+                                        </set>\r
+                                        <set>\r
+                                            <parameter name='tmp.gun.generated-name' value='`$generate-unique-name-input.prefix`' />\r
+                                        </set>\r
+                                        <set>\r
+                                            <parameter name='tmp.gun.sql' value="`'SELECT * from GENERIC_RESOURCE_NAME WHERE type = $generate-unique-name-input.name-table-type'\r
++ ' AND name = $tmp.gun.generated-name'`" />\r
+                                        </set>\r
+                                        <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
+  key="`$tmp.gun.sql`" pfx='tmp.gun.namedb'>\r
+                                            <outcome value='failure'>\r
+                                                <block atomic="true">\r
+                                                    <set>\r
+                                                        <parameter name='generate-unique-name-output.error-message' value="`'Error reading the GENERIC_RESOURCE_NAME table'`" />\r
+                                                    </set>\r
+                                                    <return status='failure'></return>\r
+                                                </block>\r
+                                            </outcome>\r
+                                            <outcome value='not-found'>\r
+                                                <block atomic="true">\r
+                                                    <set>\r
+                                                        <parameter name='tmp.gun.found-flag' value='true' />\r
+                                                    </set>\r
+                                                    <return status='failure'></return>\r
+                                                </block>\r
+                                            </outcome>\r
+                                            <outcome value='success'>\r
+                                                <block atomic="true">\r
+                                                    <set>\r
+                                                        <parameter name='tmp.gun.found-flag' value='true' />\r
+                                                    </set>\r
+                                                    <return status='failure'></return>\r
+                                                </block>\r
+                                            </outcome>\r
+                                        </get-resource>\r
+                                    </block>\r
+                                </outcome>\r
+                            </switch>\r
+                            <return status='success'></return>\r
+                        </block>\r
+                        <switch test='`$generate-unique-name-output.error-message`'>\r
+                            <outcome value=''>\r
+                                <block></block>\r
+                            </outcome>\r
+                            <outcome value='Other'>\r
+                                <return status='failure'></return>\r
+                            </outcome>\r
+                        </switch>\r
+                        <switch test='`$tmp.gun.found-flag`'>\r
+                            <outcome value='true'>\r
+                                <block atomic="true">\r
+                                    <set>\r
+                                        <parameter name='generate-unique-name-output.generated-name' value='`$tmp.gun.generated-name`' />\r
+                                    </set>\r
+                                    <switch test='`$tmp.gun.index-exists`'>\r
+                                        <outcome value='true'>\r
+                                            <block atomic="true">\r
+                                                <set>\r
+                                                    <parameter name='tmp.gun.sql' value="`'update ' + $generate-unique-name-input.index-table-name\r
 + ' set index_number = ' + $tmp.gun.index-string + ' where '\r
 + $generate-unique-name-input.index-table-prefix-column\r
 + ' = $generate-unique-name-input.prefix'`" />\r
-</set><save plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource' resource='SQL'\r
+                                                </set>\r
+                                                <save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key="`$tmp.gun.sql`" pfx='pfx'>\r
-<outcome value='failure'>\r
-<return status='failure'>\r
-    <parameter name="generate-unique-name-output.error-message" value="`'Failed to update ' + $generate-unique-name-input.index-table-name + ' table'`" />\r
-</return></outcome></save></block></outcome><outcome value='false'>\r
-<block atomic="true"><set>\r
-<parameter name='tmp.gun.sql' value="`'insert into ' + $generate-unique-name-input.index-table-name\r
+                                                    <outcome value='failure'>\r
+                                                        <return status='failure'>\r
+                                                            <parameter name="generate-unique-name-output.error-message" value="`'Failed to update ' + $generate-unique-name-input.index-table-name + ' table'`" />\r
+                                                        </return>\r
+                                                    </outcome>\r
+                                                </save>\r
+                                            </block>\r
+                                        </outcome>\r
+                                        <outcome value='false'>\r
+                                            <block atomic="true">\r
+                                                <set>\r
+                                                    <parameter name='tmp.gun.sql' value="`'insert into ' + $generate-unique-name-input.index-table-name\r
 + '(' + $generate-unique-name-input.index-table-prefix-column + ', index_number) values ('\r
 + ' $generate-unique-name-input.prefix , ' + $tmp.gun.index-string + ')'`" />\r
-\r
-</set><save plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource' resource='SQL'\r
+                                                </set>\r
+                                                <save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key="`$tmp.gun.sql`" pfx='pfx'>\r
-<outcome value='failure'>\r
-<return status='failure'>\r
-    <parameter name="generate-unique-name-output.error-message" value="`'Failed to insert record into ' + $generate-unique-name-input.index-table-name + ' table'`" />\r
-</return></outcome></save></block></outcome></switch><set>\r
-<parameter name='tmp.gun.sql' value="`'insert into GENERIC_RESOURCE_NAME values ( '\r
-+ ' $generate-unique-name-input.name-table-type , $tmp.gun.generated-name )'`" />\r
-\r
-</set><save plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource' resource='SQL'\r
+                                                    <outcome value='failure'>\r
+                                                        <return status='failure'>\r
+                                                            <parameter name="generate-unique-name-output.error-message" value="`'Failed to insert record into ' + $generate-unique-name-input.index-table-name + ' table'`" />\r
+                                                        </return>\r
+                                                    </outcome>\r
+                                                </save>\r
+                                            </block>\r
+                                        </outcome>\r
+                                    </switch>\r
+                                    <set>\r
+                                        <parameter name='tmp.gun.sql' \r
+       value="`'insert into GENERIC_RESOURCE_NAME values ( $generate-unique-name-input.name-table-type , $tmp.gun.generated-name , $generate-unique-name-input.prefix , ' + $tmp.gun.index-string + ' , $tmp.gun.transient )'`" />\r
+                                    </set>\r
+                                    <save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key="`$tmp.gun.sql`" pfx='pfx'>\r
-<outcome value='failure'>\r
-<return status='failure'>\r
-    <parameter name="generate-unique-name-output.error-message" value="Failed insert into GENERIC_RESOURCE_NAME table" />\r
-</return></outcome></save><return status='success'>\r
-</return></block></outcome><outcome value='false'>\r
-<block atomic="true"><switch test='`$generate-unique-name-input.index-length`'>\r
-<outcome value=''><return status='failure'>\r
-    <parameter name="generate-unique-name-output.error-message" value="We have exhausted the naming index count" />\r
-</return></outcome></switch><block>\r
-<for index='tmp.gun.idx' start='1' end='`$tmp.gun.index-number`' >\r
-<block atomic="true"><switch test='`$generate-unique-name-input.index-length`'>\r
-<outcome value=''><set>\r
-<parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
-</set></outcome><outcome value='1'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
-</set></outcome><outcome value='2'>\r
-<switch test='`$tmp.gun.idx &lt; 10`'>\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value="`'' + '0' + $tmp.gun.idx`" />\r
-</set></outcome><outcome value='false'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
-</set></outcome></switch></outcome><outcome value='3'>\r
-<switch test='`$tmp.gun.idx &lt; 10`'>\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value="`'' + '00' + $tmp.gun.idx`" />\r
-</set></outcome><outcome value='false'>\r
-<switch test='`$tmp.gun.idx &lt; 100`'>\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value="`'' + '0' + $tmp.gun.idx`" />\r
-</set></outcome><outcome value='false'>\r
-<set>\r
-<parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
-</set></outcome></switch></outcome></switch></outcome></switch><set>\r
-<parameter name='tmp.gun.generated-name' value='`$generate-unique-name-input.prefix + $tmp.gun.index-string`' />\r
-</set><set>\r
-<parameter name='tmp.gun.namedb.name' value='' />\r
-</set><set>\r
-<parameter name='tmp.gun.sql' value="`'SELECT * from GENERIC_RESOURCE_NAME WHERE type = $generate-unique-name-input.name-table-type'\r
+                                        <outcome value='failure'>\r
+                                            <return status='failure'>\r
+                                                <parameter name="generate-unique-name-output.error-message" value="Failed insert into GENERIC_RESOURCE_NAME table" />\r
+                                            </return>\r
+                                        </outcome>\r
+                                    </save>\r
+                                    <return status='success'></return>\r
+                                </block>\r
+                            </outcome>\r
+                            <outcome value='false'>\r
+                                <block atomic="true">\r
+                                    <switch test='`$tmp.gun.noindex-flag`'>\r
+                                        <outcome value='true'>\r
+                                            <return status='failure'>\r
+                                                <parameter name="generate-unique-name-output.error-message" value="naming exhausted for input with index-length = 0" />\r
+                                            </return>\r
+                                        </outcome>\r
+                                    </switch>\r
+                                    <switch test='`$generate-unique-name-input.index-length`'>\r
+                                        <outcome value=''>\r
+                                            <return status='failure'>\r
+                                                <parameter name="generate-unique-name-output.error-message" value="We have exhausted the naming index count" />\r
+                                            </return>\r
+                                        </outcome>\r
+                                    </switch>\r
+                                    <block>\r
+                                        <for index='tmp.gun.idx' start='1' end='`$tmp.gun.index-number`' >\r
+                                            <block atomic="true">\r
+                                                <switch test='`$generate-unique-name-input.index-length`'>\r
+                                                    <outcome value=''>\r
+                                                        <set>\r
+                                                            <parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
+                                                        </set>\r
+                                                    </outcome>\r
+                                                    <outcome value='1'>\r
+                                                        <set>\r
+                                                            <parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
+                                                        </set>\r
+                                                    </outcome>\r
+                                                    <outcome value='2'>\r
+                                                        <switch test='`$tmp.gun.idx &lt; 10`'>\r
+                                                            <outcome value='true'>\r
+                                                                <set>\r
+                                                                    <parameter name='tmp.gun.index-string' value="`'' + '0' + $tmp.gun.idx`" />\r
+                                                                </set>\r
+                                                            </outcome>\r
+                                                            <outcome value='false'>\r
+                                                                <set>\r
+                                                                    <parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
+                                                                </set>\r
+                                                            </outcome>\r
+                                                        </switch>\r
+                                                    </outcome>\r
+                                                    <outcome value='3'>\r
+                                                        <switch test='`$tmp.gun.idx &lt; 10`'>\r
+                                                            <outcome value='true'>\r
+                                                                <set>\r
+                                                                    <parameter name='tmp.gun.index-string' value="`'' + '00' + $tmp.gun.idx`" />\r
+                                                                </set>\r
+                                                            </outcome>\r
+                                                            <outcome value='false'>\r
+                                                                <switch test='`$tmp.gun.idx &lt; 100`'>\r
+                                                                    <outcome value='true'>\r
+                                                                        <set>\r
+                                                                            <parameter name='tmp.gun.index-string' value="`'' + '0' + $tmp.gun.idx`" />\r
+                                                                        </set>\r
+                                                                    </outcome>\r
+                                                                    <outcome value='false'>\r
+                                                                        <set>\r
+                                                                            <parameter name='tmp.gun.index-string' value='`$tmp.gun.idx`' />\r
+                                                                        </set>\r
+                                                                    </outcome>\r
+                                                                </switch>\r
+                                                            </outcome>\r
+                                                        </switch>\r
+                                                    </outcome>\r
+                                                </switch>\r
+                                                <set>\r
+                                                    <parameter name='tmp.gun.generated-name' value='`$generate-unique-name-input.prefix + $tmp.gun.index-string`' />\r
+                                                </set>\r
+                                                <set>\r
+                                                    <parameter name='tmp.gun.namedb.name' value='' />\r
+                                                </set>\r
+                                                <set>\r
+                                                    <parameter name='tmp.gun.sql' value="`'SELECT * from GENERIC_RESOURCE_NAME WHERE type = $generate-unique-name-input.name-table-type'\r
 + ' AND name = $tmp.gun.generated-name'`" />\r
-</set><get-resource plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource' resource='SQL'\r
+                                                </set>\r
+                                                <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key="`$tmp.gun.sql`" pfx='tmp.gun.namedb'>\r
-\r
-<outcome value='failure'>\r
-<block atomic="true"><set>\r
-<parameter name='generate-unique-name-output.error-message' value="Error reading the GENERIC_RESOURCE_NAME table" />\r
-</set><return status='failure'>\r
-</return></block></outcome><outcome value='not-found'>\r
-<block atomic="true"><set>\r
-<parameter name='tmp.gun.found-flag' value='true' />\r
-</set><return status='failure'>\r
-</return></block></outcome></get-resource></block></for><return status='success'>\r
-\r
-</return></block><switch test='`$generate-unique-name-output.error-message`'>\r
-<outcome value=''><block>\r
-</block></outcome><outcome value='Other'>\r
-<return status='failure'>\r
-</return></outcome></switch><switch test='`$tmp.gun.found-flag`'>\r
-<outcome value='true'><block atomic="true"><set>\r
-<parameter name='generate-unique-name-output.generated-name' value='`$tmp.gun.generated-name`' />\r
-</set><switch test='`$tmp.gun.index-exists`'>\r
-<outcome value='true'>\r
-<block atomic="true"><set>\r
-<parameter name='tmp.gun.sql' value="`'update ' + $generate-unique-name-input.index-table-name\r
+                                                    <outcome value='failure'>\r
+                                                        <block atomic="true">\r
+                                                            <set>\r
+                                                                <parameter name='generate-unique-name-output.error-message' value="Error reading the GENERIC_RESOURCE_NAME table" />\r
+                                                            </set>\r
+                                                            <return status='failure'></return>\r
+                                                        </block>\r
+                                                    </outcome>\r
+                                                    <outcome value='not-found'>\r
+                                                        <block atomic="true">\r
+                                                            <set>\r
+                                                                <parameter name='tmp.gun.found-flag' value='true' />\r
+                                                            </set>\r
+                                                            <return status='failure'></return>\r
+                                                        </block>\r
+                                                    </outcome>\r
+                                                </get-resource>\r
+                                            </block>\r
+                                        </for>\r
+                                        <return status='success'></return>\r
+                                    </block>\r
+                                    <switch test='`$generate-unique-name-output.error-message`'>\r
+                                        <outcome value=''>\r
+                                            <block></block>\r
+                                        </outcome>\r
+                                        <outcome value='Other'>\r
+                                            <return status='failure'></return>\r
+                                        </outcome>\r
+                                    </switch>\r
+                                    <switch test='`$tmp.gun.found-flag`'>\r
+                                        <outcome value='true'>\r
+                                            <block atomic="true">\r
+                                                <set>\r
+                                                    <parameter name='generate-unique-name-output.generated-name' value='`$tmp.gun.generated-name`' />\r
+                                                </set>\r
+                                                <switch test='`$tmp.gun.index-exists`'>\r
+                                                    <outcome value='true'>\r
+                                                        <block atomic="true">\r
+                                                            <set>\r
+                                                                <parameter name='tmp.gun.sql' value="`'update ' + $generate-unique-name-input.index-table-name\r
 + ' set index_number = ' + $tmp.gun.index-string + ' where '\r
 + $generate-unique-name-input.index-table-prefix-column\r
 + ' = $generate-unique-name-input.prefix'`" />\r
-</set><save plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource' resource='SQL'\r
+                                                            </set>\r
+                                                            <save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key="`$tmp.gun.sql`" pfx='pfx'>\r
-<outcome value='failure'>\r
-<return status='failure'>\r
-    <parameter name="generate-unique-name-output.error-message" value="`'Failed to update ' + $generate-unique-name-input.index-table-name + ' table'`" />\r
-</return></outcome></save></block></outcome><outcome value='false'>\r
-<block atomic="true"><set>\r
-<parameter name='tmp.gun.sql' value="`'insert into ' + $generate-unique-name-input.index-table-name\r
+                                                                <outcome value='failure'>\r
+                                                                    <return status='failure'>\r
+                                                                        <parameter name="generate-unique-name-output.error-message" value="`'Failed to update ' + $generate-unique-name-input.index-table-name + ' table'`" />\r
+                                                                    </return>\r
+                                                                </outcome>\r
+                                                            </save>\r
+                                                        </block>\r
+                                                    </outcome>\r
+                                                    <outcome value='false'>\r
+                                                        <block atomic="true">\r
+                                                            <set>\r
+                                                                <parameter name='tmp.gun.sql' value="`'insert into ' + $generate-unique-name-input.index-table-name\r
 + '(' + $generate-unique-name-input.index-table-prefix-column + ', index_number) values ('\r
 + ' $generate-unique-name-input.prefix , ' + $tmp.gun.index-string + ')'`" />\r
-\r
-</set><save plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource' resource='SQL'\r
+                                                            </set>\r
+                                                            <save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key="`$tmp.gun.sql`" pfx='pfx'>\r
-<outcome value='failure'>\r
-<return status='failure'>\r
-    <parameter name="generate-unique-name-output.error-message" value="`'Failed to insert record into ' + $generate-unique-name-input.index-table-name + ' table'`" />\r
-</return></outcome></save></block></outcome></switch><set>\r
-<parameter name='tmp.gun.sql' value="`'insert into GENERIC_RESOURCE_NAME values ( '\r
-+ ' $generate-unique-name-input.name-table-type , $tmp.gun.generated-name )'`" />\r
-\r
-</set><save plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource' resource='SQL'\r
+                                                                <outcome value='failure'>\r
+                                                                    <return status='failure'>\r
+                                                                        <parameter name="generate-unique-name-output.error-message" value="`'Failed to insert record into ' + $generate-unique-name-input.index-table-name + ' table'`" />\r
+                                                                    </return>\r
+                                                                </outcome>\r
+                                                            </save>\r
+                                                        </block>\r
+                                                    </outcome>\r
+                                                </switch>\r
+                                                <set>\r
+                                                    <parameter name='tmp.gun.sql' \r
+       value="`'insert into GENERIC_RESOURCE_NAME values ( $generate-unique-name-input.name-table-type , $tmp.gun.generated-name , $generate-unique-name-input.prefix , ' + $tmp.gun.index-string + ' , $tmp.gun.transient )'`" />\r
+                                                </set>\r
+                                                <save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key="`$tmp.gun.sql`" pfx='pfx'>\r
-<outcome value='failure'>\r
-<return status='failure'>\r
-    <parameter name="generate-unique-name-output.error-message" value="Failed insert into GENERIC_RESOURCE_NAME table" />\r
-</return></outcome></save><return status='success'>\r
-\r
-</return></block></outcome></switch><return status='failure'>\r
-    <parameter name="generate-unique-name-output.error-message" value="We have exhausted the naming index count" />\r
-</return></block></outcome></switch></block></outcome></switch></block></method></service-logic>
+                                                    <outcome value='failure'>\r
+                                                        <return status='failure'>\r
+                                                            <parameter name="generate-unique-name-output.error-message" value="Failed insert into GENERIC_RESOURCE_NAME table" />\r
+                                                        </return>\r
+                                                    </outcome>\r
+                                                </save>\r
+                                                <return status='success'></return>\r
+                                            </block>\r
+                                        </outcome>\r
+                                    </switch>\r
+                                    <return status='failure'>\r
+                                        <parameter name="generate-unique-name-output.error-message" value="We have exhausted the naming index count" />\r
+                                    </return>\r
+                                </block>\r
+                            </outcome>\r
+                        </switch>\r
+                    </block>\r
+                </outcome>\r
+            </switch>\r
+        </block>\r
+    </method>\r
+</service-logic>
\ No newline at end of file