Could the post pipelines be ordered first and then order the id's?
Robb Greathouse
Partner Enablement
Middleware Business Unit
JBoss, a Division of Red Hat
cellphone 505-507-4906
----- Original Message -----
As a means of not polluting the existing framework too much but to add some
needed
flow of control functionality for post processing, I've been playing around
with
adding a new pipeline, POST. The intent of pipeline POST is to provide a
place
to add a defined order of post processing of rules flagged during the
analysis
phase. I've added attribute "id" to the xpath-value rule. The
'id' is
ref-ed
by rules in POST. Within POST "action" rules are provided with 0 or more ids
to be associated with an action. A list of actions are processed in the
order they
are defined.
The problem I am encountering with this design is that all POST pipeline
contents are
merged into a single POST pipeline class for the analysis phase. This can be
a problem if there is more than 1 POST pipeline acting upon the same ref ID.
For example if switchyard and airport both altered some_common.xml file the
last one who touched it wins. I don't see any easy way to instruct Windup
to only run switchyard if there are multiple POST pipelines present.
There is the same last-in problem if the action is associated directly with
the xpath-value rule
and there is some product specific information being placed in the file.
I suppose I could add a cmd-line option and require the user to point to the
file containing the POST pipeline to run.
I really hate to require that of the user however.
I'm open to suggestions.
Here is a general idea of what the pipeline would look like.
<windup:pipeline type="POST" id="My Switchyard Post Processor
Pipeline">
<windup:post-process
class="org.jboss.post.process.switchyard.SwitchyardController">
<windup:decorators>
<windup:action
class="org.jboss.post.process.switchyard.Service">
<property name="references">
<list>
<value>switchyard:Action:create service</value>
<value>switchyard:Action:set ref</value>
</list>
</property>
</windup:action>
<windup:action
class="org.jboss.post.process.switchyard.Binding">
<property name="references">
<list>
<value>switchyard:Action:binding config
jms-bus</value>
<value>switchyard:Action:binding config
camel</value>
</list>
</property>
</windup:action>
<!--
<windup:action
class="org.jboss.post.process.common.ConfigUpdate">
<property name="references">
<list>
<value>Adjust:some_common.xml file</value>
</list>
</property>
</windup:action>
<windup:decorators>
</windup:post-process>
</windup:pipeline>