You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2013/03/18 23:19:54 UTC

svn commit: r1458042 [1/6] - in /qpid/branches/QPID-4659/qpid/java: bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/ bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/upgrade/ bdbstore/src/test/java/org/apache/qpid/ser...

Author: rgodfrey
Date: Mon Mar 18 22:19:50 2013
New Revision: 1458042

URL: http://svn.apache.org/r1458042
Log:
QPID-4659 : [Java Broker] refactor to separate protocol dependent from protocol independent classes

Added:
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageConverter.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageMetaDataType.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/store/MessageMetaDataType.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/ProtocolEngineCreator.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/LinkModel.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/LinkRegistry.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/LinkRegistry.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MessageConverterRegistry.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_0_10_to_1_0.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_1_0_to_0_10.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_8_v0_10/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_8_v0_10/MessageConverter_0_10_to_0_8.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_8_v0_10/MessageConverter_0_8_to_0_10.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_8_v1_0/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_8_v1_0/MessageConverter_0_8_to_1_0.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_8_v1_0/MessageConverter_1_0_to_0_8.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/CreditCreditManager.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/flow/CreditCreditManager.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/ExplicitAcceptDispositionChangeListener.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/ExplicitAcceptDispositionChangeListener.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/FlowCreditManager_0_10.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/flow/FlowCreditManager_0_10.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/ImplicitAcceptDispositionChangeListener.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/ImplicitAcceptDispositionChangeListener.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageAcceptCompletionListener.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/MessageAcceptCompletionListener.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageMetaDataType_0_10.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageMetaData_0_10.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageMetaData_0_10.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageTransferHeader.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageTransferHeader.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageTransferMessage.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageTransferMessage.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/ProtocolEngineCreator_0_10.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/ProtocolEngine_0_10.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ProtocolEngine_0_10.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/ServerConnection.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerConnection.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/ServerConnectionDelegate.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerConnectionDelegate.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/ServerSession.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerSession.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/ServerSessionDelegate.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerSessionDelegate.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/Subscription_0_10.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/Subscription_0_10.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/TransferMessageReference.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/message/TransferMessageReference.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_10/WindowCreditManager.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/flow/WindowCreditManager.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQChannel.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQMessage.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/message/AMQMessage.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQMessageReference.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/message/AMQMessageReference.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQProtocolEngine.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQProtocolEngine.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/AMQProtocolSession.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQProtocolSession.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/ContentHeaderBodyAdapter.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/message/ContentHeaderBodyAdapter.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/ExtractResendAndRequeue.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/ExtractResendAndRequeue.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/IncomingMessage.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/IncomingMessage.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/MessageMetaData.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageMetaData.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/MessageMetaDataType_0_8.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/ProtocolEngineCreator_0_8.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/ProtocolEngineCreator_0_9.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/ProtocolEngineCreator_0_9_1.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/SubscriptionFactory.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/SubscriptionFactory.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/SubscriptionFactoryImpl.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/SubscriptionFactoryImpl.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/SubscriptionImpl.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/SubscriptionImpl.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/ack/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/ack/UnacknowledgedMessageMap.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/ack/UnacknowledgedMessageMap.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/ack/UnacknowledgedMessageMapImpl.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/ack/UnacknowledgedMessageMapImpl.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/
      - copied from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/handler/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/output/
      - copied from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/output/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/state/
      - copied from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/state/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageConverter_to_1_0.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageMetaDataType_1_0.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageMetaData_1_0.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageMetaData_1_0.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/ProtocolEngineCreator_1_0.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/ProtocolEngineCreator_1_0_SASL.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/ProtocolEngine_1_0_0.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ProtocolEngine_1_0_0.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/ProtocolEngine_1_0_0_SASL.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ProtocolEngine_1_0_0_SASL.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/store/MessageMetaDataTypeRegistry.java   (with props)
    qpid/branches/QPID-4659/qpid/java/broker/src/main/resources/META-INF/services/org.apache.qpid.server.plugin.MessageConverter
    qpid/branches/QPID-4659/qpid/java/broker/src/main/resources/META-INF/services/org.apache.qpid.server.plugin.MessageMetaDataType
    qpid/branches/QPID-4659/qpid/java/broker/src/main/resources/META-INF/services/org.apache.qpid.server.plugin.ProtocolEngineCreator
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/v0_10/
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/v0_10/ServerSessionTest.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/transport/ServerSessionTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/v0_10/WindowCreditManagerTest.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/flow/WindowCreditManagerTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/v0_8/
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/v0_8/AMQChannelTest.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/AMQChannelTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/v0_8/AckTest.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/AckTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/v0_8/ExtractResendAndRequeueTest.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/ExtractResendAndRequeueTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/v0_8/InternalTestProtocolSession.java
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/InternalTestProtocolSession.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/v0_8/MaxChannelsTest.java   (contents, props changed)
      - copied, changed from r1457505, qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/MaxChannelsTest.java
