Author: gnodet
Date: Thu Oct 26 08:36:55 2006
New Revision: 468040
URL: http://svn.apache.org/viewvc?view=rev&rev=468040
Log:
SM-723: ServiceMixClientFacade should not call done method in send()
Modified:
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/client/ServiceMixClientFacade.java
Modified:
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/client/ServiceMixClientFacade.java
URL:
http://svn.apache.org/viewvc/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/client/ServiceMixClientFacade.java?view=diff&rev=468040&r1=468039&r2=468040
==============================================================================
---
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/client/ServiceMixClientFacade.java
(original)
+++
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/client/ServiceMixClientFacade.java
Thu Oct 26 08:36:55 2006
@@ -138,7 +138,6 @@
public void send(MessageExchange exchange) throws MessagingException {
getDeliveryChannel().send(exchange);
- done(exchange);
}
public void send(Message message) throws MessagingException {
@@ -199,7 +198,6 @@
*/
public void fail(MessageExchange exchange, Fault fault) throws
MessagingException {
exchange.setFault(fault);
- exchange.setStatus(ExchangeStatus.ERROR);
getDeliveryChannel().send(exchange);
}
@@ -207,10 +205,11 @@
* A helper method which fails and completes the given exchange with the
specified error
*/
public void fail(MessageExchange exchange, Exception error) throws
MessagingException {
- exchange.setError(error);
if (error instanceof FaultException) {
FaultException faultException = (FaultException) error;
exchange.setFault(faultException.getFault());
+ } else {
+ exchange.setError(error);
}
getDeliveryChannel().send(exchange);
}
@@ -262,7 +261,9 @@
if (outMessage == null) {
throw new NoOutMessageAvailableException(exchange);
}
- return getMarshaler().unmarshal(exchange, outMessage);
+ Object result = getMarshaler().unmarshal(exchange, outMessage);
+ done(exchange);
+ return result;
}
public ServiceEndpoint resolveEndpointReference(String uri) {