Files
tibcoRepository/Processes/xml/author/XmlPOST.process
2024-09-03 13:10:21 +02:00

268 lines
11 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<pd:ProcessDefinition xmlns:pfx="http://www.demo.com/author" xmlns:pfx2="http://www.tibco.com/pe/GenerateErrorActivity/InputSchema" xmlns:ns="http://www.tibco.com/namespaces/tnt/plugins/file" xmlns:pfx3="http://xmlns.example.com/1721737885605" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="http://xmlns.tibco.com/bw/activity/xml/render/bytesEnvelope/2003/05" xmlns:tib="http://www.tibco.com/bw/xslt/custom-functions" xmlns:ns1="http://www.tibco.com/pe/DeployedVarsType" xmlns:ns4="http://www.tibco.com/schemas/httpRequest/Resources/schemas/Schema.xsd2" xmlns:ns3="http://www.tibco.com/namespaces/tnt/plugins/file/v2" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ns5="http://www.tibco.com/pe/EngineTypes" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:pd="http://xmlns.tibco.com/bw/process/2003">
<xsd:import namespace="http://www.demo.com/author" schemaLocation="/Resources/schemas/author.xsd"/>
<wsdl:import namespace="http://xmlns.example.com/1721737885605" location="/Resources/WSDL/WSDL.wsdl"/>
<pd:name>Processes/xml/author/XmlPOST.process</pd:name>
<pd:startName>Start</pd:startName>
<pd:startType>
<xsd:element name="root">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="pfx:author"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</pd:startType>
<pd:startX>132</pd:startX>
<pd:startY>237</pd:startY>
<pd:returnBindings>
<root>
<status>
<xsl:value-of select="'author added'"/>
</status>
</root>
</pd:returnBindings>
<pd:endName>End</pd:endName>
<pd:endType>
<xsd:element name="root">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="pfx:author" minOccurs="0"/>
<xsd:element name="status" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</pd:endType>
<pd:endX>1141</pd:endX>
<pd:endY>237</pd:endY>
<pd:errorSchemas>
<PostError>
<xsd:element name="xmlPostError">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="message" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</PostError>
</pd:errorSchemas>
<pd:processVariables/>
<pd:targetNamespace>http://xmlns.example.com/1719920186128</pd:targetNamespace>
<pd:activity name="Add Author">
<pd:type>com.tibco.plugin.mapper.MapperActivity</pd:type>
<pd:resourceType>ae.activities.MapperActivity</pd:resourceType>
<pd:x>710</pd:x>
<pd:y>237</pd:y>
<config>
<element ref="pfx:authors"/>
</config>
<pd:inputBindings>
<pfx:authors>
<xsl:copy-of select="$Start/root/pfx:author"/>
<xsl:copy-of select="$Parse-XML/pfx:authors/pfx:author"/>
</pfx:authors>
</pd:inputBindings>
</pd:activity>
<pd:activity name="Add Authors Template">
<pd:type>com.tibco.plugin.xml.XMLRendererActivity</pd:type>
<pd:resourceType>ae.activities.XMLRendererActivity</pd:resourceType>
<pd:x>393</pd:x>
<pd:y>370</pd:y>
<config>
<renderAsText>text</renderAsText>
<validateInput>false</validateInput>
<term ref="pfx:authors"/>
</config>
<pd:inputBindings/>
</pd:activity>
<pd:activity name="FTP Get">
<pd:type>com.tibco.plugin.ftp.FTPGetActivity</pd:type>
<pd:resourceType>ae.activities.FTPGetActivityUI</pd:resourceType>
<pd:x>393</pd:x>
<pd:y>237</pd:y>
<config>
<Timeout>120000</Timeout>
<isBinary>false</isBinary>
<Overwrite>false</Overwrite>
<useProcessData>true</useProcessData>
<SharedUserData>/LocalResources/FTP Connection.sharedftp</SharedUserData>
</config>
<pd:inputBindings>
<FTPGetInputData>
<RemoteFileName>
<xsl:value-of select="$_globalVariables/ns1:GlobalVariables/XMLDatabasePath"/>
</RemoteFileName>
</FTPGetInputData>
</pd:inputBindings>
</pd:activity>
<pd:activity name="FTP Put">
<pd:type>com.tibco.plugin.ftp.FTPPutActivity</pd:type>
<pd:resourceType>ae.activities.FTPPutActivityUI</pd:resourceType>
<pd:x>1005</pd:x>
<pd:y>237</pd:y>
<config>
<Timeout>120000</Timeout>
<FireWall>false</FireWall>
<isBinary>false</isBinary>
<Append>false</Append>
<useProcessData>true</useProcessData>
<Overwrite>true</Overwrite>
<SharedUserData>/LocalResources/FTP Connection.sharedftp</SharedUserData>
</config>
<pd:inputBindings>
<FTPPutInputDataASCII>
<RemoteFileName>
<xsl:value-of select="$_globalVariables/ns1:GlobalVariables/XMLDatabasePath"/>
</RemoteFileName>
<Data>
<xsl:value-of select="$Render-XML/xmlString"/>
</Data>
</FTPPutInputDataASCII>
</pd:inputBindings>
</pd:activity>
<pd:activity name="Generate Error">
<pd:type>com.tibco.pe.core.GenerateErrorActivity</pd:type>
<pd:resourceType>ae.activities.throw</pd:resourceType>
<pd:x>544</pd:x>
<pd:y>81</pd:y>
<config>
<faultName>PostError</faultName>
</config>
<pd:inputBindings>
<pfx2:ActivityInput>
<data>
<xmlPostError>
<message>
<xsl:value-of select="&quot;auhtor with given id already exist&quot;"/>
</message>
</xmlPostError>
</data>
</pfx2:ActivityInput>
</pd:inputBindings>
</pd:activity>
<pd:activity name="InitializeFile">
<pd:type>com.tibco.plugin.file.FileWriteActivity</pd:type>
<pd:resourceType>ae.activities.FileWriteActivity</pd:resourceType>
<pd:x>709</pd:x>
<pd:y>363</pd:y>
<config>
<encoding>text</encoding>
<compressFile>None</compressFile>
</config>
<pd:inputBindings>
<ns:WriteActivityInputTextClass>
<fileName>
<xsl:value-of select="$_globalVariables/ns1:GlobalVariables/XMLDatabasePath"/>
</fileName>
<textContent>
<xsl:value-of select="$Add-Authors-Template/xmlString"/>
</textContent>
</ns:WriteActivityInputTextClass>
</pd:inputBindings>
</pd:activity>
<pd:activity name="Parse XML">
<pd:type>com.tibco.plugin.xml.XMLParseActivity</pd:type>
<pd:resourceType>ae.activities.XMLParseActivity</pd:resourceType>
<pd:x>541</pd:x>
<pd:y>237</pd:y>
<config>
<inputStyle>text</inputStyle>
<xsdVersion>default</xsdVersion>
<validateOutput>true</validateOutput>
<term ref="pfx:authors"/>
</config>
<pd:inputBindings>
<xmlString>
<xsl:value-of select="$FTP-Get/FTPGetOutputASCII/ASCIIData"/>
</xmlString>
</pd:inputBindings>
</pd:activity>
<pd:activity name="Render XML">
<pd:type>com.tibco.plugin.xml.XMLRendererActivity</pd:type>
<pd:resourceType>ae.activities.XMLRendererActivity</pd:resourceType>
<pd:x>870</pd:x>
<pd:y>237</pd:y>
<config>
<renderAsText>text</renderAsText>
<validateInput>false</validateInput>
<term ref="pfx:authors"/>
</config>
<pd:inputBindings>
<xsl:copy-of select="$Add-Author/pfx:authors"/>
</pd:inputBindings>
</pd:activity>
<pd:transition>
<pd:from>Parse XML</pd:from>
<pd:to>Add Author</pd:to>
<pd:lineType>Default</pd:lineType>
<pd:lineColor>-16777216</pd:lineColor>
<pd:conditionType>otherwise</pd:conditionType>
</pd:transition>
<pd:transition>
<pd:from>Add Author</pd:from>
<pd:to>Render XML</pd:to>
<pd:lineType>Default</pd:lineType>
<pd:lineColor>-16777216</pd:lineColor>
<pd:conditionType>always</pd:conditionType>
</pd:transition>
<pd:transition>
<pd:from>Add Authors Template</pd:from>
<pd:to>InitializeFile</pd:to>
<pd:lineType>Default</pd:lineType>
<pd:lineColor>-16777216</pd:lineColor>
<pd:conditionType>always</pd:conditionType>
</pd:transition>
<pd:transition>
<pd:from>InitializeFile</pd:from>
<pd:to>Add Author</pd:to>
<pd:lineType>Default</pd:lineType>
<pd:lineColor>-16777216</pd:lineColor>
<pd:conditionType>always</pd:conditionType>
</pd:transition>
<pd:transition>
<pd:from>Parse XML</pd:from>
<pd:to>Generate Error</pd:to>
<pd:xpathDescription>authorWithGivenIdAlreadyExist</pd:xpathDescription>
<pd:lineType>Default</pd:lineType>
<pd:lineColor>-16777216</pd:lineColor>
<pd:conditionType>xpath</pd:conditionType>
<pd:xpath>boolean($Parse-XML/pfx:authors/pfx:author[@id=$Start/root/pfx:author/@id])</pd:xpath>
</pd:transition>
<pd:transition>
<pd:from>Start</pd:from>
<pd:to>FTP Get</pd:to>
<pd:lineType>Default</pd:lineType>
<pd:lineColor>-16777216</pd:lineColor>
<pd:conditionType>always</pd:conditionType>
</pd:transition>
<pd:transition>
<pd:from>FTP Get</pd:from>
<pd:to>Add Authors Template</pd:to>
<pd:lineType>Default</pd:lineType>
<pd:lineColor>-16777216</pd:lineColor>
<pd:conditionType>otherwise</pd:conditionType>
</pd:transition>
<pd:transition>
<pd:from>FTP Get</pd:from>
<pd:to>Parse XML</pd:to>
<pd:xpathDescription>FileNotEmpty</pd:xpathDescription>
<pd:lineType>Default</pd:lineType>
<pd:lineColor>-16777216</pd:lineColor>
<pd:conditionType>xpath</pd:conditionType>
<pd:xpath>string-length($FTP-Get/FTPGetOutputASCII/ASCIIData)&gt;2</pd:xpath>
</pd:transition>
<pd:transition>
<pd:from>Render XML</pd:from>
<pd:to>FTP Put</pd:to>
<pd:lineType>Default</pd:lineType>
<pd:lineColor>-16777216</pd:lineColor>
<pd:conditionType>always</pd:conditionType>
</pd:transition>
<pd:transition>
<pd:from>FTP Put</pd:from>
<pd:to>End</pd:to>
<pd:lineType>Default</pd:lineType>
<pd:lineColor>-16777216</pd:lineColor>
<pd:conditionType>always</pd:conditionType>
</pd:transition>
</pd:ProcessDefinition>