Removed:
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/ExtractResendAndRequeue.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/ack/UnacknowledgedMessageMap.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/ack/UnacknowledgedMessageMapImpl.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/flow/BytesOnlyCreditManager.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/flow/CreditCreditManager.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/flow/FlowCreditManager_0_10.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/flow/MessageAndBytesCreditManager.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/flow/WindowCreditManager.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/handler/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/message/AMQMessage.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/message/AMQMessageReference.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/message/ContentHeaderBodyAdapter.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageMetaData.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageMetaData_0_10.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageMetaData_1_0.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageTransferHeader.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageTransferMessage.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/message/TransferMessageReference.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/output/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQProtocolEngine.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQProtocolSession.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ProtocolEngine_0_10.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ProtocolEngine_1_0_0.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ProtocolEngine_1_0_0_SASL.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/output/HeaderPropertiesConverter.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/LinkRegistry.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/IncomingMessage.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/state/
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/store/MessageMetaDataType.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/ExplicitAcceptDispositionChangeListener.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/ImplicitAcceptDispositionChangeListener.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/MessageAcceptCompletionListener.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/SubscriptionFactory.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/SubscriptionFactoryImpl.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/SubscriptionImpl.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/Subscription_0_10.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerConnection.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerConnectionDelegate.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerSession.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerSessionDelegate.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/AMQChannelTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/ExtractResendAndRequeueTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/flow/WindowCreditManagerTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/InternalTestProtocolSession.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/protocol/MaxChannelsTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/AckTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/transport/ServerSessionTest.java
Modified:
    qpid/branches/QPID-4659/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/MessageMetaDataBinding.java
    qpid/branches/QPID-4659/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom4To5.java
    qpid/branches/QPID-4659/qpid/java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStoreTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/actors/AMQPChannelActor.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/actors/AMQPConnectionActor.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/subjects/ChannelLogSubject.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/subjects/ConnectionLogSubject.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQConnectionModel.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngine.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngineFactory.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/AccessRequestHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/BasicAckMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/BasicCancelMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/BasicConsumeMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/BasicGetMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/BasicPublishMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/BasicQosHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/BasicRecoverMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/BasicRecoverSyncMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/BasicRejectMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ChannelCloseHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ChannelCloseOkHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ChannelFlowHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ChannelOpenHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ConnectionCloseMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ConnectionCloseOkMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ConnectionOpenMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ConnectionSecureOkMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ConnectionStartOkMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ConnectionTuneOkMethodHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ExchangeBoundHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ExchangeDeclareHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ExchangeDeleteHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/OnCurrentThreadExecutor.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/QueueBindHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/QueueDeclareHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/QueueDeleteHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/QueuePurgeHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/QueueUnbindHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ServerMethodDispatcherImpl.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ServerMethodDispatcherImpl_0_9.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ServerMethodDispatcherImpl_0_91.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/ServerMethodDispatcherImpl_8_0.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/TxCommitHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/TxRollbackHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/TxSelectHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/UnexpectedMethodException.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/output/ProtocolOutputConverter.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/output/ProtocolOutputConverterImpl.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/output/ProtocolOutputConverterRegistry.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/state/AMQState.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/state/AMQStateManager.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/state/IllegalStateTransitionException.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/state/StateAwareMethodListener.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v0_8/state/StateListener.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/Connection_1_0.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/Link_1_0.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/Message_1_0.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/ReceivingLink_1_0.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/Session_1_0.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/Subscription_1_0.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/store/MemoryMessageStore.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/store/StorableMessageMetaData.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/subscription/Subscription.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHost.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostConfigRecoveryHandler.java
    qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostImpl.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/ack/AcknowledgeTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/exchange/AbstractHeadersExchangeTestBase.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/exchange/HeadersExchangeTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/exchange/TopicExchangeTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/logging/actors/AMQPChannelActorTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/logging/actors/BaseConnectionActorTestCase.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/logging/actors/CurrentActorTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ChannelLogSubjectTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ConnectionLogSubjectTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/SubscriptionLogSubjectTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/AMQPriorityQueueTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/ConflationQueueListTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockAMQMessage.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockQueueEntry.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockStoredMessage.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/QueueEntryImplTestBase.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleAMQQueueTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleQueueEntryListTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SortedQueueEntryListTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/store/MessageStoreQuotaEventsTestBase.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/store/MessageStoreTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/store/ReferenceCountingTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/store/TestableMemoryMessageStore.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/subscription/MockSubscription.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/subscription/QueueBrowserUsesNoAckTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/subscription/SubscriptionFactoryImplTest.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/util/BrokerTestHelper.java
    qpid/branches/QPID-4659/qpid/java/broker/src/test/java/org/apache/qpid/server/virtualhost/MockVirtualHost.java

Modified: qpid/branches/QPID-4659/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/MessageMetaDataBinding.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/MessageMetaDataBinding.java?rev=1458042&r1=1458041&r2=1458042&view=diff
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/MessageMetaDataBinding.java (original)
+++ qpid/branches/QPID-4659/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/MessageMetaDataBinding.java Mon Mar 18 22:19:50 2013
@@ -26,7 +26,8 @@ import com.sleepycat.bind.tuple.TupleBin
 import com.sleepycat.bind.tuple.TupleInput;
 import com.sleepycat.bind.tuple.TupleOutput;
 
-import org.apache.qpid.server.store.MessageMetaDataType;
+import org.apache.qpid.server.plugin.MessageMetaDataType;
+import org.apache.qpid.server.store.MessageMetaDataTypeRegistry;
 import org.apache.qpid.server.store.StorableMessageMetaData;
 
 /**
@@ -54,8 +55,8 @@ public class MessageMetaDataBinding exte
         ByteBuffer buf = ByteBuffer.wrap(dataAsBytes);
         buf.position(1);
         buf = buf.slice();
-        MessageMetaDataType type = MessageMetaDataType.values()[dataAsBytes[0]];
-        StorableMessageMetaData metaData = type.getFactory().createMetaData(buf);
+        MessageMetaDataType type = MessageMetaDataTypeRegistry.fromOrdinal(dataAsBytes[0]);
+        StorableMessageMetaData metaData = type.createMetaData(buf);
 
         return metaData;
     }

Modified: qpid/branches/QPID-4659/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom4To5.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom4To5.java?rev=1458042&r1=1458041&r2=1458042&view=diff
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom4To5.java (original)
+++ qpid/branches/QPID-4659/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom4To5.java Mon Mar 18 22:19:50 2013
@@ -40,7 +40,7 @@ import org.apache.qpid.framing.AMQShortS
 import org.apache.qpid.framing.ContentHeaderBody;
 import org.apache.qpid.framing.FieldTable;
 import org.apache.qpid.framing.abstraction.MessagePublishInfo;
-import org.apache.qpid.server.message.MessageMetaData;
+import org.apache.qpid.server.protocol.v0_8.MessageMetaData;
 import org.apache.qpid.server.store.StorableMessageMetaData;
 import org.apache.qpid.server.store.berkeleydb.AMQShortStringEncoding;
 import org.apache.qpid.server.store.berkeleydb.FieldTableEncoding;

Modified: qpid/branches/QPID-4659/qpid/java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStoreTest.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStoreTest.java?rev=1458042&r1=1458041&r2=1458042&view=diff
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStoreTest.java (original)
+++ qpid/branches/QPID-4659/qpid/java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStoreTest.java Mon Mar 18 22:19:50 2013
@@ -33,12 +33,12 @@ import org.apache.qpid.framing.ProtocolV
 import org.apache.qpid.framing.abstraction.MessagePublishInfo;
 import org.apache.qpid.server.message.AMQMessageHeader;
 import org.apache.qpid.server.message.EnqueableMessage;
-import org.apache.qpid.server.message.MessageMetaData;
-import org.apache.qpid.server.message.MessageMetaData_0_10;
+import org.apache.qpid.server.protocol.v0_8.MessageMetaData;
+import org.apache.qpid.server.protocol.v0_10.MessageMetaData_0_10;
 import org.apache.qpid.server.message.MessageReference;
 import org.apache.qpid.server.message.ServerMessage;
 import org.apache.qpid.server.model.UUIDGenerator;
-import org.apache.qpid.server.store.MessageMetaDataType;
+import org.apache.qpid.server.plugin.MessageMetaDataType;
 import org.apache.qpid.server.store.MessageStore;
 import org.apache.qpid.server.store.StorableMessageMetaData;
 import org.apache.qpid.server.store.StoredMessage;

Modified: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/actors/AMQPChannelActor.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/actors/AMQPChannelActor.java?rev=1458042&r1=1458041&r2=1458042&view=diff
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/actors/AMQPChannelActor.java (original)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/actors/AMQPChannelActor.java Mon Mar 18 22:19:50 2013
@@ -20,9 +20,9 @@
  */
 package org.apache.qpid.server.logging.actors;
 
