Chapter 1. Extensions overview
1.1. Support level definitions
New features, services, and components go through a number of support levels before inclusion in Camel Extensions for Quarkus as fully supported for production use. This is to ensure the right balance between providing the enterprise stability expected of our offerings with the need to allow our customers and partners to experiment with new Camel Extensions for Quarkus technologies while providing feedback to help guide future development activities.
Type | Description |
---|---|
Community Support | As part of Red Hat’s commitment to upstream first, integration of new extensions into our Camel Extensions for Quarkus distribution begins in the upstream community. While these extensions have been tested and documented upstream, we have not reviewed the maturity of these extensions and they may not be formally supported by Red Hat in future product releases. Note Community extensions are listed on the extensions reference page of the Camel Quarkus community project. |
Technology Preview | Technology Preview features provide early access to upcoming product innovations, enabling you to test functionality and provide feedback during the development process. However, these features are not fully supported under Red Hat Subscription Level Agreements, may not be functionally complete, and are not intended for production use. As Red Hat considers making future iterations of Technology Preview features generally available, we will attempt to resolve any issues that customers experience when using these features. |
Production Support | Production Support extensions are shipped in a formal Red Hat release and are fully supported. There are no documentation gaps and extensions have been tested on all supported configurations. |
1.2. Supported extensions
There are 48 extensions.
Extension | Artifact | JVM Support Level | Native Support Level | Description |
---|---|---|---|---|
Attachments | Production Support | Production Support | Support for attachments on Camel messages. | |
AWS 2 DynamoDB | Production Support | Production Support | Store and retrieve data from AWS DynamoDB service or receive messages from AWS DynamoDB Stream using AWS SDK version 2.x. | |
AWS 2 Kinesis | Production Support | Production Support | Consume and produce records from AWS Kinesis Streams using AWS SDK version 2.x. | |
AWS 2 Lambda | Production Support | Production Support | Manage and invoke AWS Lambda functions using AWS SDK version 2.x. | |
AWS 2 S3 Storage Service | Production Support | Production Support | Store and retrieve objects from AWS S3 Storage Service using AWS SDK version 2.x. | |
AWS 2 Simple Notification System (SNS) | Production Support | Production Support | Send messages to an AWS Simple Notification Topic using AWS SDK version 2.x. | |
AWS 2 Simple Queue Service (SQS) | Production Support | Production Support | Sending and receive messages to/from AWS SQS service using AWS SDK version 2.x. | |
Azure Storage Blob | Technology Preview | Technology Preview | Store and retrieve blobs from Azure Storage Blob Service using SDK v12. | |
Azure Storage Queue | Technology Preview | Technology Preview | The azure-storage-queue component is used for storing and retrieving the messages to/from Azure Storage Queue using Azure SDK v12. | |
Bean | Production Support | Production Support | Invoke methods of Java beans | |
Bean Validator | Production Support | Production Support | Validate the message body using the Java Bean Validation API. | |
Cassandra CQL | Production Support | Production Support | Integrate with Cassandra 2.0 using the CQL3 API (not the Thrift API). Based on Cassandra Java Driver provided by DataStax. | |
Core | Production Support | Production Support | Camel core functionality and basic Camel languages: Constant, ExchangeProperty, Header, Ref, Ref, Simple and Tokeinze | |
Cron | Production Support | Production Support | A generic interface for triggering events at times specified through the Unix cron syntax. | |
Direct | Production Support | Production Support | Call another endpoint from the same Camel Context synchronously. | |
FHIR | Production Support | Production Support | Exchange information in the healthcare domain using the FHIR (Fast Healthcare Interoperability Resources) standard. | |
File | Production Support | Production Support | Read and write files. | |
FTP | Production Support | Production Support | Upload and download files to/from FTP or SFTP servers. | |
HTTP | Production Support | Production Support | Send requests to external HTTP servers using Apache HTTP Client 4.x. | |
Infinispan | Technology Preview | Technology Preview | Read and write from/to Infinispan distributed key/value store and data grid. | |
Jira | Production Support | Production Support | Interact with JIRA issue tracker. | |
JMS | Production Support | Production Support | Send and receive messages to/from a JMS Queue or Topic. | |
JTA | Production Support | Production Support | Enclose Camel routes in the transactions using Java Transaction API (JTA) and Narayana transaction manager | |
Kafka | Production Support | Production Support | Sent and receive messages to/from an Apache Kafka broker. | |
Kamelet | Production Support | Production Support | The Kamelet Component provides support for interacting with the Camel Route Template engine. | |
Log | Production Support | Production Support | Log messages to the underlying logging mechanism. | |
| Production Support | Production Support | Send and receive emails using imap, pop3 and smtp protocols. | |
MicroProfile Fault Tolerance | Production Support | Production Support | Circuit Breaker EIP using MicroProfile Fault Tolerance. | |
MicroProfile Health | Production Support | Production Support | Bridging Eclipse MicroProfile Health with Camel health checks. | |
MicroProfile Metrics | Production Support | Production Support | Expose metrics from Camel routes. | |
MLLP | Production Support | Production Support | Communicate with external systems using the MLLP protocol. | |
Mock | Production Support | Production Support | Test routes and mediation rules using mocks. | |
MongoDB | Technology Preview | Technology Preview | Perform operations on MongoDB documents and collections. | |
Netty | Production Support | Production Support | Socket level networking using TCP or UDP with the Netty 4.x. | |
OpenAPI Java | Production Support | Production Support | Rest-dsl support for using OpenAPI doc | |
Paho | Production Support | Production Support | Communicate with MQTT message brokers using Eclipse Paho MQTT Client. | |
Paho MQTT 5 | Production Support | Production Support | Communicate with MQTT message brokers using Eclipse Paho MQTT v5 Client. | |
Platform HTTP | Production Support | Production Support | Expose HTTP endpoints using the HTTP server available in the current platform. | |
Quartz | Production Support | Production Support | Schedule sending of messages using the Quartz 2.x scheduler. | |
Rest | Production Support | Production Support | Expose REST services and their OpenAPI Specification or call external REST services. | |
Salesforce | Production Support | Production Support | Communicate with Salesforce using Java DTOs. | |
SEDA | Production Support | Production Support | Asynchronously call another endpoint from any Camel Context in the same JVM. | |
Slack | Technology Preview | Technology Preview | Send and receive messages to/from Slack. | |
SQL | Production Support | Production Support | Perform SQL queries using Spring JDBC. | |
Telegram | Technology Preview | Technology Preview | Send and receive messages acting as a Telegram Bot API. | |
Timer | Production Support | Production Support | Generate messages in specified intervals using java.util.Timer. | |
XQuery | Production Support | Production Support | Query and/or transform XML payloads using XQuery and Saxon. | |
Zip File | Production Support | Production Support | Generate messages in specified intervals using java.util.Timer. |
1.3. Supported data formats
There are 9 data formats.
Extension | Artifact | JVM Support Level | Native Support Level | Description |
---|---|---|---|---|
Avro | Production Support | Production Support | Serialize and deserialize messages using Apache Avro binary data format. | |
Avro Jackson | Production Support | Production Support | Marshal POJOs to Avro and back using Jackson. | |
Bindy | Production Support | Production Support | Marshal and unmarshal between POJOs and Comma separated values (CSV) format using Camel Bindy Marshal and unmarshal between POJOs and fixed field length format using Camel Bindy Marshal and unmarshal between POJOs and key-value pair (KVP) format using Camel Bindy | |
HL7 | Production Support | Production Support | Marshal and unmarshal HL7 (Health Care) model objects using the HL7 MLLP codec. | |
Jackson | Production Support | Production Support | Marshal POJOs to JSON and back using Jackson | |
JacksonXML | Production Support | Production Support | Unmarshal a XML payloads to POJOs and back using XMLMapper extension of Jackson. | |
JSON Gson | Production Support | Production Support | Marshal POJOs to JSON and back using Gson. | |
Protobuf Jackson | Production Support | Production Support | Marshal POJOs to Protobuf and back using Jackson. | |
SOAP dataformat | Production Support | Production Support | Marshal Java objects to SOAP messages and back. |
1.4. Supported languages
There are 12 languages.
Extension | Artifact | JVM Support Level | Native Support Level | Description |
---|---|---|---|---|
Bean method | Production Support | Production Support | Invoke methods of Java beans | |
Constant | Production Support | Production Support | A fixed value set only once during the route startup. | |
ExchangeProperty | Production Support | Production Support | Get the value of named Camel Exchange property. | |
File | Production Support | Production Support | For expressions and predicates using the file/simple language. | |
Header | Production Support | Production Support | Get the value of the named Camel Message header. | |
HL7 Terser | Production Support | Production Support | Marshal and unmarshal HL7 (Health Care) model objects using the HL7 MLLP codec. | |
JSON Path | Production Support | Production Support | Evaluate a JsonPath expression against a JSON message body. | |
Ref | Production Support | Production Support | Look up an expression in the Camel Registry and evaluate it. | |
Simple | Production Support | Production Support | Evaluate Camel’s built-in Simple language expression against the Camel Exchange. | |
Tokenize | Production Support | Production Support | Tokenize text payloads using the specified delimiter patterns. | |
XPath | Production Support | Production Support | Evaluate an XPath expression against an XML payload. | |
XQuery | Production Support | Production Support | Query and/or transform XML payloads using XQuery and Saxon. |