Red Hat Training

A Red Hat training course is available for Red Hat Fuse

Chapter 45. Component Interface


This chapter describes how to implement the Component interface.

45.1. The Component Interface


To implement a Apache Camel component, you must implement the org.apache.camel.Component interface. An instance of Component type provides the entry point into a custom component. That is, all of the other objects in a component are ultimately accessible through the Component instance. Figure 45.1, “Component Inheritance Hierarchy” shows the relevant Java interfaces and classes that make up the Component inheritance hierarchy.

Figure 45.1. Component Inheritance Hierarchy

Component inheritance hierarchy

The Component interface

Example 45.1, “Component Interface” shows the definition of the org.apache.camel.Component interface.

Example 45.1. Component Interface

package org.apache.camel;

public interface Component {
    CamelContext getCamelContext();
    void setCamelContext(CamelContext context);

    Endpoint createEndpoint(String uri) throws Exception;

Component methods

The Component interface defines the following methods:
  • getCamelContext() and setCamelContext()—References the CamelContext to which this Component belongs. The setCamelContext() method is automatically called when you add the component to a CamelContext.
  • createEndpoint()—The factory method that gets called to create Endpoint instances for this component. The uri parameter is the endpoint URI, which contains the details required to create the endpoint.