-import org.apache.qpid.server.AMQChannel;
 import org.apache.qpid.server.logging.RootMessageLogger;
 import org.apache.qpid.server.logging.subjects.ChannelLogSubject;
+import org.apache.qpid.server.protocol.AMQSessionModel;
 
 /**
  * An AMQPChannelActor represtents a connection through the AMQP port with an
@@ -45,7 +45,7 @@ public class AMQPChannelActor extends Ab
      * @param channel    The Channel for this LogActor
      * @param rootLogger The root Logger that this LogActor should use
      */
-    public AMQPChannelActor(AMQChannel channel, RootMessageLogger rootLogger)
+    public AMQPChannelActor(AMQSessionModel channel, RootMessageLogger rootLogger)
     {
         super(rootLogger);
 

Modified: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/actors/AMQPConnectionActor.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/actors/AMQPConnectionActor.java?rev=1458042&r1=1458041&r2=1458042&view=diff
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/actors/AMQPConnectionActor.java (original)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/actors/AMQPConnectionActor.java Mon Mar 18 22:19:50 2013
@@ -14,16 +14,15 @@
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License.    
+ *  under the License.
+ *
  *
- * 
  */
 package org.apache.qpid.server.logging.actors;
 
 import org.apache.qpid.server.logging.RootMessageLogger;
 import org.apache.qpid.server.logging.subjects.ConnectionLogSubject;
-import org.apache.qpid.server.protocol.AMQProtocolSession;
-
+import org.apache.qpid.server.protocol.AMQConnectionModel;
 
 
 /**
@@ -39,7 +38,7 @@ public class AMQPConnectionActor extends
 {
     private ConnectionLogSubject _logSubject;
 
-    public AMQPConnectionActor(AMQProtocolSession session, RootMessageLogger rootLogger)
+    public AMQPConnectionActor(AMQConnectionModel session, RootMessageLogger rootLogger)
     {
         super(rootLogger);
 

Modified: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/subjects/ChannelLogSubject.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/subjects/ChannelLogSubject.java?rev=1458042&r1=1458041&r2=1458042&view=diff
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/subjects/ChannelLogSubject.java (original)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/subjects/ChannelLogSubject.java Mon Mar 18 22:19:50 2013
@@ -20,20 +20,16 @@
  */
 package org.apache.qpid.server.logging.subjects;
 
-import org.apache.qpid.server.AMQChannel;
-import org.apache.qpid.server.protocol.AMQProtocolSession;
-import org.apache.qpid.server.transport.ServerConnection;
-import org.apache.qpid.server.transport.ServerSession;
+import org.apache.qpid.server.protocol.AMQConnectionModel;
+import org.apache.qpid.server.protocol.AMQSessionModel;
 
 import static org.apache.qpid.server.logging.subjects.LogSubjectFormat.CHANNEL_FORMAT;
 
 public class ChannelLogSubject extends AbstractLogSubject
 {
 
-    public ChannelLogSubject(AMQChannel channel)
+    public ChannelLogSubject(AMQSessionModel session)
     {
-        AMQProtocolSession session = channel.getProtocolSession();
-
         /**
          * LOG FORMAT used by the AMQPConnectorActor follows
          * ChannelLogSubject.CHANNEL_FORMAT : con:{0}({1}@{2}/{3})/ch:{4}.
@@ -47,39 +43,14 @@ public class ChannelLogSubject extends A
          * 3 - Virtualhost
          * 4 - Channel ID
          */
+        AMQConnectionModel connection = session.getConnectionModel();
         setLogStringWithFormat(CHANNEL_FORMAT,
-                               session.getSessionID(),
-                               session.getAuthorizedPrincipal().getName(),
-                               session.getRemoteAddress(),
-                               session.getVirtualHost().getName(),
-                               channel.getChannelId());
-    }
+                               connection == null ? -1L : connection.getConnectionId(),
+                               (connection == null || connection.getPrincipalAsString() == null) ? "?" : connection.getPrincipalAsString(),
+                               (connection == null || connection.getRemoteAddressString() == null) ? "?" : connection.getRemoteAddressString(),
+                               (connection == null || connection.getVirtualHostName() == null) ? "?" : connection.getVirtualHostName(),
+                               session.getChannelId());
 
-    public ChannelLogSubject(ServerSession session)
-    {
-        /**
-         * LOG FORMAT used by the AMQPConnectorActor follows
-         * ChannelLogSubject.CHANNEL_FORMAT : con:{0}({1}@{2}/{3})/ch:{4}.
-         *
-         * Uses a MessageFormat call to insert the required values according to
-         * these indices:
-         *
-         * 0 - Connection ID
-         * 1 - User ID
-         * 2 - IP
-         * 3 - Virtualhost
-         * 4 - Channel ID
-         */
-        if(session.getConnection() instanceof ServerConnection)
-        {
-            ServerConnection connection = (ServerConnection) session.getConnection();
-            setLogStringWithFormat(CHANNEL_FORMAT,
-                                   connection == null ? -1L : connection.getConnectionId(),
-                                   session.getAuthorizedPrincipal() == null ? "?" : session.getAuthorizedPrincipal().getName(),
-                                   (connection == null || connection.getRemoteAddressString() == null) ? "?" : connection.getRemoteAddressString(),
-                                   session.getVirtualHost().getName(),
-                                   session.getChannel());
-        }
     }
 
 }

