Chapter 1. Overview
Red Hat build of Apache Qpid ProtonJ2 is a lightweight AMQP 1.0 library for the Java platform. It enables you to write Java applications that send and receive AMQP messages.
Red Hat build of Apache Qpid ProtonJ2 is part of AMQ Clients, a suite of messaging libraries supporting multiple languages and platforms. For information on available clients, see AMQ Clients.
1.1. Key features Copy linkLink copied to clipboard!
- SSL/TLS for secure communication
- Flexible SASL authentication
- Seamless conversion between AMQP and native data types
- Access to all the features and capabilities of AMQP 1.0
- An integrated development environment with full IntelliSense API documentation
1.2. Supported standards and protocols Copy linkLink copied to clipboard!
Red Hat build of Apache Qpid ProtonJ2 supports the following industry-recognized standards and network protocols:
- Version 1.0 of the Advanced Message Queueing Protocol (AMQP)
- Versions 1.0, 1.1, 1.2, and 1.3 of the Transport Layer Security (TLS) protocol, the successor to SSL
- Simple Authentication and Security Layer (SASL) mechanisms ANONYMOUS, PLAIN, and EXTERNAL
- Modern TCP with IPv6
1.3. Supported configurations Copy linkLink copied to clipboard!
Refer to Red Hat AMQ Supported Configurations on the Red Hat Customer Portal for current information regarding Red Hat build of Apache Qpid ProtonJ2 supported configurations.
1.4. Terms and concepts Copy linkLink copied to clipboard!
This section introduces the core API entities and describes how they operate together.
| Entity | Description |
|---|---|
| Client | A context for creating Connections to Brokers |
| Connection | A channel for communication between two peers on a network |
| Session | A context for sending and receiving messages |
| Sender | A channel for sending messages to a target |
| Receiver | A channel for receiving messages from a source |
| Delivery | A Delivery received from a IReceiver that can be acted upon and contains a message |
| Message | A mutable holder of application data |
Red Hat build of Apache Qpid ProtonJ2 sends and receives messages. Messages are transferred to Brokers via Senders and from Brokers using Receivers. Received Messages are wrapped in a Delivery which can be Accepted, Rejected or Released.
Senders and Receivers are created using Connections which are in turn created using Clients. Sessions are established over Connections.
1.5. Document conventions Copy linkLink copied to clipboard!
The sudo command
In this document, sudo is used for any command that requires root privileges. Exercise caution when using sudo because any changes can affect the entire system. For more information about sudo, see Using the sudo command.
File paths
In this document, all file paths are valid for Linux, UNIX, and similar operating systems (for example, /home/andrea). On Microsoft Windows, you must use the equivalent Windows paths (for example, C:\Users\andrea).
Variable text
This document contains code blocks with variables that you must replace with values specific to your environment. Variable text is enclosed in arrow braces and styled as italic monospace. For example, in the following command, replace <project-dir> with the value for your environment:
$ cd <project-dir>