Author: gnodet
Date: Mon Jan 26 08:45:36 2009
New Revision: 737653

URL: http://svn.apache.org/viewvc?rev=737653&view=rev
Log:
SM-1778: Improve servicemix-eip schema documentation

Modified:
    servicemix/components/engines/servicemix-eip/trunk/pom.xml
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/EIPComponent.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/EIPEndpoint.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/AsyncBridge.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/ContentBasedRouter.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/ContentEnricher.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/MessageFilter.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/Pipeline.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/Resequencer.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/SplitAggregator.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/StaticRecipientList.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/StaticRoutingSlip.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/WireTap.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/XPathSplitter.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractAggregator.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractContentBasedRouter.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractSplitter.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/ExchangeTarget.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/NamespaceContextImpl.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/RoutingRule.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/SwitchPredicate.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/XPathPredicate.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/resequence/DefaultComparator.java
    
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/resequence/ElementComparator.java

Modified: servicemix/components/engines/servicemix-eip/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/pom.xml?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- servicemix/components/engines/servicemix-eip/trunk/pom.xml (original)
+++ servicemix/components/engines/servicemix-eip/trunk/pom.xml Mon Jan 26 
08:45:36 2009
@@ -146,6 +146,15 @@
         </exclusion>
       </exclusions>
     </dependency>
+    <!-- include sources for the XSD documentation generator -->
+    <dependency>
+      <groupId>org.apache.servicemix</groupId>
+      <artifactId>servicemix-common</artifactId>
+      <version>${servicemix-shared-version}</version>
+      <classifier>sources</classifier>
+      <scope>provided</scope>
+      <optional>true</optional>
+    </dependency>
   </dependencies>
   
   <build>

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/EIPComponent.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/EIPComponent.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/EIPComponent.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/EIPComponent.java
 Mon Jan 26 08:45:36 2009
@@ -41,6 +41,8 @@
     }
 
     /**
+     * A list of endpoints to activate on this component.
+     * 
      * @param endpoints The endpoints to set.
      */
     public void setEndpoints(EIPEndpoint[] endpoints) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/EIPEndpoint.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/EIPEndpoint.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/EIPEndpoint.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/EIPEndpoint.java
 Mon Jan 26 08:45:36 2009
