[
https://issues.apache.org/activemq/browse/AMQCPP-65?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_39001
]
Timothy Bish commented on AMQCPP-65:
------------------------------------
Refactored the Transport layer a bit, creation of a transport is now done by
the TransportBuilder class. This class know how to wire the transports
correctly.
Had to touch a lot of code to get all this working, will need to rerun leak
checks etc.
> Refactor transport creation
> ---------------------------
>
> Key: AMQCPP-65
> URL: https://issues.apache.org/activemq/browse/AMQCPP-65
> Project: ActiveMQ C++ Client
> Issue Type: Improvement
> Environment: NA
> Reporter: Nathan Mittler
> Assigned To: Nathan Mittler
> Priority: Minor
> Fix For: 2.1
>
>
> Currently, the chain of transports (TcpTransport, ResponseCorrelator,
> IOTransport, etc) is wired together in the TcpTransportFactory class. It
> would be cleaner to have an AggregateTransportFactory that is responsible for
> "wiring" the chain.
> The current chain of transports is as follows:
> ResponseCorrelator->TcpTransport->IOTransport
> In addition, by moving the task of wiring outside of the TcpTransportFactory,
> we give ourselves the ability to support multiple network protocols such as
> UDP.
> The new AggregateTransportFactory would always be used by the library,
> regardless of the transport options provided by the user. It would be
> responsible for reading the options and adjusting its wiring accordingly. A
> list of notional parameters might include:
> transport.networkProtocol - Currently could only be "tcp". If not provided,
> defaults to "tcp".
> transport.useAsyncSend - If "true" an AsyncSendTransport is wired into the
> chain. Defaults to "false".
> transport.enableLogging - If "true" adds a transport filter that logs the
> data being sent/received. Defaults to "false".
> Perhaps we could even define the order in which the transports are wired.
> Maybe a configuration file could be read in that defines where to stick the
> transports in the chain.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.