38.2. 如何实施组件


概述

本节概述了实施自定义 Apache Camel 组件所需的步骤。

您需要实施的接口?

在实施组件时,通常需要实施以下 Java 接口:

  • org.apache.camel.Component
  • org.apache.camel.Endpoint
  • org.apache.camel.Consumer
  • org.apache.camel.Producer

另外,还必须实现以下 Java 接口:

  • org.apache.camel.Exchange
  • org.apache.camel.Message

实施步骤

您通常采用自定义组件,如下所示:

  1. 实施 component 接口 TOKEN-TOKENA 组件对象作为端点工厂。您要扩展 DefaultComponent 类并实施 createEndpoint () 方法。

    请参阅 第 39 章 组件接口

  2. 实施 Endpoint 接口 WWN-BUFFERAn 端点代表一个由特定 URI 标识的资源。实施端点时采取的方法取决于消费者是否遵循 事件驱动的 模式、调度轮询 模式还是 轮询 模式。 对于事件驱动的模式,通过扩展 DefaultEndpoint 类并实施以下方法来实施端点:

    • createProducer()
    • createConsumer()

      对于调度的轮询模式,通过扩展 ScheduledPollEndpoint 类和实施以下方法来实施端点:

    • createProducer()
    • createConsumer()

      对于轮询模式,通过扩展 DefaultPollingEndpoint 类并实施以下方法来实施端点:

    • createProducer()
    • createPollConsumer()

      请参阅 第 40 章 端点接口

  3. 实施 Consumer 接口 TOKEN-sandboxed There 是几种不同的方法,您可以采取不同的方法来实现消费者,具体取决于您需要实施哪一种模式(事件驱动、调度轮询或轮询)。消费者实施对于确定用于处理消息交换的线程模型而言也非常重要。

    请参阅 第 41.2 节 “实施消费者接口”

  4. 实施 Producer 接口 TOKEN-strategyTo 实施制作者,您将扩展 DefaultProducer 类并实施 process () 方法。

    请参阅 第 42 章 生产者接口

  5. (可选)实施 Exchange 或 Message interface 只包含 Message interface 来使用 Exchange 和 Message 的实现,但有时可以直接使用它,但有时可能会发现需要自定义这些类型。

    请参阅 第 43 章 交换接口第 44 章 消息接口

安装和配置组件

您可以使用以下方法之一安装自定义组件:

  • 将组件直接添加到 CamelContext TOKEN - 文件中,CamelContext.addComponent () 方法可永久添加组件。
  • 使用 Spring 配置 方式添加组件 » 标准 Spring bean 元素可创建一个组件实例。bean 的 id 属性隐式定义组件前缀。详情请查看 第 38.3.2 节 “配置组件”
  • 将 Apache Camel 配置为自动发现组件 WWN-youAuto-discovery,确保 Apache Camel 根据需要自动加载该组件。详情请查看 第 38.3.1 节 “设置自动发现”
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.