Modified: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/subjects/ConnectionLogSubject.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/subjects/ConnectionLogSubject.java?rev=1458042&r1=1458041&r2=1458042&view=diff
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/subjects/ConnectionLogSubject.java (original)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/subjects/ConnectionLogSubject.java Mon Mar 18 22:19:50 2013
@@ -20,34 +20,33 @@
  */
 package org.apache.qpid.server.logging.subjects;
 
-import org.apache.qpid.server.protocol.AMQProtocolSession;
+import java.text.MessageFormat;
+import org.apache.qpid.server.protocol.AMQConnectionModel;
 
 import static org.apache.qpid.server.logging.subjects.LogSubjectFormat.CONNECTION_FORMAT;
 import static org.apache.qpid.server.logging.subjects.LogSubjectFormat.SOCKET_FORMAT;
 import static org.apache.qpid.server.logging.subjects.LogSubjectFormat.USER_FORMAT;
 
-import java.text.MessageFormat;
-
 /** The Connection LogSubject */
 public class ConnectionLogSubject extends AbstractLogSubject
 {
 
-    public ConnectionLogSubject(AMQProtocolSession session)
+    // The Session this Actor is representing
+    private AMQConnectionModel _session;
+
+    public ConnectionLogSubject(AMQConnectionModel session)
     {
         _session = session;
     }
 
-    // The Session this Actor is representing
-    private AMQProtocolSession _session;
-
     // Used to stop re-creating the _logString when we reach our final format
     private boolean _upToDate = false;
 
     /**
      * Update the LogString as the Connection process proceeds.
-     * 
+     *
      * When the Session has an authorized ID add that to the string.
-     * 
+     *
      * When the Session then gains a Vhost add that to the string, at this point
      * we can set upToDate = true as the _logString will not need to be updated
      * from this point onwards.
@@ -56,44 +55,44 @@ public class ConnectionLogSubject extend
     {
         if (!_upToDate)
         {
-            if (_session.getAuthorizedPrincipal() != null)
+            if (_session.getPrincipalAsString() != null)
             {
-                if (_session.getVirtualHost() != null)
+                if (_session.getVirtualHostName() != null)
                 {
                     /**
                      * LOG FORMAT used by the AMQPConnectorActor follows
                      * ConnectionLogSubject.CONNECTION_FORMAT :
                      * con:{0}({1}@{2}/{3})
-                     * 
+                     *
                      * Uses a MessageFormat call to insert the required values
                      * according to these indices:
-                     * 
+                     *
                      * 0 - Connection ID 1 - User ID 2 - IP 3 - Virtualhost
                      */
                     setLogString("[" + MessageFormat.format(CONNECTION_FORMAT,
-                                                            _session.getSessionID(),
-                                                            _session.getAuthorizedPrincipal().getName(),
-                                                            _session.getRemoteAddress(),
-                                                            _session.getVirtualHost().getName())
+                                                            _session.getConnectionId(),
+                                                            _session.getPrincipalAsString(),
+                                                            _session.getRemoteAddressString(),
+                                                            _session.getVirtualHostName())
                                  + "] ");
 
                     _upToDate = true;
-                } 
+                }
                 else
                 {
                     setLogString("[" + MessageFormat.format(USER_FORMAT,
-                                                            _session.getSessionID(),
-                                                            _session.getAuthorizedPrincipal().getName(),
-                                                            _session.getRemoteAddress())
+                                                            _session.getConnectionId(),
+                                                            _session.getPrincipalAsString(),
+                                                            _session.getRemoteAddressString())
                                  + "] ");
 
                 }
-            } 
+            }
             else
             {
                     setLogString("[" + MessageFormat.format(SOCKET_FORMAT,
-                                                            _session.getSessionID(),
-                                                            _session.getRemoteAddress())
+                                                            _session.getConnectionId(),
+                                                            _session.getRemoteAddressString())
                                  + "] ");
             }
         }

Added: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageConverter.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageConverter.java?rev=1458042&view=auto
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageConverter.java (added)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageConverter.java Mon Mar 18 22:19:50 2013
@@ -0,0 +1,12 @@
+package org.apache.qpid.server.plugin;
+
+import org.apache.qpid.server.message.ServerMessage;
+import org.apache.qpid.server.virtualhost.VirtualHost;
+
+public interface MessageConverter<M extends ServerMessage, N extends ServerMessage>
+{
+    Class<M> getInputClass();
+    Class<N> getOutputClass();
+
+    N convert(M message, VirtualHost vhost);
+}

Propchange: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageConverter.java
------------------------------------------------------------------------------
    svn:eol-style = native

Copied: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageMetaDataType.java (from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/store/MessageMetaDataType.java)
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageMetaDataType.java?p2=qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageMetaDataType.java&p1=qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/store/MessageMetaDataType.java&r1=1457505&r2=1458042&rev=1458042&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/store/MessageMetaDataType.java (original)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageMetaDataType.java Mon Mar 18 22:19:50 2013
@@ -18,27 +18,25 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.store;
-
-import org.apache.qpid.server.message.MessageMetaData;
-import org.apache.qpid.server.message.MessageMetaData_0_10;
-import org.apache.qpid.server.message.MessageMetaData_1_0;
+package org.apache.qpid.server.plugin;
 
 import java.nio.ByteBuffer;
