BUG-58: refactor to take advantage of netty 74/1074/4
authorRobert Varga <rovarga@cisco.com>
Fri, 23 Aug 2013 13:55:03 +0000 (15:55 +0200)
committerRobert Varga <rovarga@cisco.com>
Fri, 6 Sep 2013 09:05:19 +0000 (11:05 +0200)
commita01e8a8629311b3480b2085aca40feea539f4ba0
tree2c235778a91da616c384a648f77eca5356c25d27
parent16688ea6965356c21a863c6f7e76ce9c50910eec
BUG-58: refactor to take advantage of netty

This patchset reworks the framework to take advantage of features in
netty, shortcutting many of the previous concepts. This lead to a major
refactor, reorganizing the way things are glued together.

SessionProposal/Checkers have been removed in favor of an explicit
negotiation piece, which is put on the channel pipeline to negotiate
session parameters -- uopn success it replaces itself with a complete
session.

ProtocolSessionInboundHandler has been integrated into
AbstractProtocolSession, handling the tasks normally.

Finally, Dispatcher uses all this restructure to implement Session
reconnect in a relatively straightforward manner.

Change-Id: I84a6b4c99282212505e6d91ab40da9867ca95e53
Signed-off-by: Robert Varga <rovarga@cisco.com>
132 files changed:
bgp/parser-api/src/main/java/org/opendaylight/protocol/bgp/parser/BGPSession.java
bgp/parser-api/src/main/java/org/opendaylight/protocol/bgp/parser/BGPSessionListener.java
bgp/parser-api/src/main/java/org/opendaylight/protocol/bgp/parser/BGPTerminationReason.java [new file with mode: 0644]
bgp/parser-impl/src/main/java/org/opendaylight/protocol/bgp/parser/impl/BGPMessageFactory.java
bgp/parser-impl/src/test/java/org/opendaylight/protocol/bgp/parser/impl/BGPParserTest.java
bgp/parser-mock/src/main/java/org/opendaylight/protocol/bgp/parser/mock/BGPMessageParserMock.java
bgp/parser-mock/src/test/java/org/opendaylight/protocol/bgp/parser/mock/BGPMessageParserMockTest.java
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPConnectionImpl.java [deleted file]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPDispatcherImpl.java
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPImpl.java
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPPeer.java
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSessionFactory.java [deleted file]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSessionImpl.java
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSessionNegotiator.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSessionNegotiatorFactory.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSessionProposalCheckerImpl.java [deleted file]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSessionProposalImpl.java
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPSynchronization.java
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/spi/BGPConnection.java [deleted file]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/spi/BGPConnectionFactory.java [deleted file]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/spi/BGPDispatcher.java
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/spi/BGPSessionPreferences.java
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/spi/BGPSessionProposal.java
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/spi/BGPSessionProposalChecker.java [deleted file]
bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/ApiTest.java
bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/BGPImplTest.java
bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/FSMTest.java
bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/MockDispatcher.java [deleted file]
bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/ParserTest.java
bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SimpleSessionListener.java
bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SpeakerSessionListener.java
bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SpeakerSessionMock.java
bgp/rib-impl/src/test/java/org/opendaylight/protocol/bgp/rib/impl/SynchronizationTest.java
bgp/rib-mock/src/main/java/org/opendaylight/protocol/bgp/rib/mock/BGPMock.java
bgp/rib-mock/src/main/java/org/opendaylight/protocol/bgp/rib/mock/EventBusRegistration.java
bgp/rib-mock/src/test/java/org/opendaylight/protocol/bgp/rib/mock/BGPListenerMock.java
bgp/testtool/src/main/java/org/opendaylight/protocol/bgp/testtool/Main.java
bgp/testtool/src/main/java/org/opendaylight/protocol/bgp/testtool/TestingListener.java
bgp/testtool/src/test/java/org/opendaylight/protocol/bgp/testtool/BGPSpeakerMock.java
bgp/testtool/src/test/java/org/opendaylight/protocol/bgp/testtool/SpeakerSessionListener.java
framework/src/main/java/org/opendaylight/protocol/framework/AbstractProtocolSession.java [new file with mode: 0644]
framework/src/main/java/org/opendaylight/protocol/framework/AbstractSessionNegotiator.java [new file with mode: 0644]
framework/src/main/java/org/opendaylight/protocol/framework/ChannelInitializerImpl.java [new file with mode: 0644]
framework/src/main/java/org/opendaylight/protocol/framework/Dispatcher.java
framework/src/main/java/org/opendaylight/protocol/framework/DispatcherImpl.java
framework/src/main/java/org/opendaylight/protocol/framework/NeverReconnectStrategy.java
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolConnection.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolConnectionFactory.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolHandlerFactory.java
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolMessageDecoder.java
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolMessageEncoder.java
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolMessageFactory.java
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolMessageHeader.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolServer.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolSession.java
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolSessionFactory.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolSessionInboundHandler.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/ProtocolSessionPromise.java [new file with mode: 0644]
framework/src/main/java/org/opendaylight/protocol/framework/ReconnectImmediatelyStrategy.java
framework/src/main/java/org/opendaylight/protocol/framework/ReconnectPromise.java [new file with mode: 0644]
framework/src/main/java/org/opendaylight/protocol/framework/ReconnectStrategy.java
framework/src/main/java/org/opendaylight/protocol/framework/ReconnectStrategyFactory.java [new file with mode: 0644]
framework/src/main/java/org/opendaylight/protocol/framework/SessionListener.java
framework/src/main/java/org/opendaylight/protocol/framework/SessionListenerFactory.java
framework/src/main/java/org/opendaylight/protocol/framework/SessionNegotiator.java [new file with mode: 0644]
framework/src/main/java/org/opendaylight/protocol/framework/SessionNegotiatorFactory.java [new file with mode: 0644]
framework/src/main/java/org/opendaylight/protocol/framework/SessionParent.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/SessionPreferences.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/SessionPreferencesChecker.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/SessionPreferencesCheckerFactory.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/SessionProposal.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/SessionProposalFactory.java [deleted file]
framework/src/main/java/org/opendaylight/protocol/framework/TimedReconnectStrategy.java
framework/src/test/java/org/opendaylight/protocol/framework/MessageFactory.java
framework/src/test/java/org/opendaylight/protocol/framework/ServerTest.java
framework/src/test/java/org/opendaylight/protocol/framework/Session.java
framework/src/test/java/org/opendaylight/protocol/framework/SimpleMessage.java [moved from framework/src/test/java/org/opendaylight/protocol/framework/Message.java with 83% similarity]
framework/src/test/java/org/opendaylight/protocol/framework/SimpleSession.java
framework/src/test/java/org/opendaylight/protocol/framework/SimpleSessionFactory.java [deleted file]
framework/src/test/java/org/opendaylight/protocol/framework/SimpleSessionListener.java
framework/src/test/java/org/opendaylight/protocol/framework/SimpleSessionListenerFactory.java
framework/src/test/java/org/opendaylight/protocol/framework/SimpleSessionNegotiator.java [new file with mode: 0644]
framework/src/test/java/org/opendaylight/protocol/framework/SimpleSessionPreferences.java [deleted file]
framework/src/test/java/org/opendaylight/protocol/framework/SimpleSessionProposal.java [deleted file]
framework/src/test/java/org/opendaylight/protocol/framework/SimpleSessionProposalChecker.java [deleted file]
framework/src/test/java/org/opendaylight/protocol/framework/SimpleSessionProposalCheckerFactory.java [deleted file]
framework/src/test/java/org/opendaylight/protocol/framework/SimpleSessionProposalFactory.java [deleted file]
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPCloseTermination.java
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPConnection.java [deleted file]
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPConnectionFactory.java [deleted file]
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPDispatcher.java
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPErrorTermination.java
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPSession.java
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPSessionListener.java
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPSessionListenerFactory.java
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPSessionPreferences.java [deleted file]
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPSessionProposal.java [deleted file]
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPSessionProposalChecker.java [deleted file]
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPSessionProposalCheckerFactory.java [deleted file]
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPSessionProposalFactory.java
pcep/api/src/main/java/org/opendaylight/protocol/pcep/PCEPTerminationReason.java [new file with mode: 0644]
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/AbstractPCEPSessionNegotiator.java [new file with mode: 0644]
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/AbstractPCEPSessionNegotiatorFactory.java [new file with mode: 0644]
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/DefaultPCEPSessionNegotiator.java [new file with mode: 0644]
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/DefaultPCEPSessionNegotiatorFactory.java [new file with mode: 0644]
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/PCEPConnectionImpl.java [deleted file]
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/PCEPDispatcherImpl.java
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/PCEPMessageFactory.java
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/PCEPMessageHeader.java
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/PCEPMessageType.java [new file with mode: 0644]
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/PCEPMessageValidator.java
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/PCEPSessionFactoryImpl.java [deleted file]
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/PCEPSessionImpl.java
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/PCEPSessionProposalCheckerFactoryImpl.java [deleted file]
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/PCEPSessionProposalFactoryImpl.java
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/RawPCEPMessageFactory.java [new file with mode: 0644]
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/message/PCEPRawMessage.java
pcep/impl/src/test/java/org/opendaylight/protocol/pcep/impl/CompositeTest.java
pcep/impl/src/test/java/org/opendaylight/protocol/pcep/impl/FiniteStateMachineTest.java
pcep/impl/src/test/java/org/opendaylight/protocol/pcep/impl/MockDispatcher.java [deleted file]
pcep/impl/src/test/java/org/opendaylight/protocol/pcep/impl/MockPCE.java
pcep/impl/src/test/java/org/opendaylight/protocol/pcep/impl/PCEPValidatorTest.java
pcep/impl/src/test/java/org/opendaylight/protocol/pcep/impl/ServerSessionMock.java
pcep/impl/src/test/java/org/opendaylight/protocol/pcep/impl/SimpleSessionListener.java
pcep/impl/src/test/java/org/opendaylight/protocol/pcep/impl/SimpleSessionProposalChecker.java [deleted file]
pcep/testtool/src/main/java/org/opendaylight/protocol/pcep/testtool/Main.java
pcep/testtool/src/main/java/org/opendaylight/protocol/pcep/testtool/SessionListenerFactory.java
pcep/testtool/src/main/java/org/opendaylight/protocol/pcep/testtool/SimpleSessionListener.java
pcep/testtool/src/main/java/org/opendaylight/protocol/pcep/testtool/TestingSessionListener.java
pcep/testtool/src/main/java/org/opendaylight/protocol/pcep/testtool/TestingSessionListenerFactory.java
pcep/testtool/src/test/java/org/opendaylight/protocol/pcep/testtool/PCCMock.java
pcep/testtool/src/test/java/org/opendaylight/protocol/pcep/testtool/PCEPTestingToolTest.java