@@ -88,7 +88,12 @@
         return store;
     }
     /**
+     * Configure the store to use.  If none is explicitely configured,
+     * the storeFactory will be used to create one.
+     *
      * @param store The store to set.
+     * @org.apache.xbean.Property
+     *                                         "
      */
     public void setStore(Store store) {
         this.store = store;
@@ -100,13 +105,23 @@
         return storeFactory;
     }
     /**
+     * The store factory to use when creating a store.  If no factory
+     * is explicitely defined, an in-memory only factory will be created.
+     *
      * @param storeFactory The storeFactory to set.
+     * @org.apache.xbean.Property
+     *                                         "
      */
     public void setStoreFactory(StoreFactory storeFactory) {
         this.storeFactory = storeFactory;
     }
     /**
+     * The lock manager to use for this endpoint.  If none is explicitely 
specified
+     * a default implementation will be provided.
+     *
      * @return the lockManager
+     * @org.apache.xbean.Property
+     *                                         "
      */
     public LockManager getLockManager() {
         return lockManager;
@@ -124,7 +139,12 @@
         return timerManager;
     }
     /**
+     * The timer manager to use for this endpoint.  If none is explicitely 
configured,
+     * a default implementation will be provided.
+     *
      * @param timerManager the timerManager to set
+     * @org.apache.xbean.Property
+     *                                         "
      */
     public void setTimerManager(TimerManager timerManager) {
         this.timerManager = timerManager;
@@ -250,6 +270,17 @@
     public Resource getWsdlResource() {
         return wsdlResource;
     }
+
+    /**
+     * When specified, this spring resource will be used to load the
+     * WSDL that will be exposed as a description for this endpoint.
+     * This property can be used to explicitely define the WSDL to be
+     * exposed by this endpoint.  This property takes precedence over
+     * the wsdlExchangeTarget property.
+     *
+     * @param wsdlResource
+     * @org.apache.xbean.Property
+     */
     public void setWsdlResource(Resource wsdlResource) {
         this.wsdlResource = wsdlResource;
     }
@@ -308,6 +339,13 @@
     public ExchangeTarget getWsdlExchangeTarget() {
         return wsdlExchangeTarget;
     }
+
+    /**
+     * An exchange target pointing to a JBI endpoint that
+     * will be used to load the WSDL describing this endpoint.
+     * This can be used when the endpoint proxies another endpoint
+     * so that the same WSDL definition will be exposed."
+     */
     public void setWsdlExchangeTarget(ExchangeTarget wsdlExchangeTarget) {
         this.wsdlExchangeTarget = wsdlExchangeTarget;
     }

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/AsyncBridge.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/AsyncBridge.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/AsyncBridge.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/AsyncBridge.java
 Mon Jan 26 08:45:36 2009
@@ -38,8 +38,20 @@
 import org.apache.servicemix.timers.TimerListener;
 
 /**
- * 
+ * The async bridge pattern is used to bridge an In-Out exchange with two 
In-Only
+ * (or Robust-In-Only) exchanges. This pattern is the opposite of the 
{...@link Pipeline}.
+  <br/>
+ * The AsyncBridge uses a correlation identifier to be able to correlate the 
received
+ * In-Out exchange, the In-Only sent as the request and the In-Only received 
as the response.
+ * Defaults values are provided to configure those correlation ids.  The 
default behavior
+ * is to use the exchange id of the incoming In-Out exchange as the 
correlation id and set
+ * it on the request exchange.  The same property with the same value should 
be present on the
+ * response exchange in order for the AsyncBridge to work.  ServiceMix 
components usually take
+ * care of propagating such properties, but failing to propagate it will 
result in errors.
+ *
  * @author gnodet
+ * @see Pipeline
+ *
  * @org.apache.xbean.XBean element="async-bridge"
  */
 public class AsyncBridge extends EIPEndpoint {
@@ -67,6 +79,13 @@
     }
 
     /**
+     * The timeout property controls the amount of time that the async bridge 
will wait for the response
+     * after having sent the request.  The default value is 0 which means that 
no timeout apply.  If set
+     * to a non zero value, a timer will be started when after the request is 
sent.  When the timer
+     * expires, the In-Out exchange will be sent back with an error status and 
a
+     * {...@link java.util.concurrent.TimeoutException} as the cause of the 
error.
+     * The value represents the number of milliseconds to wait.
+     *
      * @param timeout the timeout to set
      */
     public void setTimeout(long timeout) {
@@ -81,6 +100,12 @@
     }
 
     /**
+     * The target which will be used to send an In-Only or Robust-In-Only 
exchange to.
+     * When receiving an In-Out exchange, the async bridge will create an 
In-Only request
+     * and send it to the specified target.  It then expects another In-Only 
exchange to
+     * come back as the response, which will be set as the Out message on the 
In-Out exchange.
+     * This property is mandatory and must be set to a valid target.
+     *
      * @param target the target to set
      */
     public void setTarget(ExchangeTarget target) {
@@ -95,7 +120,13 @@
     }
 
     /**
+     * The expression used to compute the correlation id used to correlate the 
response and
+     * the request.  The default behavior is to use the exchange id of the 
incoming In-Out
+     * exchange as the correlation id.
+     *
      * @param requestCorrId the requestCorrId to set
+     * @see #setResponseCorrId(org.apache.servicemix.expression.Expression)
+     * @see #setResponseCorrIdProperty(String)
      */
     public void setRequestCorrId(Expression requestCorrId) {
         this.requestCorrId = requestCorrId;
@@ -109,7 +140,12 @@
     }
 
     /**
+     * Name of the property used by default to compute the correlation id on 
the response
+     * exchange.
+     *
      * @param responseCorrIdProperty the responseCorrIdProperty to set
+     * @see #setRequestCorrId(org.apache.servicemix.expression.Expression)
+     * @see #setResponseCorrId(org.apache.servicemix.expression.Expression)
      */
     public void setResponseCorrIdProperty(String responseCorrIdProperty) {
         this.responseCorrIdProperty = responseCorrIdProperty;
@@ -123,7 +159,15 @@
     }
 
     /**
+     * The expression used to compute the correlation id from the response 
exchange.
+     * The value computed by this expression must match the one from the 
{...@link #setRequestCorrId}
+     * expression.  The default value is null, but if no specific expression 
is configured,
+     * an expression will be created which will extract the response 
correlation id from the
+     * {...@link #setResponseCorrIdProperty(String)} property on the exchange.
+     *
      * @param responseCorrId the responseCorrId to set
+     * @see #setResponseCorrIdProperty(String)
+     * @see #setRequestCorrId(org.apache.servicemix.expression.Expression)
      */
     public void setResponseCorrId(Expression responseCorrId) {
         this.responseCorrId = responseCorrId;
@@ -137,6 +181,14 @@
     }
 
     /**
+     * Boolean flag to control if In-Only or Robust-In-Only exchange should be 
used
+     * when sending the request.  The default value is <code>false</code> 
which means
+     * that an In-Only exchange will be used.  When using a Robust-In-Only 
exchange and
+     * when a fault is received, this fault will be sent back to the consumer 
on the In-Out
+     * exchange and the response exchange (if any) would be discarded.
+     * For both In-Only and Robust-In-Only, if the request exchange comes back 
with an Error
+     * status, this error will be conveyed back to the consumer in the same 
way.
+     *
      * @param useRobustInOnly the useRobustInOnly to set
      */
     public void setUseRobustInOnly(boolean useRobustInOnly) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/ContentBasedRouter.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/ContentBasedRouter.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/ContentBasedRouter.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/ContentBasedRouter.java
 Mon Jan 26 08:45:36 2009
@@ -33,7 +33,6 @@
  * @author gnodet
  * @version $Revision: 376451 $
  * @org.apache.xbean.XBean element="content-based-router"
- *                  description="A Content-Based Router"
  */
 public class ContentBasedRouter extends AbstractContentBasedRouter {
 
@@ -50,6 +49,8 @@
     }
 
     /**
+     * The list of routing rules.
+     * 
      * @param rules The rules to set.
      */
     public void setRules(RoutingRule[] rules) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/ContentEnricher.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/ContentEnricher.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/ContentEnricher.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/ContentEnricher.java
 Mon Jan 26 08:45:36 2009
@@ -39,11 +39,10 @@
 
 /**
  * Implementation of the 
- * <a 
href="http://www.enterpriseintegrationpatterns.com/DataEnricher.html";>'Content-Enricher'</a>
 
+ * <a 
href="http://www.enterpriseintegrationpatterns.com/DataEnricher.html";>Content-Enricher</a>
 
  * Pattern. 
  *  
  * @org.apache.xbean.XBean element="content-enricher"
- *                  description="A Content Enricher"
  */
 public class ContentEnricher extends EIPEndpoint {
 
@@ -294,10 +293,21 @@
         return node;
     }
 
+    /**
+     * The target where the enriched exchanges are sent.
+     *
+     * @param target
+     */
     public void setTarget(ExchangeTarget target) {
         this.target = target;
     }
 
+    /**
+     * The target that will receive a copy of the input message and return
+     * an addtitional content.
+     * 
+     * @param enricherTarget
+     */
     public void setEnricherTarget(ExchangeTarget enricherTarget) {
         this.enricherTarget = enricherTarget;
     }

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/MessageFilter.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/MessageFilter.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/MessageFilter.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/MessageFilter.java
 Mon Jan 26 08:45:36 2009
@@ -38,7 +38,6 @@
  * @author gnodet
  * @version $Revision: 376451 $
  * @org.apache.xbean.XBean element="message-filter"
- *                  description="A Message Filter"
  */
 public class MessageFilter extends EIPEndpoint {
 
@@ -73,6 +72,7 @@
     }
 
     /**
+     * The main target destination which will receive the exchange
      * @param target The target to set.
      */
     public void setTarget(ExchangeTarget target) {
@@ -87,6 +87,7 @@
     }
 
     /**
+     * The filter to use on incoming messages
      * @param filter The filter to set.
      */
     public void setFilter(Predicate filter) {
@@ -101,6 +102,14 @@
     }
 
     /**
+     * Indicates if faults and errors from recipients should be sent
+     * back to the consumer.  In such a case, only the first fault or
+     * error received will be reported.
+     * Note that if the consumer is synchronous, it will be blocked
+     * until all recipients successfully acked the exchange, or
+     * a fault or error is reported, and the exchange will be kept in the
+     * store for recovery.
+     *  
      * @param reportErrors The reportErrors to set.
      */
     public void setReportErrors(boolean reportErrors) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/Pipeline.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/Pipeline.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/Pipeline.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/Pipeline.java
 Mon Jan 26 08:45:36 2009
@@ -47,7 +47,6 @@
  * @author gnodet
  * @version $Revision: 376451 $
  * @org.apache.xbean.XBean element="pipeline"
- *                  description="A Pipeline"
  */
 public class Pipeline extends EIPEndpoint {
 
@@ -66,7 +65,7 @@
     private ExchangeTarget target;
     
     /**
-     * The addres of the endpoint to send faults to
+     * The address of the endpoint to send faults to
      */
     private ExchangeTarget faultsTarget;
     
@@ -110,6 +109,7 @@
     }
 
     /**
+     * The address of the target endpoint
      * @param target The target to set.
      */
     public void setTarget(ExchangeTarget target) {
@@ -124,6 +124,7 @@
     }
 
     /**
+     * The address of the endpoint to send faults to
      * @param faultsTarget the faultsTarget to set
      */
     public void setFaultsTarget(ExchangeTarget faultsTarget) {
@@ -138,6 +139,10 @@
     }
 
     /**
+     * When the faultsTarget is not specified,
+     * faults may be sent to the target endpoint
+     * if this flag is set to <code>true</code>
+     *
      * @param sendFaultsToTarget the sendFaultsToTarget to set
      */
     public void setSendFaultsToTarget(boolean sendFaultsToTarget) {
@@ -152,6 +157,8 @@
     }
 
     /**
+     * The adress of the in-out endpoint acting as a transformer
+     *
      * @param transformer The transformer to set.
      */
     public void setTransformer(ExchangeTarget transformer) {
@@ -162,6 +169,11 @@
         return copyProperties;
     }
 
+    /**
+     * Should message properties be copied ?
+     *
+     * @param copyProperties
+     */
     public void setCopyProperties(boolean copyProperties) {
         this.copyProperties = copyProperties;
     }
@@ -170,6 +182,11 @@
         return copyAttachments;
     }
 