+import org.apache.qpid.server.message.ServerMessage;
+import org.apache.qpid.server.store.StorableMessageMetaData;
+import org.apache.qpid.server.store.StoredMessage;
 
-public enum MessageMetaDataType
+public interface MessageMetaDataType<M extends StorableMessageMetaData>
 {
-    META_DATA_0_8  {   public Factory<MessageMetaData> getFactory() { return MessageMetaData.FACTORY; } },
-    META_DATA_0_10 {   public Factory<MessageMetaData_0_10> getFactory() { return MessageMetaData_0_10.FACTORY; } },
-    META_DATA_1_0 {   public Factory<MessageMetaData_1_0> getFactory() { return MessageMetaData_1_0.FACTORY; } };
-
-
 
     public static interface Factory<M extends StorableMessageMetaData>
     {
         M createMetaData(ByteBuffer buf);
     }
 
-    abstract public Factory<? extends StorableMessageMetaData> getFactory();
+    public int ordinal();
+
+    public M createMetaData(ByteBuffer buf);
+
+    public ServerMessage<M> createMessage(StoredMessage<M> msg);
 
 }

Propchange: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/MessageMetaDataType.java
------------------------------------------------------------------------------
    svn:executable = *

Added: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/ProtocolEngineCreator.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/ProtocolEngineCreator.java?rev=1458042&view=auto
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/ProtocolEngineCreator.java (added)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/ProtocolEngineCreator.java Mon Mar 18 22:19:50 2013
@@ -0,0 +1,33 @@
+/*
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*   http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied.  See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*/
+package org.apache.qpid.server.plugin;
+
+import org.apache.qpid.protocol.ServerProtocolEngine;
+import org.apache.qpid.server.model.Broker;
+import org.apache.qpid.server.protocol.AmqpProtocolVersion;
+import org.apache.qpid.transport.network.NetworkConnection;
+
+public interface ProtocolEngineCreator
+{
+    AmqpProtocolVersion getVersion();
+    byte[] getHeaderIdentifier();
+    ServerProtocolEngine newProtocolEngine(Broker broker, NetworkConnection network, long id);
+}

Propchange: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/plugin/ProtocolEngineCreator.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQConnectionModel.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQConnectionModel.java?rev=1458042&r1=1458041&r2=1458042&view=diff
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQConnectionModel.java (original)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQConnectionModel.java Mon Mar 18 22:19:50 2013
@@ -20,14 +20,12 @@
  */
 package org.apache.qpid.server.protocol;
 
+import java.util.List;
 import org.apache.qpid.AMQException;
 import org.apache.qpid.protocol.AMQConstant;
 import org.apache.qpid.server.logging.LogSubject;
 import org.apache.qpid.server.stats.StatisticsGatherer;
 
