# Module `proton`

## Module Summary

`AnnotationDict` | A dictionary that only takes `symbol` or `ulong` types as a key.
`Condition` | An AMQP Condition object.
`Connection` | A representation of an AMQP connection.
`Data` | Provides an interface for decoding, extracting, creating, and encoding arbitrary AMQP data.
`Delivery` | Tracks and/or records the delivery of a message over a link.
`Disposition` | A delivery state.
`Endpoint` | Abstract class from which `Connection`, `Session` and `Link` are derived, and which defines the state of these classes.
`Event` | Notification of a state change in the protocol engine.
`EventType` | Connects an event number to an event name, and is used internally by `Event` to represent all known event types.
`Link` | A representation of an AMQP link (a unidirectional channel for transferring messages), of which there are two concrete implementations, `Sender` and `Receiver`.
`Message` | A mutable holder of message content.
`PropertyDict` | A dictionary that only takes `symbol` types as a key.
`Receiver` | A link over which messages are received.
`SASL` | The SASL layer is responsible for establishing an authenticated and/or encrypted tunnel over which AMQP frames are passed between peers.
`Sender` | A link over which messages are sent.
`Session` | A container of links.
`SSL` | An SSL session associated with a transport.
`SSLDomain` | An SSL configuration domain, used to hold the SSL configuration for one or more SSL sessions.
`SSLSessionDetails` | Unique identifier for the SSL session.
`SymbolList` | A list that can only hold `symbol` elements.
`Terminus` | A source or target for messages.
`Transport` | A network channel supporting an AMQP connection.
`Url` | DEPRECATED Simple URL parser/constructor.

### Exceptions

`ConnectionException` | An exception class raised when exceptions or errors related to a connection arise.
`DataException` | The DataException class is the root of the Data exception hierarchy.
`LinkException` | An exception class raised when exceptions or errors related to a link arise.
`MessageException` | The MessageException class is the root of the message exception hierarchy.
`ProtonException` | The root of the proton exception hierarchy.
`SessionException` | An exception class raised when exceptions or errors related to a session arise.
`SSLUnavailable` | An exception class raised when exceptions or errors related to SSL availability arise.
`SSLException` | An exception class raised when exceptions or errors related to SSL usage arise.
`Timeout` | A timeout exception indicates that a blocking operation has timed out.
`Interrupt` | An interrupt exception indicates that a blocking operation was interrupted.
`TransportException` | An exception class raised when exceptions or errors related to the AMQP transport arise.

### AMQP Types

NOTE: Some AMQP types are represented by native Python types. This table contains only classes for non-native Python types defined in this module. See AMQP Types for a full list of AMQP types.

`Array` | An AMQP array, a sequence of AMQP values of a single type.
`byte` | The byte AMQP type.
`char` | The char AMQP type.
`Described` | A described AMQP type.
`decimal32` | The decimal32 AMQP type.
`decimal64` | The decimal64 AMQP type.
`decimal128` | The decimal128 AMQP type.
`float32` | The float AMQP type.
`int32` | The signed int AMQP type.
`short` | The short AMQP type.
`symbol` | The symbol AMQP type.
`timestamp` | The timestamp AMQP type.
`ubyte` | The unsigned byte AMQP type.
`uint` | The unsigned int AMQP type.
`ulong` | The ulong AMQP type.
`ushort` | The unsigned short AMQP type.

## Module Detail