+    /**
+     * Should message attachments be copied ?
+     *
+     * @param copyAttachments
+     */
     public void setCopyAttachments(boolean copyAttachments) {
         this.copyAttachments = copyAttachments;
     }

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/Resequencer.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/Resequencer.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/Resequencer.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/Resequencer.java
 Mon Jan 26 08:45:36 2009
@@ -34,6 +34,9 @@
 import org.apache.servicemix.executors.Executor;
 
 /**
+ * This pattern implements the <a 
href="http://www.enterpriseintegrationpatterns.com/Resequencer.html";>Resequencer</a>
 EIP
+ * pattern. The aim of this pattern is to put back into correct order a flow 
of out-of-sequence messages.
+ *
  * @author Martin Krasser
  * 
  * @org.apache.xbean.XBean element="resequencer"
@@ -56,15 +59,32 @@
         this.reader = new SequenceReader(this);
         this.comparator = new DefaultComparator();
     }
-    
+
+    /**
+     * The capacity of this resequencer.  The capacity determines the maximum 
number of message
+     * that will be kept in memory to put the messages back in sequence.  This 
determine how far
+     * two messages can be in the list of messages while still being put back 
in sequence.
+     *
+     * @param capacity
+     */
     public void setCapacity(int capacity) {
         this.capacity = capacity;
     }