-import java.util.List;
-import java.util.UUID;
-
 public interface AMQConnectionModel extends StatisticsGatherer
 {
     /**
@@ -79,6 +77,8 @@ public interface AMQConnectionModel exte
 
     String getPrincipalAsString();
 
+    String getVirtualHostName();
+
     long getSessionCountLimit();
 
     long getLastIoTime();

Added: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/LinkModel.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/LinkModel.java?rev=1458042&view=auto
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/LinkModel.java (added)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/LinkModel.java Mon Mar 18 22:19:50 2013
@@ -0,0 +1,5 @@
+package org.apache.qpid.server.protocol;
+
+public interface LinkModel
+{
+}

Propchange: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/LinkModel.java
------------------------------------------------------------------------------
    svn:eol-style = native

Copied: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/LinkRegistry.java (from r1457505, qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/LinkRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/LinkRegistry.java?p2=qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/LinkRegistry.java&p1=qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/LinkRegistry.java&r1=1457505&r2=1458042&rev=1458042&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/LinkRegistry.java (original)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/LinkRegistry.java Mon Mar 18 22:19:50 2013
@@ -18,22 +18,22 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.protocol.v1_0;
+package org.apache.qpid.server.protocol;
 
 import java.util.HashMap;
 import java.util.Map;
 
 public class LinkRegistry
 {
-    private final Map<String, SendingLink_1_0> _sendingLinks = new HashMap<String, SendingLink_1_0>();
-    private final Map<String, ReceivingLink_1_0> _receivingLinks = new HashMap<String, ReceivingLink_1_0>();
+    private final Map<String, LinkModel> _sendingLinks = new HashMap<String, LinkModel>();
+    private final Map<String, LinkModel> _receivingLinks = new HashMap<String, LinkModel>();
 
-    public synchronized SendingLink_1_0 getDurableSendingLink(String name)
+    public synchronized LinkModel getDurableSendingLink(String name)
     {
         return _sendingLinks.get(name);
     }
 
-    public synchronized boolean registerSendingLink(String name, SendingLink_1_0 link)
+    public synchronized boolean registerSendingLink(String name, LinkModel link)
     {
         if(_sendingLinks.containsKey(name))
         {
@@ -59,12 +59,12 @@ public class LinkRegistry
         }
     }
 
-    public synchronized ReceivingLink_1_0 getDurableReceivingLink(String name)
+    public synchronized LinkModel getDurableReceivingLink(String name)
     {
         return _receivingLinks.get(name);
     }
 
-    public synchronized  boolean registerReceivingLink(String name, ReceivingLink_1_0 link)
+    public synchronized  boolean registerReceivingLink(String name, LinkModel link)
     {
         if(_receivingLinks.containsKey(name))
         {

Added: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MessageConverterRegistry.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MessageConverterRegistry.java?rev=1458042&view=auto
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MessageConverterRegistry.java (added)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MessageConverterRegistry.java Mon Mar 18 22:19:50 2013
@@ -0,0 +1,35 @@
+package org.apache.qpid.server.protocol;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.qpid.server.message.ServerMessage;
+import org.apache.qpid.server.plugin.MessageConverter;
+import org.apache.qpid.server.plugin.QpidServiceLoader;
+
+public class MessageConverterRegistry
+{
+    private static Map<Class<? extends ServerMessage>, Map<Class<? extends ServerMessage>, MessageConverter>>
+            _converters =
+            new HashMap<Class<? extends ServerMessage>, Map<Class<? extends ServerMessage>, MessageConverter>>();
+
+    static
+    {
+
+        for(MessageConverter<? extends ServerMessage, ? extends ServerMessage> converter : (new QpidServiceLoader<MessageConverter>()).instancesOf(MessageConverter.class))
+        {
+            Map<Class<? extends ServerMessage>, MessageConverter> map = _converters.get(converter.getInputClass());
+            if(map == null)
+            {
+                map = new HashMap<Class<? extends ServerMessage>, MessageConverter>();
+                _converters.put(converter.getInputClass(), map);
+            }
+            map.put(converter.getOutputClass(),converter);
+        }
+    }
+
+    public static <M  extends ServerMessage,N  extends ServerMessage> MessageConverter<M, N> getConverter(Class<M> from, Class<N> to)
+    {
+        Map<Class<? extends ServerMessage>, MessageConverter> map = _converters.get(from);
+        return map == null ? null : map.get(to);
+    }
+}

Propchange: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MessageConverterRegistry.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngine.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngine.java?rev=1458042&r1=1458041&r2=1458042&view=diff
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngine.java (original)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngine.java Mon Mar 18 22:19:50 2013
@@ -29,8 +29,7 @@ import java.util.Set;
 import org.apache.log4j.Logger;
 import org.apache.qpid.protocol.ServerProtocolEngine;
 import org.apache.qpid.server.model.Broker;
-import org.apache.qpid.server.transport.ServerConnection;
-import org.apache.qpid.transport.ConnectionDelegate;
+import org.apache.qpid.server.plugin.ProtocolEngineCreator;
 import org.apache.qpid.transport.Sender;
 import org.apache.qpid.transport.network.NetworkConnection;
 
@@ -46,22 +45,14 @@ public class MultiVersionProtocolEngine 
     private NetworkConnection _network;
     private Sender<ByteBuffer> _sender;
     private final AmqpProtocolVersion _defaultSupportedReply;
+    private final ProtocolEngineCreator[] _creators;
 
     private volatile ServerProtocolEngine _delegate = new SelfDelegateProtocolEngine();
 
     public MultiVersionProtocolEngine(final Broker broker,
                                       final Set<AmqpProtocolVersion> supported,
                                       final AmqpProtocolVersion defaultSupportedReply,
-                                      final long id,
-                                      final NetworkConnection network)
-    {
-        this(broker, supported, defaultSupportedReply, id);
-        setNetworkConnection(network);
-    }
-
-    public MultiVersionProtocolEngine(final Broker broker,
-                                      final Set<AmqpProtocolVersion> supported,
-                                      final AmqpProtocolVersion defaultSupportedReply,
+                                      ProtocolEngineCreator[] creators,
                                       final long id)
     {
         if(defaultSupportedReply != null && !supported.contains(defaultSupportedReply))
@@ -74,6 +65,7 @@ public class MultiVersionProtocolEngine 
         _broker = broker;
         _supported = supported;
         _defaultSupportedReply = defaultSupportedReply;
+        _creators = creators;
     }
 
 
@@ -130,72 +122,7 @@ public class MultiVersionProtocolEngine 
 
     private static final int MINIMUM_REQUIRED_HEADER_BYTES = 8;
 
-    private static final byte[] AMQP_0_8_HEADER =
-            new byte[] { (byte) 'A',
-                         (byte) 'M',
-                         (byte) 'Q',
-                         (byte) 'P',
-                         (byte) 1,
-                         (byte) 1,
-                         (byte) 8,
-                         (byte) 0
-            };
-
-    private static final byte[] AMQP_0_9_HEADER =
-            new byte[] { (byte) 'A',
-                         (byte) 'M',
-                         (byte) 'Q',
-                         (byte) 'P',
-                         (byte) 1,
-                         (byte) 1,
-                         (byte) 0,
-                         (byte) 9
-            };
-
-    private static final byte[] AMQP_0_9_1_HEADER =
-            new byte[] { (byte) 'A',
-                         (byte) 'M',
-                         (byte) 'Q',
-                         (byte) 'P',
-                         (byte) 0,
-                         (byte) 0,
-                         (byte) 9,
-                         (byte) 1
-            };
-
-
-    private static final byte[] AMQP_0_10_HEADER =
-            new byte[] { (byte) 'A',
-                         (byte) 'M',
-                         (byte) 'Q',
-                         (byte) 'P',
-                         (byte) 1,
-                         (byte) 1,
-                         (byte) 0,
-                         (byte) 10
-            };
-
-    private static final byte[] AMQP_1_0_0_HEADER =
-            new byte[] { (byte) 'A',
-                         (byte) 'M',
-                         (byte) 'Q',
-                         (byte) 'P',
-                         (byte) 0,
-                         (byte) 1,
-                         (byte) 0,
-                         (byte) 0
-            };
-
-    private static final byte[] AMQP_SASL_1_0_0_HEADER =
-            new byte[] { (byte) 'A',
-                         (byte) 'M',
-                         (byte) 'Q',
-                         (byte) 'P',
-                         (byte) 3,
-                         (byte) 1,
-                         (byte) 0,
-                         (byte) 0
-            };
+
 
     public void setNetworkConnection(NetworkConnection networkConnection)
     {
@@ -229,146 +156,6 @@ public class MultiVersionProtocolEngine 
         return _delegate.getLastWriteTime();
     }
 
-
-    private static interface DelegateCreator
-    {
-        AmqpProtocolVersion getVersion();
-        byte[] getHeaderIdentifier();
-        ServerProtocolEngine getProtocolEngine();
-    }
-
-    private DelegateCreator creator_0_8 = new DelegateCreator()
-    {
-
-        public AmqpProtocolVersion getVersion()
-        {
-            return AmqpProtocolVersion.v0_8;
-        }
-
-        public byte[] getHeaderIdentifier()
-        {
-            return AMQP_0_8_HEADER;
-        }
-
-        public ServerProtocolEngine getProtocolEngine()
-        {
-            return new AMQProtocolEngine(_broker, _network, _id);
-        }
-    };
-
-    private DelegateCreator creator_0_9 = new DelegateCreator()
-    {
-
-        public AmqpProtocolVersion getVersion()
-        {
-            return AmqpProtocolVersion.v0_9;
-        }
-
-
-        public byte[] getHeaderIdentifier()
-        {
-            return AMQP_0_9_HEADER;
-        }
-
-        public ServerProtocolEngine getProtocolEngine()
-        {
-            return new AMQProtocolEngine(_broker, _network, _id);
-        }
-    };
-
-    private DelegateCreator creator_0_9_1 = new DelegateCreator()
-    {
-
-        public AmqpProtocolVersion getVersion()
-        {
-            return AmqpProtocolVersion.v0_9_1;
-        }
-
-
-        public byte[] getHeaderIdentifier()
-        {
-            return AMQP_0_9_1_HEADER;
-        }
-
-        public ServerProtocolEngine getProtocolEngine()
-        {
-            return new AMQProtocolEngine(_broker, _network, _id);
-        }
-    };
-
-
-    private DelegateCreator creator_0_10 = new DelegateCreator()
-    {
-
-        public AmqpProtocolVersion getVersion()
-        {
-            return AmqpProtocolVersion.v0_10;
-        }
-
-
-        public byte[] getHeaderIdentifier()
-        {
-            return AMQP_0_10_HEADER;
-        }
-
-        public ServerProtocolEngine getProtocolEngine()
-        {
-            final ConnectionDelegate connDelegate = new org.apache.qpid.server.transport.ServerConnectionDelegate(_broker,
-                    _fqdn, _broker.getSubjectCreator(getLocalAddress()));
-
-            ServerConnection conn = new ServerConnection(_id);
-
-            conn.setConnectionDelegate(connDelegate);
-            conn.setRemoteAddress(_network.getRemoteAddress());
-            conn.setLocalAddress(_network.getLocalAddress());
-            return new ProtocolEngine_0_10( conn, _network);
-        }
-    };
-
-    private DelegateCreator creator_1_0_0 = new DelegateCreator()
-    {
-
-        public AmqpProtocolVersion getVersion()
-        {
-            return AmqpProtocolVersion.v1_0_0;
-        }
-
-
-        public byte[] getHeaderIdentifier()
-        {
-            return AMQP_1_0_0_HEADER;
-        }
-
-        public ServerProtocolEngine getProtocolEngine()
-        {
-            return new ProtocolEngine_1_0_0(_network, _broker, _id);
-        }
-    };
-
-    private DelegateCreator creator_1_0_0_SASL = new DelegateCreator()
-    {
-
-        public AmqpProtocolVersion getVersion()
-        {
-            return AmqpProtocolVersion.v1_0_0;
-        }
-
-
-        public byte[] getHeaderIdentifier()
-        {
-            return AMQP_SASL_1_0_0_HEADER;
-        }
-
-        public ServerProtocolEngine getProtocolEngine()
-        {
-            return new ProtocolEngine_1_0_0_SASL(_network, _broker, _id);
-        }
-    };
-
-    private final DelegateCreator[] _creators =
-            new DelegateCreator[] { creator_0_8, creator_0_9, creator_0_9_1, creator_0_10, creator_1_0_0_SASL, creator_1_0_0 };
-
-
     private class ClosedDelegateProtocolEngine implements ServerProtocolEngine
     {
         public SocketAddress getRemoteAddress()
@@ -506,7 +293,7 @@ public class MultiVersionProtocolEngine 
                         }
                         if(equal)
                         {
-                            newDelegate = _creators[i].getProtocolEngine();
+                            newDelegate = _creators[i].newProtocolEngine(_broker, _network, _id);
                         }
                     }
 
@@ -625,4 +412,5 @@ public class MultiVersionProtocolEngine 
             return 0;
         }
     }
+
 }

Modified: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngineFactory.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngineFactory.java?rev=1458042&r1=1458041&r2=1458042&view=diff
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngineFactory.java (original)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngineFactory.java Mon Mar 18 22:19:50 2013
@@ -20,12 +20,15 @@
 */
 package org.apache.qpid.server.protocol;
 
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+import java.util.concurrent.atomic.AtomicLong;
 import org.apache.qpid.protocol.ProtocolEngineFactory;
 import org.apache.qpid.protocol.ServerProtocolEngine;
 import org.apache.qpid.server.model.Broker;
-
-import java.util.Set;
-import java.util.concurrent.atomic.AtomicLong;
+import org.apache.qpid.server.plugin.ProtocolEngineCreator;
+import org.apache.qpid.server.plugin.QpidServiceLoader;
 
 public class MultiVersionProtocolEngineFactory implements ProtocolEngineFactory
 {
@@ -34,6 +37,7 @@ public class MultiVersionProtocolEngineF
     private final Broker _broker;
     private final Set<AmqpProtocolVersion> _supported;
     private final AmqpProtocolVersion _defaultSupportedReply;
+    private final ProtocolEngineCreator[] _creators;
 
     public MultiVersionProtocolEngineFactory(Broker broker,
             final Set<AmqpProtocolVersion> supportedVersions, final AmqpProtocolVersion defaultSupportedReply)
@@ -47,11 +51,19 @@ public class MultiVersionProtocolEngineF
         _broker = broker;
         _supported = supportedVersions;
         _defaultSupportedReply = defaultSupportedReply;
+
+        List<ProtocolEngineCreator> creators = new ArrayList<ProtocolEngineCreator>();
+
+        for(ProtocolEngineCreator c : new QpidServiceLoader<ProtocolEngineCreator>().instancesOf(ProtocolEngineCreator.class))
+        {
+            creators.add(c);
+        }
+        _creators = creators.toArray(new ProtocolEngineCreator[creators.size()]);
     }
 
     public ServerProtocolEngine newProtocolEngine()
     {
-        return new MultiVersionProtocolEngine(_broker, _supported, _defaultSupportedReply, ID_GENERATOR.getAndIncrement());
+        return new MultiVersionProtocolEngine(_broker, _supported, _defaultSupportedReply, _creators, ID_GENERATOR.getAndIncrement());
     }
 
 }

