| EngineFailedException | Thrown from Engine API methods that attempted an operation what would have
 resulted in a write of data or other state modification after the engine has
 entered the the failed state. | 
| EngineNotStartedException | Thrown when a read or write operation is attempted on the engine before
 it has been properly started. | 
| EngineNotWritableException | Exception indicating that the engine is not currently accepting input of data | 
| EngineShutdownException | Exception thrown when an option is performed on a closed engine. | 
| EngineStartedException | Thrown when an API method has been called which cannot be allowed to proceed
 due to the engine having already been started and doesn't allow modification to
 the resource in question after that point. | 
| EngineStateException | Root type for exceptions thrown from the engine due to state violations | 
| FrameDecodingException | Exception thrown when the engine cannot decode an incoming frame due to some
 error either with the encoding itself or the contents which cause a specification
 violation. | 
| FrameEncodingException | Exception thrown when the engine cannot encode a frame from a given performative
 and or payload combination. | 
| IdleTimeoutException | Error thrown when the Engine idle checking detects a timeout condition and
 shuts down the engine and places it in an error state. | 
| MalformedAMQPHeaderException | Exception thrown when an incoming AMQP Header response does not conform to the
 AMQP Header specification. | 
| ProtocolViolationException | Error thrown when there has been a violation of the AMQP specification | 
| ProtonException | Base Proton Exception type that backs all the various exceptions that
 are thrown from within the Proton Engine. | 
| ProtonIOException | Thrown when an unchecked IO exception is encountered from a write event that
 invokes an outside write handler from the engine. |