-    
+
+    /**
+     * Set the timeout of this resequencer.  This specifies the maximum number 
of milliseconds
+     * that can elapse between two out-of-sync messages.
+     * @param timeout
+     */
     public void setTimeout(long timeout) {
         this.timeout = timeout;
     }
 
+    /**
+     * The comparator used to determine the sequence order of elements.
+     *
+     * @param comparator
+     */
     public void setComparator(SequenceElementComparator<MessageExchange> 
comparator) {
         this.comparator = comparator;
     }

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/SplitAggregator.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/SplitAggregator.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/SplitAggregator.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/SplitAggregator.java
 Mon Jan 26 08:45:36 2009
@@ -69,6 +69,10 @@
     }
 
     /**
+     * The qualified name that will be used as the root xml element when 
building the aggregate.
+     * Messages contents will be appended to this root element as direct 
children or inside
+     * an element dependending on the <code>messageElementName</code> property.
+     *
      * @param aggregateElementName the aggregateElementName to set
      */
     public void setAggregateElementName(QName aggregateElementName) {
@@ -83,6 +87,10 @@
     }
 
     /**
+     * An expression used to compute the correlation ids of incoming messages 
to find
+     * related messages.  The default value is to retrieve the same property 
as the
+     * splitter.
+     *
      * @param corrId the corrId to set
      */
     public void setCorrId(Expression corrId) {
@@ -97,6 +105,10 @@
     }
 
     /**
+     * An expression used to compute the total number of message that the 
aggregate will contain.
+     * The default value is to retrieve the same property as the splitter.  
This property is evaluated
+     * on each incoming message and must always have the same value for all 
messages in the same aggregate.
+     *
      * @param count the count to set
      */
     public void setCount(Expression count) {
@@ -111,6 +123,9 @@
     }
 
     /**
+     * The name of the xml attribute attached to the root element that will 
contain the number of
+     * messages in this aggregate.
+     *
      * @param countAttribute the countAttribute to set
      */
     public void setCountAttribute(String countAttribute) {
@@ -125,6 +140,9 @@
     }
 
     /**
+     * An expression used to compute the index of this message in the 
aggregate.
+     * For a given message, the index must be unique within the aggregate and 
must
+     * range between <code>0</code> and <code>count - 1</code> included.
      * @param index the index to set
      */
     public void setIndex(Expression index) {
@@ -139,6 +157,9 @@
     }
 
     /**
+     * The name of the xml attribute attached to the message element that will 
contain the index of
+     * messages in this aggregate.
+     *
      * @param indexAttribute the indexAttribute to set
      */
     public void setIndexAttribute(String indexAttribute) {
@@ -153,6 +174,10 @@
     }
 
     /**
+     * The qualified name of the xml element used to embed each message
+     * when building the aggregated message.  If <code>null</code>, messages
+     * contents will be appended directly as children of the root element.
+     *
      * @param messageElementName the messageElementName to set
      */
     public void setMessageElementName(QName messageElementName) {
@@ -167,6 +192,9 @@
     }
 
     /**
+     * The maximum amount of time (in milliseconds) that can elapse between 
messages for a single aggregate.
+     * The default value is <code>0</code> which means that the timeout is not 
used at all. 
+     *
      * @param timeout the timeout to set
      */
     public void setTimeout(long timeout) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/StaticRecipientList.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/StaticRecipientList.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/StaticRecipientList.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/StaticRecipientList.java
 Mon Jan 26 08:45:36 2009
@@ -39,7 +39,6 @@
  * @author gnodet
  * @version $Revision: 376451 $
  * @org.apache.xbean.XBean element="static-recipient-list"
- *                  description="A static Recipient List"
  */
 public class StaticRecipientList extends EIPEndpoint {
 
@@ -74,6 +73,8 @@
     }
 
     /**
+     * A list of recipients that will each receive a copy of the input message.
+     *
      * @param recipients The recipients to set.
      */
     public void setRecipients(ExchangeTarget[] recipients) {
@@ -88,6 +89,14 @@
     }
 
     /**
+     * Indicates if faults and errors from recipients should be sent
+     * back to the consumer.  In such a case, only the first fault or
+     * error received will be reported.
+     * Note that if the consumer is synchronous, it will be blocked
+     * until all recipients successfully acked the exchange, or
+     * a fault or error is reported, and the exchange will be kept in the
+     * store for recovery.
+     *
      * @param reportErrors The reportErrors to set.
      */
     public void setReportErrors(boolean reportErrors) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/StaticRoutingSlip.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/StaticRoutingSlip.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/StaticRoutingSlip.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/StaticRoutingSlip.java
 Mon Jan 26 08:45:36 2009
