Port server to new interfacePage edited by Martin RitchieOverviewThis component element is comprised of the following sub-tasks:
These tasks are described in more detail below. Refactoring MINA dependenciesTransport layer selection in o.a.q.server.MainCurrently the broker's Main method contains setup code specific to MINA. Main needs to be modified to remove the MINA specific option (NIO, MultiIO, executor pool etc) processing from there. This should be replaced with creation of a Network Driver instance with configuration being picked up & applied in a standardised way. Both bind methods should be moved to a networking class, along with parts of startup() and several of the private inner classes. Separation of AMQP processing from networkingAMQMinaProtocolSession needs to changed to decouple the AMQP semantics from the underlying networking. In particular, the threading model and idle timer related code should be removed. As a result, it should also be renamed. This will implement the ProtocolDriver interface. AMQPFastProtocolHandler and AMQPProtocolProvider should have their AMQP related functionality moved to to the AMQMinaProtocolSession replacement and their networking related functionality moved to the new networking layer. QpidByteBufferAt a number of points in the code we rely on behaviour particular to MINA ByteBuffers, in particular the auto-expanding functionality. To avoid having to rewrite those parts at this stage we should import the MINA ByteBuffer class as QpidByteBuffer and continue to use it as is. Change job processingCurrently a number of unprocessed frames can be stored up in the Event/Job interface. This should be removed so that only one unprocessed frame at a time is allowed to exist. Configuration to select a transportConfiguration needs to be added to support selecting one transport layer over another
Change Notification Preferences
View Online
|
View Change
|
Add Comment
|
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
- [CONF] Apache Qpid > Port server to new interface confluence
