Lately I am working on a scanning tool package in WM 7.1.2. Part of it requires a functionality where we get the dependents of a particular service and what inputs are passed. In detail…
Service GunaCommons:getProperty (inputs propertyFilename, propertyName) is called 3 times inside a flow AS2Impl.subflows:sendAS2Data.
- Invoke-1 propertyName set to “senderID”
- Invoke-2 propertyName set to “emailAddress”
- Invoke-3 propertyName set to “senderCompany”
Now I want to scan through this second service and get all the values set to the input “propertyName” and comeup with the list “senderID, emailAddress, senderCompany”.
I have been searching through the WM API jars for any obvious functions, but no luck and its tedious. Does any of you had tried this kind of a thing???
You’d need to use undocumented methods to retrieve this sort of info.
You are trying to get the possible run time values for a particular input parameter in a service. The input of the service while being invoked can be stored as pipeline data (using savePipelineToFile service, or using the flow service property from 8.x version). You might have to read the pipeline file created to check for possible values.
I don’t see how you’d reliably get the information you need other than at runtime (in which case you could use the auditing/logging).
The trouble is that because the pipeline gets passed through as a whole: you’d have no real idea what the values are going to be unless you knew that they were set as part of the invoke (in which case you could run an XPath across the flow code or use the undocumented internal services to retrieve that info).