@@ -29,18 +29,17 @@
 /**
  * A RoutingSlip component can be used to route an incoming In-Out exchange
  * through a series of target services.
- * This component implements the 
+ * This endpoint implements the 
  * <a 
href="http://www.enterpriseintegrationpatterns.com/RoutingTable.html";>Routing 
Slip</a> 
  * pattern, with the limitation that the routing table is static.
- * This component only uses In-Out MEPs and errors or faults sent by targets 
are reported
+ * This endpoint only uses In-Out MEPs and errors or faults sent by targets 
are reported
  * back to the consumer, thus interrupting the routing process.
- * In addition, this component is fully asynchronous and uses an exchange 
store to provide
+ * In addition, this endpoint is fully asynchronous and uses an exchange store 
to provide
  * full HA and recovery for clustered / persistent flows. 
  *  
  * @author gnodet
  * @version $Revision: 376451 $
  * @org.apache.xbean.XBean element="static-routing-slip"
- *                  description="A static Routing Slip"
  */
 public class StaticRoutingSlip extends EIPEndpoint {
 
@@ -69,6 +68,8 @@
     }
 
     /**
+     * List of target endpoints used in the RoutingSlip
+     *
      * @param targets The targets to set.
      */
     public void setTargets(ExchangeTarget[] targets) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/WireTap.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/WireTap.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/WireTap.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/WireTap.java
 Mon Jan 26 08:45:36 2009
@@ -43,7 +43,6 @@
  * @author gnodet
  * @version $Revision: 376451 $
  * @org.apache.xbean.XBean element="wire-tap"
- *                  description="A WireTap"
  */
 public class WireTap extends EIPEndpoint {
 
@@ -82,6 +81,8 @@
     }
 
     /**
+     * The main target destination which will receive the exchange
+     *
      * @param target The target to set.
      */
     public void setTarget(ExchangeTarget target) {
@@ -97,6 +98,8 @@
     }
 
     /**
+     * The listener destination for fault messages
+     *
      * @param faultListener The faultListener to set.
      */
     public void setFaultListener(ExchangeTarget faultListener) {
@@ -111,6 +114,8 @@
     }
 
     /**
+     * The listener destination for in messages
+     *
      * @param inListener The inListener to set.
      */
     public void setInListener(ExchangeTarget inListener) {
@@ -125,6 +130,8 @@
     }
 
     /**
+     * The listener destination for out messages
+     *
      * @param outListener The outListener to set.
      */
     public void setOutListener(ExchangeTarget outListener) {
@@ -139,6 +146,10 @@
     }
 
     /**
+     * If copyProperties is <code>true</code>, properties
+     * on the in message will be copied to the out / fault
+     * message before it is sent.
+     * 
      * @param copyProperties the copyProperties to set
      */
     public void setCopyProperties(boolean copyProperties) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/XPathSplitter.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/XPathSplitter.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/XPathSplitter.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/XPathSplitter.java
 Mon Jan 26 08:45:36 2009
@@ -40,7 +40,6 @@
  * @author gnodet
  * @version $Revision: 376451 $
  * @org.apache.xbean.XBean element="xpath-splitter"
- *                  description="An XPath Splitter"
  */
 public class XPathSplitter extends AbstractSplitter {
 
@@ -120,47 +119,54 @@
         return xpathExpression.getXPath();
     }
 
-    /* (non-Javadoc)
-     * @see org.apache.servicemix.expression.JAXPXPathExpression#setFactory(
-     *      javax.xml.xpath.XPathFactory)
+    /**
+     * The XPath factory.  If no factory is explicitely configured, a defaut 
one will be created
+     * using <code>XPathFactory.newInstance()</code>.
+     *
+     * @org.apache.xbean.Property
      */
     public void setFactory(XPathFactory factory) {
         xpathExpression.setFactory(factory);
     }
 
-    /* (non-Javadoc)
-     * @see 
org.apache.servicemix.expression.JAXPXPathExpression#setFunctionResolver(
-     *      javax.xml.xpath.XPathFunctionResolver)
+    /**
+     * The function resolver.
+     *
+     * @org.apache.xbean.Property
      */
     public void setFunctionResolver(XPathFunctionResolver functionResolver) {
         xpathExpression.setFunctionResolver(functionResolver);
     }
 
-    /* (non-Javadoc)
-     * @see 
org.apache.servicemix.expression.JAXPXPathExpression#setNamespaceContext(
-     *      javax.xml.namespace.NamespaceContext)
+    /**
+     * The namespace context to use when evaluating the xpath expression
+     *
+     * @org.apache.xbean.Property
      */
     public void setNamespaceContext(NamespaceContext namespaceContext) {
         xpathExpression.setNamespaceContext(namespaceContext);
     }
 
-    /* (non-Javadoc)
-     * @see 
org.apache.servicemix.expression.JAXPXPathExpression#setTransformer(
-     *      org.apache.servicemix.jbi.jaxp.SourceTransformer)
+    /**
+     * @org.apache.xbean.Property hidden="true"
      */
     public void setTransformer(SourceTransformer transformer) {
         xpathExpression.setTransformer(transformer);
     }
 
-    /* (non-Javadoc)
-     * @see 
org.apache.servicemix.expression.JAXPXPathExpression#setVariableResolver(
-     *      org.apache.servicemix.expression.MessageVariableResolver)
+    /**
+     * The variable resolver.  The default one will enable the use of 
properties on the message, exchange,
+     * as well as making system properties and environment properties 
available.
+     *
+     * @org.apache.xbean.Property
      */
     public void setVariableResolver(MessageVariableResolver variableResolver) {
         xpathExpression.setVariableResolver(variableResolver);
     }
 
     /**
+     * The xpath expression used to split the input message.
+     * 
      * @org.apache.xbean.Property alias="xpath"
      */
     public void setXPath(String xpath) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractAggregator.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractAggregator.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractAggregator.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractAggregator.java
 Mon Jan 26 08:45:36 2009
