Overview
This page is an attempt to collect in a single place all the extensions that have been made (thorough the use of arguments/options/tec.) to AMQP across the Qpid Java and C++ Brokers.
Ultimately the aim is to try to get both brokers implementing as much common functionality as possible through common extensions - and to advertise which extensions are available in a common way, so that clients can take advantage of functions that are present (or work around functions that are not).
Connection
Connection.Start
Options are carried in the server-properties field
Name |
C++ |
Java |
Description |
---|---|---|---|
qpid.federation_tag |
Y |
Y |
|
Connection.Start-Ok
Options are carried in the client-properties field
Name |
C++ |
Java |
Description |
---|---|---|---|
qpid.client_pid |
Y |
N |
Allows the process id of a client to be reported by mgmt tools |
qpid.client_ppid |
Y |
N |
Allows the parent process id of a client to be reported by mgmt tools |
qpid.client_process |
Y |
N |
Allows the process name of a client to be reported by mgmt tools |
Session
???
Exchange
Exchange.Declare
Name |
C++ |
Java |
Description |
---|---|---|---|
qpid.ive |
Y |
N |
Specifies 'initial value exchange' behaviour is desired |
qpid.msg_sequence |
Y |
N |
Requests that the exchange sequences all messages routed through it and adds the sequence number to the message headers |
Binding
Exchange.Bind
Options are carried in the arguments field
Name |
C++ |
Java |
Description |
---|---|---|---|
qpid.fed.origin |
Y |
Y |
|
x-filter-jms-selector |
|
Y* |
(Java Broker topic exchange only currently) add a JMS Selector to the binding to filter messages against an SQL style query |
Queue
Queue.Declare
Options are carried in the arguments field
Name |
C++ |
Java |
Description |
---|---|---|---|
no-local |
Y |
|
Specifies that the queue should discard any messages enqueued by sessions on the same connection as that which declares the queue |
qpid.policy_type |
Y |
N |
Valid values "reject", "flow_to_disk", "ring", "ring_strict" |
qpid.max_size |
Y |
N |
Defines the maximum number of messages that a queue can contain before the action dictated by the policy_type is taken. |
qpid.max_count |
Y |
N |
Defines the maximum size of message data (in bytes) that a queue can contain before the action dictated by the policy_type is taken. |
qpid.file_count |
Y |
N |
This is really a property of a particular store implementation (sets the number of files to use for the queue's 'journal') |
qpid.file_size |
Y |
N |
This is really a property of a particular store implementation (sets the size of the files to use for the queue's 'journal') |
qpid.last_value_queue |
Y |
N |
Enables last value queue behaviour |
qpid.last_value_queue_no_browse |
Y |
N |
Enables special mode for last value queue behaviour (see QPID-2104) |
qpid.msg_sequence |
Y |
N |
Causes a sequence number to be added to headers of enqueued messages |
qpid.queue_event_generation |
Y |
N |
Causes an event to be generated for enqueues and dequeues, currently used for asynchronous state replication |
qpid.trace.id |
Y |
Y |
Adds the given trace id as to the application header "x-qpid.trace" in messages sent from the queue |
qpid.trace.excludes |
Y |
Y |
Does not send on messages which include one of the given (comma separated) trace ids |
x-qpid-priorities |
|
Y |
Defines the number of distinct priority levels supported by the queue |
x-qpid-maximum-message-age |
|
Y |
Specifies that if the oldest message on the queue gets above this age then alerts should be sent |
x-qpid-maximum-message-size |
|
Y |
Specifies that if the queue gets above this size (in bytes) an alert should be sent |
x-qpid-maximum-message-count |
|
Y |
Specified that if the queue gets above this size (in message count) an alert should be sent |
x-qpid-minimum-alert-repeat-gap |
|
Y |
Specified the minimum time gap between consecutive alerts |
x-qpid-capacity |
|
Y |
Defines the size of the queue in bytes at which flow control on producers will be brought into affect |
x-qpid-flow-resume-capacity |
|
Y |
Defines the size on bytes of the queue when flow control will be rescinded |
Subscription
Message.Subscribe (Basic.Consume in 0-8/0-9)
Name |
C++ |
Java |
Description |
---|---|---|---|
x-filter-jms-selector |
|
Y |
add a JMS Selector to the subscription to filter messages against an SQL style query |
x-filter-no-consume |
|
Y |
(0-8/0-9 only) Implements browsing for 0-8/0-9 - messages sent on the subscription are not acquired |
x-filter-auto-close |
|
Y |
(0-8/0-9 only) The server closes the subscription when the queue becomes empty |