35.2. 实施简单处理器

概述

这部分论述了如何在将交换分配给路由中的下一个处理器前实施一个执行消息处理逻辑的简单处理器。

处理器接口

通过实施 org.apache.camel.Processor 接口来创建简单的处理器。如 例 35.2 “处理器接口” 所示,接口定义了一个方法 process(),它处理交换对象。

例 35.2. 处理器接口

package org.apache.camel;

public interface Processor {
    void process(Exchange exchange) throws Exception;
}

实现处理器接口

要创建简单的处理器,您必须实现处理器接口,并提供 process() 方法的逻辑。例 35.3 “简单处理器实现” 显示了简单的处理器实施概述。

例 35.3. 简单处理器实现

import org.apache.camel.Processor;

public class MyProcessor implements Processor {
    public MyProcessor() { }

    public void process(Exchange exchange) throws Exception
    {
        // Insert code that gets executed *before* delegating
        // to the next processor in the chain.
        ...
    }
}

process() 方法中的所有代码在 exchange 对象被委派给链中的下一个处理器之前执行。

有关如何访问简单处理器中的邮件正文和标头值的示例,请参考 第 35.3 节 “访问消息内容”

将简单的处理器插入到路由中

使用 process() DSL 命令,将简单的处理器插入到路由中。创建自定义处理器实例,然后将此实例作为参数传递给 process() 方法,如下所示:

org.apache.camel.Processor myProc = new MyProcessor();

from("SourceURL").process(myProc).to("TargetURL");