@@ -90,6 +90,10 @@
     }
 
     /**
+     * Boolean flag that Controls whether the aggregate (when ready) will be 
sent synchronously or not.
+     * On ServiceMix 3.x, this can have an effect upon the flow and 
transaction semantics.
+     * The default value is <code>false</code>.
+     *
      * @param synchronous the synchronous to set
      */
     public void setSynchronous(boolean synchronous) {
@@ -104,6 +108,12 @@
     }
 
     /**
+     * Boolean flag controlling if aggregate timeouts are rescheduled each 
time a new message is added
+     * to the aggregate.  If <code>false</code>, the timeout will expire when 
the specified amount of
+     * time elapsed after the first message is received for this aggregate.  
If <code>true</code>,
+     * the timeout will expire when the specified amount of time elapsed after 
the last message is received.
+     * The default value is <code>false</code>.
+     *
      * @param rescheduleTimeouts the rescheduleTimeouts to set
      */
     public void setRescheduleTimeouts(boolean rescheduleTimeouts) {
@@ -118,6 +128,8 @@
     }
 
     /**
+     * The exchange target that will be used to send the aggregate to.
+     *
      * @param target the target to set
      */
     public void setTarget(ExchangeTarget target) {
@@ -128,6 +140,12 @@
         return copyProperties;
     }
 
+    /**
+     * Copy all properties from the incoming messages to the aggregated
+     * message.  Default value is <code>true</code>.
+     *
+     * @param copyProperties
+     */
     public void setCopyProperties(boolean copyProperties) {
         this.copyProperties = copyProperties;
     }
@@ -136,6 +154,12 @@
         return copyAttachments;
     }
 
+    /**
+     * Copy all attachments from the incoming messages to the aggregated
+     * message.  Default value is <code>true</code>.
+     *
+     * @param copyAttachments
+     */
     public void setCopyAttachments(boolean copyAttachments) {
         this.copyAttachments = copyAttachments;
     }
@@ -210,7 +234,7 @@
     }
 
     /**
-     * Set a new {...@link StoreFactory} for creating the {...@link Store} to 
hold closed aggregations
+     * Set a new {...@link StoreFactory} for creating the {...@link Store} to 
hold closed aggregations.
      * 
      * If it hasn't been set, a simple {...@link MemoryStoreFactory} will be 
used by default.
      * 

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractContentBasedRouter.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractContentBasedRouter.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractContentBasedRouter.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractContentBasedRouter.java
 Mon Jan 26 08:45:36 2009
@@ -52,6 +52,11 @@
         return forwardOperation;
     }
 
+    /**
+     * Forward the operation qname when sending the exchange to the target.
+     * 
+     * @param forwardOperation
+     */
     public void setForwardOperation(boolean forwardOperation) {
         this.forwardOperation = forwardOperation;
     }

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractSplitter.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractSplitter.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractSplitter.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/AbstractSplitter.java
 Mon Jan 26 08:45:36 2009
@@ -86,6 +86,8 @@
     }
 
     /**
+     * Specifies wether exchanges for all parts are sent synchronously or not.
+     *
      * @param synchronous the synchronous to set
      */
     public void setSynchronous(boolean synchronous) {
@@ -100,6 +102,14 @@
     }
 
     /**
+     * Indicates if faults and errors from splitted parts should be sent
+     * back to the consumer.  In such a case, only the first fault or
+     * error received will be reported.
+     * Note that if the consumer is synchronous, it will be blocked
+     * until all parts have been successfully acked, or
+     * a fault or error is reported, and the exchange will be kept in the
+     * store for recovery.
+     *
      * @param reportErrors The reportErrors to set.
      */
     public void setReportErrors(boolean reportErrors) {
@@ -114,6 +124,8 @@
     }
 
     /**
+     * The address of the target endpoint.
+     *
      * @param target The target to set.
      */
     public void setTarget(ExchangeTarget target) {
@@ -128,6 +140,8 @@
     }
 
     /**
+     * Indicates if incoming attachments should be forwarded with the new 
exchanges.
+     *
      * @param forwardAttachments The forwardAttachments to set.
      */
     public void setForwardAttachments(boolean forwardAttachments) {
@@ -142,6 +156,8 @@
     }
 
     /**
+     * Indicates if properties on the incoming message should be forwarded.
+     * 
      * @param forwardProperties The forwardProperties to set.
      */
     public void setForwardProperties(boolean forwardProperties) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/ExchangeTarget.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/ExchangeTarget.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/ExchangeTarget.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/ExchangeTarget.java
 Mon Jan 26 08:45:36 2009