Added: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_0_10_to_1_0.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_0_10_to_1_0.java?rev=1458042&view=auto
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_0_10_to_1_0.java (added)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_0_10_to_1_0.java Mon Mar 18 22:19:50 2013
@@ -0,0 +1,104 @@
+package org.apache.qpid.server.protocol.converter.v0_10_v1_0;
+
+import java.util.ArrayList;
+import java.util.List;
+import org.apache.qpid.amqp_1_0.messaging.SectionEncoder;
+import org.apache.qpid.amqp_1_0.type.Binary;
+import org.apache.qpid.amqp_1_0.type.Section;
+import org.apache.qpid.amqp_1_0.type.Symbol;
+import org.apache.qpid.amqp_1_0.type.UnsignedByte;
+import org.apache.qpid.amqp_1_0.type.UnsignedInteger;
+import org.apache.qpid.amqp_1_0.type.messaging.ApplicationProperties;
+import org.apache.qpid.amqp_1_0.type.messaging.Header;
+import org.apache.qpid.amqp_1_0.type.messaging.Properties;
+import org.apache.qpid.server.protocol.v0_10.MessageTransferMessage;
+import org.apache.qpid.server.protocol.v1_0.MessageConverter_to_1_0;
+import org.apache.qpid.server.protocol.v1_0.MessageMetaData_1_0;
+import org.apache.qpid.transport.DeliveryProperties;
+import org.apache.qpid.transport.MessageDeliveryMode;
+import org.apache.qpid.transport.MessageProperties;
+
+public class MessageConverter_0_10_to_1_0  extends MessageConverter_to_1_0<MessageTransferMessage>
+{
+    @Override
+    public Class<MessageTransferMessage> getInputClass()
+    {
+        return MessageTransferMessage.class;
+    }
+
+
+    @Override
+    protected MessageMetaData_1_0 convertMetaData(MessageTransferMessage serverMessage,
+                                                  SectionEncoder sectionEncoder)
+    {
+        List<Section> sections = new ArrayList<Section>(3);
+        final MessageProperties msgProps = serverMessage.getHeader().getMessageProperties();
+        final DeliveryProperties deliveryProps = serverMessage.getHeader().getDeliveryProperties();
+
+        Header header = new Header();
+        if(deliveryProps != null)
+        {
+            header.setDurable(deliveryProps.hasDeliveryMode() && deliveryProps.getDeliveryMode() == MessageDeliveryMode.PERSISTENT);
+            if(deliveryProps.hasPriority())
+            {
+                header.setPriority(UnsignedByte.valueOf((byte) deliveryProps.getPriority().getValue()));
+            }
+            if(deliveryProps.hasTtl())
+            {
+                header.setTtl(UnsignedInteger.valueOf(deliveryProps.getTtl()));
+            }
+            sections.add(header);
+        }
+
+        Properties props = new Properties();
+        if(msgProps != null)
+        {
+        //        props.setAbsoluteExpiryTime();
+            if(msgProps.hasContentEncoding())
+            {
+                props.setContentEncoding(Symbol.valueOf(msgProps.getContentEncoding()));
+            }
+
+            if(msgProps.hasCorrelationId())
+            {
+                props.setCorrelationId(msgProps.getCorrelationId());
+            }
+        //        props.setCreationTime();
+        //        props.setGroupId();
+        //        props.setGroupSequence();
+            if(msgProps.hasMessageId())
+            {
+                props.setMessageId(msgProps.getMessageId());
+            }
+            if(msgProps.hasReplyTo())
+            {
+                props.setReplyTo(msgProps.getReplyTo().getExchange()+"/"+msgProps.getReplyTo().getRoutingKey());
+            }
+            if(msgProps.hasContentType())
+            {
+                props.setContentType(Symbol.valueOf(msgProps.getContentType()));
+
+                // Modify the content type when we are dealing with java object messages produced by the Qpid 0.x client
+                if(props.getContentType() == Symbol.valueOf("application/java-object-stream"))
+                {
+                    props.setContentType(Symbol.valueOf("application/x-java-serialized-object"));
+                }
+            }
+        //        props.setReplyToGroupId();
+            props.setSubject(serverMessage.getRoutingKey());
+        //        props.setTo();
+            if(msgProps.hasUserId())
+            {
+                props.setUserId(new Binary(msgProps.getUserId()));
+            }
+
+            sections.add(props);
+
+            if(msgProps.getApplicationHeaders() != null)
+            {
+                sections.add(new ApplicationProperties(msgProps.getApplicationHeaders()));
+            }
+        }
+        return new MessageMetaData_1_0(sections, sectionEncoder);
+    }
+}

