From 0efcf2c5c91f4927ccc00ad1cf391c2f964cc2e1 Mon Sep 17 00:00:00 2001 From: Alan Conway Date: Wed, 27 Jun 2007 21:19:14 +0000 Subject: * src/qpid/framing/ChannelAdapter.cpp: Use handler chains for in and outbound frames. * src/qpid/framing/InputHandler.h, OutputHandler.h, FrameHandler.h: All handlers pass AMQFrame& and have consistent memory management. Terminal OutputHandlers used to take ownership and delete frame, now they make a shallow copy instead. * src/qpid/framing/Handler.h, FrameHandler.h: Simplified. * src/qpid/client/ClientConnection.cpp: * src/qpid/broker/Connection.cpp: * src/qpid/broker/BrokerChannel.cpp: Update for ChannelAdapter changes. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@551336 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/tests/Handler.cpp | 67 ----------------------------------------------- 1 file changed, 67 deletions(-) delete mode 100644 cpp/src/tests/Handler.cpp (limited to 'cpp/src/tests/Handler.cpp') diff --git a/cpp/src/tests/Handler.cpp b/cpp/src/tests/Handler.cpp deleted file mode 100644 index 6725394be8..0000000000 --- a/cpp/src/tests/Handler.cpp +++ /dev/null @@ -1,67 +0,0 @@ -/* - * - * Copyright (c) 2006 The Apache Software Foundation - * - * Licensed 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. - * - */ - -#define BOOST_AUTO_TEST_MAIN // Must come before #include -#include - -#include "qpid/framing/AMQFrame.h" -#include "qpid/framing/FrameHandler.h" -#include "test_tools.h" -#include - -using namespace std; -using namespace qpid; -using namespace qpid::framing; -using namespace boost::assign; - -typedef int DummyFrame; -typedef int DummyContext; -vector handledBy; - -/** Both a link and a terminal handler. */ -template -struct TestHandler : public Handler { - TestHandler(DummyContext c) : context(c) {} - - void handle(DummyFrame frame) { - handledBy.push_back(N+context); - nextHandler(frame); - } - - typedef HandlerFactoryImpl, DummyContext> Factory; - DummyContext context; -}; - - - -BOOST_AUTO_TEST_CASE(handlerChains) { - TestHandler<1>::Factory a; - TestHandler<2>::Factory b; - TestHandler<3>::Factory c; - HandlerFactoryChain factory; - factory.push_back(&a); - factory.push_back(&b); - factory.push_back(&c); - factory.create(10)->handle(1); - - vector expect; - expect = list_of(11)(12)(13); - BOOST_CHECK_EQUAL(expect, handledBy); -} - - -- cgit v1.2.1