@@ -54,8 +54,9 @@
     }
 
     /**
-     * @param endpoint
-     *            The endpoint to set.
+     * The endpoint name of the target.
+     *
+     * @param endpoint The endpoint to set.
      */
     public void setEndpoint(String endpoint) {
         this.endpoint = endpoint;
@@ -69,14 +70,17 @@
     }
 
     /**
-     * @param interface name
-     *            The interface name to set.
+     * The interface QName implemented by the target
+     *
+     * @param itf The interface name to set.
      */
     public void setInterface(QName itf) {
         this.interf = itf;
     }
 
     /**
+     * The operation QName that will be set on the exchange
+     *
      * @return Returns the operation name.
      */
     public QName getOperation() {
@@ -84,8 +88,9 @@
     }
 
     /**
-     * @param operation
-     *            The operation to set.
+     * The operation QName invoked on this target.
+     *
+     * @param operation The operation to set.
      */
     public void setOperation(QName operation) {
         this.operation = operation;
@@ -99,8 +104,9 @@
     }
 
     /**
-     * @param service
-     *            The service to set.
+     * The service QName of the target
+     *
+     * @param service The service to set.
      */
     public void setService(QName service) {
         this.service = service;
@@ -114,6 +120,8 @@
     }
 
     /**
+     * An URI identifying the target
+     *
      * @param uri the uri to set
      */
     public void setUri(String uri) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/NamespaceContextImpl.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/NamespaceContextImpl.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/NamespaceContextImpl.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/NamespaceContextImpl.java
 Mon Jan 26 08:45:36 2009
@@ -20,10 +20,9 @@
 
 
 /**
- * A simple namespace context with a clean xbean configuration.
+ * A simple namespace context.
  *
  * @org.apache.xbean.XBean element="namespace-context"
- *                         description="A NamespaceContext implementation"
  * @author gnodet
  * @version $Revision: 397796 $
  */
@@ -39,7 +38,7 @@
     }
 
     /**
-     * Keep the getter/setter to keep xbean annotation
+     * Map of namespaces.
      * @param namespaces The namespaces to set.
      */
     public void setNamespaces(Map<String, String> namespaces) {

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/RoutingRule.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/RoutingRule.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/RoutingRule.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/RoutingRule.java
 Mon Jan 26 08:45:36 2009
@@ -54,14 +54,20 @@
     }
 
     /**
+     * The predicate associated to this routing rule.
+     *
      * @param predicate The predicate to set.
+     * @org.apache.xbean.Property
      */
     public void setPredicate(Predicate predicate) {
         this.predicate = predicate;
     }
 
     /**
+     * The target to send the routed exchange to if the predicate matches.
+     *
      * @param target The target to set.
+     * @org.apache.xbean.Property
      */
     public void setTarget(ExchangeTarget target) {
         this.target = target;

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/SwitchPredicate.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/SwitchPredicate.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/SwitchPredicate.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/SwitchPredicate.java
 Mon Jan 26 08:45:36 2009
@@ -30,16 +30,11 @@
 
 
 /**
- * switch (on/off) predicate based on a property that can come from
- * 1. a system property
- * 2. a property from a property file (specified as Spring resource)
- * 3. a property from the exchange
- * 4. swtich on/off via JMX MBean (not yet implemented)
+ * Switch (on/off) predicate based on a property that can come from
+ * a system property, a property from a property file (specified as Spring 
resource),
+ * or a property from the exchange.
  * <p/>
- * the property is interpreted as a boolean value
- * If fromExchange is true --> 3.
- * If propertyResource is specified --> 2.
- * else --> 1.
+ * The property is interpreted as a boolean value.
  *
  * @org.apache.xbean.XBean element="switch-predicate"
  */
@@ -92,6 +87,11 @@
         return on.booleanValue();
     }
 
+    /**
+     * Default value of this predicate
+     *
+     * @org.apache.xbean.Property
+     */
     public void setOn(boolean status) {
         on = Boolean.valueOf(status);
     }
@@ -100,6 +100,11 @@
         return propertyName;
     }
 
+    /**
+     * The name of the property to retrieve
+     *
+     * @org.apache.xbean.Property
+     */
     public void setPropertyName(String newPropertyName) {
         propertyName = newPropertyName;
         dirty = true;
@@ -109,6 +114,11 @@
         return propertyResource;
     }
 
+    /**
+     * A spring resource to load a set of properties from.
+     *
+     * @org.apache.xbean.Property
+     */
     public void setPropertyResource(Resource newPropertyResource) {
         propertyResource = newPropertyResource;
     }
@@ -117,6 +127,11 @@
         return fromExchange;
     }
 
+    /**
+     * Boolean flag indicating that the value is retrieved from the exchange 
properties.
+     *
+     * @org.apache.xbean.Property
+     */
     public void setFromExchange(boolean fromExchange) {
         this.fromExchange = fromExchange;
     }

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/XPathPredicate.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/XPathPredicate.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/XPathPredicate.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/XPathPredicate.java
 Mon Jan 26 08:45:36 2009
@@ -18,12 +18,20 @@
 
 import javax.jbi.messaging.MessageExchange;
 import javax.jbi.messaging.NormalizedMessage;
