diff options
author | Alan Conway <aconway@apache.org> | 2007-01-05 00:52:33 +0000 |
---|---|---|
committer | Alan Conway <aconway@apache.org> | 2007-01-05 00:52:33 +0000 |
commit | e614b63e6703b98407129deb3e4e533de868ef30 (patch) | |
tree | 2447ad354b9d180f843a51ee6cdd0a54819bcd32 /cpp/lib | |
parent | 04f454c9c580a7ad77698e7e4a7e8ce25e59b14f (diff) | |
download | qpid-python-e614b63e6703b98407129deb3e4e533de868ef30.tar.gz |
0-9 branch now compiles but is not yet functional.
Areas needing attention are marked FIXME.
It includes both 0-8 Basic etc. classes 0-9 Message claasses,
0-8 classes cannot be removed till 0-9 Message is ready to replace them.
Summary of fixes:
- added 0-9 methods to SessionHandlerImpl.h, no implementation yet.
- added missing framing::Content methods
- unimplemented methods do { assert(0); // FIXME
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/qpid.0-9@492840 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/lib')
-rw-r--r-- | cpp/lib/broker/SessionHandlerImpl.cpp | 65 | ||||
-rw-r--r-- | cpp/lib/broker/SessionHandlerImpl.h | 29 | ||||
-rw-r--r-- | cpp/lib/common/framing/FramingContent.cpp | 30 | ||||
-rw-r--r-- | cpp/lib/common/framing/FramingContent.h | 27 |
4 files changed, 108 insertions, 43 deletions
diff --git a/cpp/lib/broker/SessionHandlerImpl.cpp b/cpp/lib/broker/SessionHandlerImpl.cpp index 9131060b81..d0971c4fae 100644 --- a/cpp/lib/broker/SessionHandlerImpl.cpp +++ b/cpp/lib/broker/SessionHandlerImpl.cpp @@ -217,9 +217,13 @@ void SessionHandlerImpl::ConnectionHandlerImpl::closeOk(u_int16_t /*channel*/){ void SessionHandlerImpl::ChannelHandlerImpl::open(u_int16_t channel, const string& /*outOfBand*/){ - parent->channels[channel] = new Channel(parent->client->getProtocolVersion() , parent->context, channel, parent->framemax, - parent->queues->getStore(), parent->settings.stagingThreshold); - parent->client->getChannel().openOk(channel); + parent->channels[channel] = new Channel( + parent->client->getProtocolVersion() , parent->context, channel, + parent->framemax, parent->queues->getStore(), + parent->settings.stagingThreshold); + + // FIXME aconway 2007-01-04: provide valid channel Id as per ampq 0-9 + parent->client->getChannel().openOk(channel, std::string()/* ID */); } void SessionHandlerImpl::ChannelHandlerImpl::flow(u_int16_t /*channel*/, bool /*active*/){} @@ -262,7 +266,21 @@ void SessionHandlerImpl::ExchangeHandlerImpl::declare(u_int16_t channel, u_int16 if(!nowait){ parent->client->getExchange().declareOk(channel); } -} +} + + +void SessionHandlerImpl::ExchangeHandlerImpl::unbind( + u_int16_t /*channel*/, + u_int16_t /*ticket*/, + const string& /*queue*/, + const string& /*exchange*/, + const string& /*routingKey*/, + const qpid::framing::FieldTable& /*arguments*/ ) +{ + assert(0); // FIXME aconway 2007-01-04: 0-9 feature +} + + void SessionHandlerImpl::ExchangeHandlerImpl::delete_(u_int16_t channel, u_int16_t /*ticket*/, const string& exchange, bool /*ifUnused*/, bool nowait){ @@ -453,3 +471,42 @@ void SessionHandlerImpl::TxHandlerImpl::rollback(u_int16_t channel){ parent->getChannel(channel)->recover(false); } +void +SessionHandlerImpl::QueueHandlerImpl::unbind( + u_int16_t /*channel*/, + u_int16_t /*ticket*/, + const string& /*queue*/, + const string& /*exchange*/, + const string& /*routingKey*/, + const qpid::framing::FieldTable& /*arguments*/ ) +{ + assert(0); // FIXME aconway 2007-01-04: 0-9 feature +} + +void +SessionHandlerImpl::ChannelHandlerImpl::ok( u_int16_t /*channel*/ ) +{ + assert(0); // FIXME aconway 2007-01-04: 0-9 feature +} + +void +SessionHandlerImpl::ChannelHandlerImpl::ping( u_int16_t /*channel*/ ) +{ + assert(0); // FIXME aconway 2007-01-04: 0-9 feature +} + +void +SessionHandlerImpl::ChannelHandlerImpl::pong( u_int16_t /*channel*/ ) +{ + assert(0); // FIXME aconway 2007-01-04: 0-9 feature +} + +void +SessionHandlerImpl::ChannelHandlerImpl::resume( + u_int16_t /*channel*/, + const string& /*channelId*/ ) +{ + assert(0); // FIXME aconway 2007-01-04: 0-9 feature +} + + diff --git a/cpp/lib/broker/SessionHandlerImpl.h b/cpp/lib/broker/SessionHandlerImpl.h index cdfccead27..c4ce9e7fd0 100644 --- a/cpp/lib/broker/SessionHandlerImpl.h +++ b/cpp/lib/broker/SessionHandlerImpl.h @@ -157,7 +157,15 @@ class SessionHandlerImpl : public virtual qpid::sys::SessionHandler, virtual void flowOk(u_int16_t channel, bool active); - // Change to match new code generator function signature (adding const to string&) - kpvdr 2006-11-20 + virtual void ok( u_int16_t channel ); + + virtual void ping( u_int16_t channel ); + + virtual void pong( u_int16_t channel ); + + virtual void resume( u_int16_t channel, + const string& channelId ); + virtual void close(u_int16_t channel, u_int16_t replyCode, const string& replyText, u_int16_t classId, u_int16_t methodId); @@ -175,9 +183,15 @@ class SessionHandlerImpl : public virtual qpid::sys::SessionHandler, bool passive, bool durable, bool autoDelete, bool internal, bool nowait, const qpid::framing::FieldTable& arguments); - // Change to match new code generator function signature (adding const to string&) - kpvdr 2006-11-20 virtual void delete_(u_int16_t channel, u_int16_t ticket, const string& exchange, bool ifUnused, bool nowait); + virtual void unbind(u_int16_t channel, + u_int16_t ticket, + const string& queue, + const string& exchange, + const string& routingKey, + const qpid::framing::FieldTable& arguments ); + virtual ~ExchangeHandlerImpl(){} }; @@ -195,6 +209,13 @@ class SessionHandlerImpl : public virtual qpid::sys::SessionHandler, const string& exchange, const string& routingKey, bool nowait, const qpid::framing::FieldTable& arguments); + virtual void unbind(u_int16_t channel, + u_int16_t ticket, + const string& queue, + const string& exchange, + const string& routingKey, + const qpid::framing::FieldTable& arguments ); + virtual void purge(u_int16_t channel, u_int16_t ticket, const string& queue, bool nowait); @@ -258,7 +279,9 @@ class SessionHandlerImpl : public virtual qpid::sys::SessionHandler, inline virtual DtxHandler* getDtxHandler(){ throw ConnectionException(540, "Dtx class not implemented"); } inline virtual TunnelHandler* getTunnelHandler(){ throw ConnectionException(540, "Tunnel class not implemented"); } - // FIXME aconway 2007-01-04: what's this about? + virtual AMQP_ServerOperations::MessageHandler* getMessageHandler(){ throw ConnectionException(540, "Message class not implemented"); } + + // FIXME aconway 2007-01-04: Remove? // Temporary add-in to resolve version conflicts: AMQP v8.0 still defines class Test; // however v0.9 will not - kpvdr 2006-11-17 // inline virtual TestHandler* getTestHandler(){ throw ConnectionException(540, "Test class not implemented"); } diff --git a/cpp/lib/common/framing/FramingContent.cpp b/cpp/lib/common/framing/FramingContent.cpp index e5f50b5075..70c56e1fdd 100644 --- a/cpp/lib/common/framing/FramingContent.cpp +++ b/cpp/lib/common/framing/FramingContent.cpp @@ -18,24 +18,30 @@ * under the License. * */ -#include <Buffer.h> -#include <FramingContent.h> +#include <assert.h> -namespace qpid -{ -namespace framing -{ +#include "Buffer.h" +#include "FramingContent.h" + +namespace qpid { +namespace framing { Content::~Content() {} -void Content::encode(Buffer&) const -{ +void Content::encode(Buffer&) const { + assert(0); // FIXME aconway 2007-01-04: 0-9 feature +} + +void Content::decode(Buffer&) { + assert(0); // FIXME aconway 2007-01-04: 0-9 feature } -void Content::decode(Buffer&) -{ +size_t Content::size() const { + assert(0); // FIXME aconway 2007-01-04: 0-9 feature } +std::ostream& operator<<(std::ostream&, const Content&) { + assert(0); // FIXME aconway 2007-01-04: 0-9 feature +} -} // namespace framing -} // namespace qpid +}} // namespace framing::qpid diff --git a/cpp/lib/common/framing/FramingContent.h b/cpp/lib/common/framing/FramingContent.h index d9556e5188..833e766f9a 100644 --- a/cpp/lib/common/framing/FramingContent.h +++ b/cpp/lib/common/framing/FramingContent.h @@ -1,26 +1,5 @@ -/* - * - * 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. - * - */ - -#ifndef _Content_ -#define _Content_ +#ifndef _framing_FramingContent_h +#define _framing_FramingContent_h #include <ostream> @@ -45,4 +24,4 @@ class Content }} // namespace qpid::framing -#endif +#endif /*!_framing_FramingContent_h*/ |