[ 
https://issues.apache.org/activemq/browse/SM-1115?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bruce Snyder resolved SM-1115.
------------------------------

    Fix Version/s: 3.2.2
                   3.3
       Resolution: Fixed

> FilePoller should offer configurable targetOperation
> ----------------------------------------------------
>
>                 Key: SM-1115
>                 URL: https://issues.apache.org/activemq/browse/SM-1115
>             Project: ServiceMix
>          Issue Type: Improvement
>          Components: servicemix-file
>    Affects Versions: 3.1.2
>            Reporter: Oliver Brusberg
>            Assignee: Bruce Snyder
>             Fix For: 3.2.2, 3.3
>
>         Attachments: FilePollerEndpoint.java.txt, servicemix-3.1.patch
>
>
> FilePoller currently does not use a target operation when sending a message 
> to a target service. The operation must be set, for example, when sending a 
> file to a Ode SU. If not set, Ode throws sort of NPE complaining operation is 
> not set.
> FilePoller should offer a targetOperation property configurable via XBeans.
> This can be achieved by adding a targetOperation property to the 
> org.apache.servicemix.file.FilePollerEndpoint.java class which will be passed 
> to the exchange object if set. The following code would do (corresponding 
> patch is appended):
>     ...
>     private QName targetOperation = null;
>     ...
>    public QName getTargetOperation() {
>         return targetOperation;
>     }
>     public void setTargetOperation(QName targetOperation) {
>         this.targetOperation = targetOperation;
>     }
>     ...
>     protected void processFile(File aFile) throws Exception {
>     ...
>             exchange.setInMessage(message);
>             if (getTargetOperation() != null) 
> exchange.setOperation(getTargetOperation()); // <--- NEW
>             marshaler.readMessage(exchange, message, in, name);
>     ...
>     }
> Then, the SU may be configured properly as follows:
>       <f:poller
>               service="proj:inbox"
>               endpoint="inbox"
>               targetService="process:receive"
>               targetOperation="process:receive"
>               file="file:///box/inbox"
>               ...
>       </f:poller>
> In case the attribute is not set in the xbean.xml, the current behaviour is 
> not changed.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to