Propchange: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_0_10_to_1_0.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_1_0_to_0_10.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_1_0_to_0_10.java?rev=1458042&view=auto
==============================================================================
--- qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_1_0_to_0_10.java (added)
+++ qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_1_0_to_0_10.java Mon Mar 18 22:19:50 2013
@@ -0,0 +1,27 @@
+package org.apache.qpid.server.protocol.converter.v0_10_v1_0;
+
+import org.apache.qpid.server.plugin.MessageConverter;
+import org.apache.qpid.server.protocol.v0_10.MessageTransferMessage;
+import org.apache.qpid.server.protocol.v1_0.Message_1_0;
+import org.apache.qpid.server.virtualhost.VirtualHost;
+
+public class MessageConverter_1_0_to_0_10 implements MessageConverter<Message_1_0, MessageTransferMessage>
+{
+    @Override
+    public Class<Message_1_0> getInputClass()
+    {
+        return Message_1_0.class;
+    }
+
+    @Override
+    public Class<MessageTransferMessage> getOutputClass()
+    {
+        return MessageTransferMessage.class;
+    }
+
+    @Override
+    public MessageTransferMessage convert(Message_1_0 message, VirtualHost vhost)
+    {
+        return null;  //TODO - Implement
+    }
+}

Propchange: qpid/branches/QPID-4659/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/converter/v0_10_v1_0/MessageConverter_1_0_to_0_10.java
------------------------------------------------------------------------------
    svn:eol-style = native



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org