Author: ruwan
Date: Fri Nov 23 11:23:54 2007
New Revision: 597728
URL: http://svn.apache.org/viewvc?rev=597728&view=rev
Log:
Fixing a serialization issue in the Aggregate Mediator
Modified:
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/AggregateMediatorFactory.java
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/AggregateMediatorSerializer.java
Modified:
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/AggregateMediatorFactory.java
URL:
http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/AggregateMediatorFactory.java?rev=597728&r1=597727&r2=597728&view=diff
==============================================================================
---
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/AggregateMediatorFactory.java
(original)
+++
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/AggregateMediatorFactory.java
Fri Nov 23 11:23:54 2007
@@ -65,7 +65,6 @@
private static final QName TIMEOUT_Q = new
QName(XMLConfigConstants.NULL_NAMESPACE, "timeout");
private static final QName MIN_Q = new
QName(XMLConfigConstants.NULL_NAMESPACE, "min");
private static final QName MAX_Q = new
QName(XMLConfigConstants.NULL_NAMESPACE, "max");
- private static final QName TYPE_Q = new
QName(XMLConfigConstants.NULL_NAMESPACE, "type");
private static final QName SEQUENCE_Q = new
QName(XMLConfigConstants.NULL_NAMESPACE, "sequence");
public Mediator createMediator(OMElement elem) {
Modified:
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/AggregateMediatorSerializer.java
URL:
http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/AggregateMediatorSerializer.java?rev=597728&r1=597727&r2=597728&view=diff
==============================================================================
---
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/AggregateMediatorSerializer.java
(original)
+++
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/AggregateMediatorSerializer.java
Fri Nov 23 11:23:54 2007
@@ -64,21 +64,44 @@
OMElement completeCond = fac.createOMElement("completeCondition",
synNS);
if (mediator.getCompleteTimeout() != 0) {
- completeCond.addAttribute("timeout", "" +
mediator.getCompleteTimeout(), nullNS);
+ completeCond.addAttribute("timeout",
Long.toString(mediator.getCompleteTimeout()), nullNS);
}
OMElement messageCount = fac.createOMElement("messageCount", synNS);
if (mediator.getMinMessagesToComplete() != 0) {
- messageCount.addAttribute("min", "" +
mediator.getMinMessagesToComplete(), nullNS);
+ messageCount.addAttribute("min",
Integer.toString(mediator.getMinMessagesToComplete()), nullNS);
}
if (mediator.getMaxMessagesToComplete() != 0) {
- messageCount.addAttribute("max", "" +
mediator.getMaxMessagesToComplete(), nullNS);
+ messageCount.addAttribute("max",
Integer.toString(mediator.getMaxMessagesToComplete()), nullNS);
}
completeCond.addChild(messageCount);
aggregator.addChild(completeCond);
- OMElement aggregatorElem = fac.createOMElement("aggregator", synNS);
-// aggregatorElem.addAttribute("type",
mediator.getAggregator().getClass().getName(), nullNS);
-// aggregatorElem.addAttribute("expression", mediator.get)
+ OMElement onCompleteElem = fac.createOMElement("onComplete", synNS);
+ if (mediator.getAggregationExpression() != null) {
+ onCompleteElem.addAttribute("expression",
mediator.getAggregationExpression().toString(), nullNS);
+ super.serializeNamespaces(onCompleteElem,
mediator.getAggregationExpression());
+ }
+ if (mediator.getOnCompleteSequenceRef() != null) {
+ onCompleteElem.addAttribute("sequence",
mediator.getOnCompleteSequenceRef(), nullNS);
+ } else if (mediator.getOnCompleteSequence() != null) {
+ new SequenceMediatorSerializer().serializeChildren(
+ onCompleteElem,
mediator.getOnCompleteSequence().getList());
+ }
+ aggregator.addChild(onCompleteElem);
+
+ OMElement invalidateElem = fac.createOMElement("invalidate", synNS);
+ invalidateElem.addAttribute("timeout",
Long.toString(mediator.getInvlidateToDestroyTime()), nullNS);
+ if (mediator.getInvalidMsgSequenceRef() != null) {
+ invalidateElem.addAttribute("sequence",
mediator.getInvalidMsgSequenceRef(), nullNS);
+ } else if (mediator.getInvalidMsgSequence() != null) {
+ new SequenceMediatorSerializer().serializeChildren(
+ invalidateElem,
mediator.getInvalidMsgSequence().getList());
+ }
+ aggregator.addChild(invalidateElem);
+
+ if (parent != null) {
+ parent.addChild(aggregator);
+ }
return aggregator;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]