Hi All,
I've the following use case:
1) Get the normalized message from an input binding component
2) Sending the same message to n destinations ( in my case service engines )
3) Aggregate the result.
To do this i try to use the Static Recipinet List component but at the
moment i've two problems:
1) The Static Recipient List do not propagate informations to be used by
a specific
aggregator
2) I need a separate aggregator to use with the Static Recipient List.
I've solved this patching the code int this way:
1) Patched the code od StaticRecipientList, now propagate three properties:
public static final String RECIPIENT_LIST_COUNT =
"org.apache.servicemix.eip.recipientList.count";
public static final String RECIPIENT_LIST_INDEX =
"org.apache.servicemix.eip.recipientList.index";
public static final String RECIPIENT_LIST_CORRID =
"org.apache.servicemix.eip.recipientList.corrid";
2) This are handled by a RecipientListAggregator class that's has the
same beahviour of
SplitAgggregator. I've write a new class that in the default constructor
overwrite the expression declared as:
public RecipientListAggregator() {
super();
this.count = new PropertyExpression(
StaticRecipientList.RECIPIENT_LIST_COUNT);
this.index = new PropertyExpression(
StaticRecipientList.RECIPIENT_LIST_INDEX);
this.corrId = new PropertyExpression(
StaticRecipientList.RECIPIENT_LIST_CORRID);
}
I'm using smx 3.1.1 and if someone is interested i'll send the code.
Maybe in JIRA.
By the way this new component will be supported by spagic and spagic studio.
Andrea Zoppello