+import javax.xml.xpath.XPathFactory;
+import javax.xml.xpath.XPathFunctionResolver;
+import javax.xml.namespace.NamespaceContext;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.servicemix.expression.JAXPBooleanXPathExpression;
+import org.apache.servicemix.expression.MessageVariableResolver;
+import org.apache.servicemix.jbi.jaxp.SourceTransformer;
 
 /**
+ * A predicate that verify if the xpath expression evaluated on
+ * the content of the input message is true or not. 
+ *
  * @author gnodet
  * @version $Revision: 376451 $
  * @org.apache.xbean.XBean element="xpath-predicate"
@@ -53,4 +61,62 @@
         }
     }
 
+    /**
+     * The variable resolver.  The default one will enable the use of 
properties on the message, exchange,
+     * as well as making system properties and environment properties 
available.
+     */
+    @Override
+    public void setVariableResolver(MessageVariableResolver 
messageVariableResolver) {
+        super.setVariableResolver(messageVariableResolver);
+    }
+
+    /**
+     * Ensure re-readability of the content if the expression also needs to
+     * access the content.
+     */
+    @Override
+    public void setUseMessageContent(boolean b) {
+        super.setUseMessageContent(b);
+    }
+
+    /**
+     * The xpath expression used to evaluate the predicate.
+     */
+    @Override
+    public void setXPath(String s) {
+        super.setXPath(s);
+    }
+
+    /**
+     * @org.apache.xbean.Property hidden="true"
+     */
+    @Override
+    public void setTransformer(SourceTransformer sourceTransformer) {
+        super.setTransformer(sourceTransformer);
+    }
+
+    /**
+     * The XPath factory.  If no factory is explicitely configured, a defaut 
one will be created
+     * using <code>XPathFactory.newInstance()</code>.
+     */
+    @Override
+    public void setFactory(XPathFactory xPathFactory) {
+        super.setFactory(xPathFactory);
+    }
+
+    /**
+     * The function resolver.
+     */
+    @Override
+    public void setFunctionResolver(XPathFunctionResolver 
xPathFunctionResolver) {
+        super.setFunctionResolver(xPathFunctionResolver);
+    }
+
+    /**
+     * The namespace context to use when evaluating the xpath expression
+     */
+    @Override
+    public void setNamespaceContext(NamespaceContext namespaceContext) {
+        super.setNamespaceContext(namespaceContext);
+    }
 }

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/resequence/DefaultComparator.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/resequence/DefaultComparator.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/resequence/DefaultComparator.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/resequence/DefaultComparator.java
 Mon Jan 26 08:45:36 2009
@@ -20,9 +20,9 @@
 
 /**
  * Compares {...@link MessageExchange} sequence elements based on sequence 
numbers
- * defined by their i...@link NormalizedMessage}s. This comparator works on
+ * defined by their i...@link javax.jbi.messaging.NormalizedMessage}s. This 
comparator works on
  * sequence numbers of type {...@link Long}. Sequence numbers must be stored as
- * {...@link NormalizedMessage} properties. The property name under which the
+ * {...@link javax.jbi.messaging.NormalizedMessage} properties. The property 
name under which the
  * sequence number is stored is configured via this comparator's
  * <code>sequenceNumberKey</code> property.
  * 
@@ -38,27 +38,28 @@
     
     private String sequenceNumberKey;
     
-    private boolean sequenceNumberAsString;
-    
     public DefaultComparator() {
         sequenceNumberKey = SEQUENCE_NUMBER_KEY;
-        sequenceNumberAsString = false;
     }
     
     public String getSequenceNumberKey() {
         return sequenceNumberKey;
     }
 
+    /**
+     * The property name on the input message containing the sequence number
+     * 
+     * @param sequenceNumberPropertyName
+     */
     public void setSequenceNumberKey(String sequenceNumberPropertyName) {
         this.sequenceNumberKey = sequenceNumberPropertyName;
     }
 
-    public boolean isSequenceNumberAsString() {
-        return sequenceNumberAsString;
-    }
-
+    /**
+     * @org.apache.xbean.Property hidden="true
+     */
+    @Deprecated
     public void setSequenceNumberAsString(boolean sequenceNumberAsString) {
-        this.sequenceNumberAsString = sequenceNumberAsString;
     }
 
     public boolean predecessor(MessageExchange o1, MessageExchange o2) {
@@ -81,10 +82,10 @@
 
     private Long getSequenceNumber(MessageExchange exchange) {
         Object number = exchange.getMessage(IN).getProperty(sequenceNumberKey);
-        if (sequenceNumberAsString) {
-            return new Long((String)number);
+        if (number instanceof Long) {
+            return (Long) number;
         } else {
-            return (Long)number;
+            return Long.parseLong(number.toString());
         }
     }
     

Modified: 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/resequence/ElementComparator.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/resequence/ElementComparator.java?rev=737653&r1=737652&r2=737653&view=diff
==============================================================================
--- 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/resequence/ElementComparator.java
 (original)
+++ 
servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/support/resequence/ElementComparator.java
 Mon Jan 26 08:45:36 2009
@@ -41,14 +41,14 @@
     }
     
     /**
-     * @see 
com.icw.ehf.integration.common.collection.SequenceElementComparator#predecessor(java.lang.Object,
 java.lang.Object)
+     * @see SequenceElementComparator#predecessor(java.lang.Object, 
java.lang.Object)
      */
     public boolean predecessor(Element<E> o1, Element<E> o2) {
         return comparator.predecessor(o1.getObject(), o2.getObject());
     }
 
     /**
-     * @see 
com.icw.ehf.integration.common.collection.SequenceElementComparator#successor(java.lang.Object,
 java.lang.Object)
+     * @see SequenceElementComparator#successor(java.lang.Object, 
java.lang.Object)
      */
     public boolean successor(Element<E> o1, Element<E> o2) {
         return comparator.successor(o1.getObject(), o2.getObject());


Reply via email to