/home/aconway/svn/qpid/cpp/gen/AMQP_ClientOperations.h

00001 /*
00002  *
00003  * Licensed to the Apache Software Foundation (ASF) under one
00004  * or more contributor license agreements.  See the NOTICE file
00005  * distributed with this work for additional information
00006  * regarding copyright ownership.  The ASF licenses this file
00007  * to you under the Apache License, Version 2.0 (the
00008  * "License"); you may not use this file except in compliance
00009  * with the License.  You may obtain a copy of the License at
00010  * 
00011  *   http://www.apache.org/licenses/LICENSE-2.0
00012  * 
00013  * Unless required by applicable law or agreed to in writing,
00014  * software distributed under the License is distributed on an
00015  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
00016  * KIND, either express or implied.  See the License for the
00017  * specific language governing permissions and limitations
00018  * under the License.
00019  *
00020  */
00021 
00022 /*
00023  * This file is auto-generated by Qpid Gentools v.0.1 - do not modify.
00024  * Supported AMQP versions:
00025  *   8-0
00026  */
00027 
00028 #ifndef qpid_framing_AMQP_ClientOperations__
00029 #define qpid_framing_AMQP_ClientOperations__
00030 
00031 #include <sstream>
00032 
00033 #include <FieldTable.h>
00034 #include <ProtocolVersion.h>
00035 #include <ProtocolVersionException.h>
00036 
00037 namespace qpid {
00038 namespace framing {
00039 
00040 class AMQP_ClientProxy;
00041 
00042 class AMQP_ClientOperations
00043 {
00044 protected:
00045     ProtocolVersion version;
00046         AMQP_ClientOperations() {}
00047 
00048 public:
00049     AMQP_ClientOperations(u_int8_t major, u_int8_t minor) : version(major, minor) {}
00050     AMQP_ClientOperations(ProtocolVersion& version) : version(version) {}
00051     virtual ~AMQP_ClientOperations() {}
00052 
00053     inline u_int8_t getMajor() const { return version.getMajor(); }
00054     inline u_int8_t getMinor() const { return version.getMinor(); }
00055     inline const ProtocolVersion& getVersion() const { return version; }
00056     inline bool isVersion(u_int8_t _major, u_int8_t _minor) const
00057     {
00058         return version.equals(_major, _minor);
00059     }
00060     inline bool isVersion(ProtocolVersion& _version) const
00061     {
00062         return version.equals(_version);
00063     }
00064 
00065         // Include framing constant declarations
00066         #include <AMQP_Constants.h>
00067         
00068     // Inner classes
00069 
00070     // ==================== class AccessHandler ====================
00071     class AccessHandler
00072     {
00073     private:
00074         AMQP_ClientProxy* parent;
00075 
00076         // Constructors and destructors
00077 
00078     protected:
00079         AccessHandler() {}
00080     public:
00081         AccessHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00082         virtual ~AccessHandler() {}
00083 
00084         // Protocol methods
00085 
00086         virtual void requestOk( u_int16_t channel,
00087                             u_int16_t ticket ) = 0;
00088     }; // class AccessHandler
00089 
00090     // ==================== class BasicHandler ====================
00091     class BasicHandler
00092     {
00093     private:
00094         AMQP_ClientProxy* parent;
00095 
00096         // Constructors and destructors
00097 
00098     protected:
00099         BasicHandler() {}
00100     public:
00101         BasicHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00102         virtual ~BasicHandler() {}
00103 
00104         // Protocol methods
00105 
00106         virtual void cancelOk( u_int16_t channel,
00107                             const string& consumerTag ) = 0;
00108 
00109         virtual void consumeOk( u_int16_t channel,
00110                             const string& consumerTag ) = 0;
00111 
00112         virtual void deliver( u_int16_t channel,
00113                             const string& consumerTag,
00114                             u_int64_t deliveryTag,
00115                             bool redelivered,
00116                             const string& exchange,
00117                             const string& routingKey ) = 0;
00118 
00119         virtual void getEmpty( u_int16_t channel,
00120                             const string& clusterId ) = 0;
00121 
00122         virtual void getOk( u_int16_t channel,
00123                             u_int64_t deliveryTag,
00124                             bool redelivered,
00125                             const string& exchange,
00126                             const string& routingKey,
00127                             u_int32_t messageCount ) = 0;
00128 
00129         virtual void qosOk( u_int16_t channel ) = 0;
00130 
00131         virtual void return_( u_int16_t channel,
00132                             u_int16_t replyCode,
00133                             const string& replyText,
00134                             const string& exchange,
00135                             const string& routingKey ) = 0;
00136     }; // class BasicHandler
00137 
00138     // ==================== class ChannelHandler ====================
00139     class ChannelHandler
00140     {
00141     private:
00142         AMQP_ClientProxy* parent;
00143 
00144         // Constructors and destructors
00145 
00146     protected:
00147         ChannelHandler() {}
00148     public:
00149         ChannelHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00150         virtual ~ChannelHandler() {}
00151 
00152         // Protocol methods
00153 
00154         virtual void alert( u_int16_t channel,
00155                             u_int16_t replyCode,
00156                             const string& replyText,
00157                             const FieldTable& details ) = 0;
00158 
00159         virtual void close( u_int16_t channel,
00160                             u_int16_t replyCode,
00161                             const string& replyText,
00162                             u_int16_t classId,
00163                             u_int16_t methodId ) = 0;
00164 
00165         virtual void closeOk( u_int16_t channel ) = 0;
00166 
00167         virtual void flow( u_int16_t channel,
00168                             bool active ) = 0;
00169 
00170         virtual void flowOk( u_int16_t channel,
00171                             bool active ) = 0;
00172 
00173         virtual void openOk( u_int16_t channel ) = 0;
00174     }; // class ChannelHandler
00175 
00176     // ==================== class ConnectionHandler ====================
00177     class ConnectionHandler
00178     {
00179     private:
00180         AMQP_ClientProxy* parent;
00181 
00182         // Constructors and destructors
00183 
00184     protected:
00185         ConnectionHandler() {}
00186     public:
00187         ConnectionHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00188         virtual ~ConnectionHandler() {}
00189 
00190         // Protocol methods
00191 
00192         virtual void close( u_int16_t channel,
00193                             u_int16_t replyCode,
00194                             const string& replyText,
00195                             u_int16_t classId,
00196                             u_int16_t methodId ) = 0;
00197 
00198         virtual void closeOk( u_int16_t channel ) = 0;
00199 
00200         virtual void openOk( u_int16_t channel,
00201                             const string& knownHosts ) = 0;
00202 
00203         virtual void redirect( u_int16_t channel,
00204                             const string& host,
00205                             const string& knownHosts ) = 0;
00206 
00207         virtual void secure( u_int16_t channel,
00208                             const string& challenge ) = 0;
00209 
00210         virtual void start( u_int16_t channel,
00211                             u_int8_t versionMajor,
00212                             u_int8_t versionMinor,
00213                             const FieldTable& serverProperties,
00214                             const string& mechanisms,
00215                             const string& locales ) = 0;
00216 
00217         virtual void tune( u_int16_t channel,
00218                             u_int16_t channelMax,
00219                             u_int32_t frameMax,
00220                             u_int16_t heartbeat ) = 0;
00221     }; // class ConnectionHandler
00222 
00223     // ==================== class DtxHandler ====================
00224     class DtxHandler
00225     {
00226     private:
00227         AMQP_ClientProxy* parent;
00228 
00229         // Constructors and destructors
00230 
00231     protected:
00232         DtxHandler() {}
00233     public:
00234         DtxHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00235         virtual ~DtxHandler() {}
00236 
00237         // Protocol methods
00238 
00239         virtual void selectOk( u_int16_t channel ) = 0;
00240 
00241         virtual void startOk( u_int16_t channel ) = 0;
00242     }; // class DtxHandler
00243 
00244     // ==================== class ExchangeHandler ====================
00245     class ExchangeHandler
00246     {
00247     private:
00248         AMQP_ClientProxy* parent;
00249 
00250         // Constructors and destructors
00251 
00252     protected:
00253         ExchangeHandler() {}
00254     public:
00255         ExchangeHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00256         virtual ~ExchangeHandler() {}
00257 
00258         // Protocol methods
00259 
00260         virtual void declareOk( u_int16_t channel ) = 0;
00261 
00262         virtual void deleteOk( u_int16_t channel ) = 0;
00263     }; // class ExchangeHandler
00264 
00265     // ==================== class FileHandler ====================
00266     class FileHandler
00267     {
00268     private:
00269         AMQP_ClientProxy* parent;
00270 
00271         // Constructors and destructors
00272 
00273     protected:
00274         FileHandler() {}
00275     public:
00276         FileHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00277         virtual ~FileHandler() {}
00278 
00279         // Protocol methods
00280 
00281         virtual void cancelOk( u_int16_t channel,
00282                             const string& consumerTag ) = 0;
00283 
00284         virtual void consumeOk( u_int16_t channel,
00285                             const string& consumerTag ) = 0;
00286 
00287         virtual void deliver( u_int16_t channel,
00288                             const string& consumerTag,
00289                             u_int64_t deliveryTag,
00290                             bool redelivered,
00291                             const string& exchange,
00292                             const string& routingKey,
00293                             const string& identifier ) = 0;
00294 
00295         virtual void open( u_int16_t channel,
00296                             const string& identifier,
00297                             u_int64_t contentSize ) = 0;
00298 
00299         virtual void openOk( u_int16_t channel,
00300                             u_int64_t stagedSize ) = 0;
00301 
00302         virtual void qosOk( u_int16_t channel ) = 0;
00303 
00304         virtual void return_( u_int16_t channel,
00305                             u_int16_t replyCode,
00306                             const string& replyText,
00307                             const string& exchange,
00308                             const string& routingKey ) = 0;
00309 
00310         virtual void stage( u_int16_t channel ) = 0;
00311     }; // class FileHandler
00312 
00313     // ==================== class QueueHandler ====================
00314     class QueueHandler
00315     {
00316     private:
00317         AMQP_ClientProxy* parent;
00318 
00319         // Constructors and destructors
00320 
00321     protected:
00322         QueueHandler() {}
00323     public:
00324         QueueHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00325         virtual ~QueueHandler() {}
00326 
00327         // Protocol methods
00328 
00329         virtual void bindOk( u_int16_t channel ) = 0;
00330 
00331         virtual void declareOk( u_int16_t channel,
00332                             const string& queue,
00333                             u_int32_t messageCount,
00334                             u_int32_t consumerCount ) = 0;
00335 
00336         virtual void deleteOk( u_int16_t channel,
00337                             u_int32_t messageCount ) = 0;
00338 
00339         virtual void purgeOk( u_int16_t channel,
00340                             u_int32_t messageCount ) = 0;
00341     }; // class QueueHandler
00342 
00343     // ==================== class StreamHandler ====================
00344     class StreamHandler
00345     {
00346     private:
00347         AMQP_ClientProxy* parent;
00348 
00349         // Constructors and destructors
00350 
00351     protected:
00352         StreamHandler() {}
00353     public:
00354         StreamHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00355         virtual ~StreamHandler() {}
00356 
00357         // Protocol methods
00358 
00359         virtual void cancelOk( u_int16_t channel,
00360                             const string& consumerTag ) = 0;
00361 
00362         virtual void consumeOk( u_int16_t channel,
00363                             const string& consumerTag ) = 0;
00364 
00365         virtual void deliver( u_int16_t channel,
00366                             const string& consumerTag,
00367                             u_int64_t deliveryTag,
00368                             const string& exchange,
00369                             const string& queue ) = 0;
00370 
00371         virtual void qosOk( u_int16_t channel ) = 0;
00372 
00373         virtual void return_( u_int16_t channel,
00374                             u_int16_t replyCode,
00375                             const string& replyText,
00376                             const string& exchange,
00377                             const string& routingKey ) = 0;
00378     }; // class StreamHandler
00379 
00380     // ==================== class TestHandler ====================
00381     class TestHandler
00382     {
00383     private:
00384         AMQP_ClientProxy* parent;
00385 
00386         // Constructors and destructors
00387 
00388     protected:
00389         TestHandler() {}
00390     public:
00391         TestHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00392         virtual ~TestHandler() {}
00393 
00394         // Protocol methods
00395 
00396         virtual void content( u_int16_t channel ) = 0;
00397 
00398         virtual void contentOk( u_int16_t channel,
00399                             u_int32_t contentChecksum ) = 0;
00400 
00401         virtual void integer( u_int16_t channel,
00402                             u_int8_t integer1,
00403                             u_int16_t integer2,
00404                             u_int32_t integer3,
00405                             u_int64_t integer4,
00406                             u_int8_t operation ) = 0;
00407 
00408         virtual void integerOk( u_int16_t channel,
00409                             u_int64_t result ) = 0;
00410 
00411         virtual void string_( u_int16_t channel,
00412                             const string& string1,
00413                             const string& string2,
00414                             u_int8_t operation ) = 0;
00415 
00416         virtual void stringOk( u_int16_t channel,
00417                             const string& result ) = 0;
00418 
00419         virtual void table( u_int16_t channel,
00420                             const FieldTable& table,
00421                             u_int8_t integerOp,
00422                             u_int8_t stringOp ) = 0;
00423 
00424         virtual void tableOk( u_int16_t channel,
00425                             u_int64_t integerResult,
00426                             const string& stringResult ) = 0;
00427     }; // class TestHandler
00428 
00429     // ==================== class TunnelHandler ====================
00430     class TunnelHandler
00431     {
00432     private:
00433         AMQP_ClientProxy* parent;
00434 
00435         // Constructors and destructors
00436 
00437     protected:
00438         TunnelHandler() {}
00439     public:
00440         TunnelHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00441         virtual ~TunnelHandler() {}
00442 
00443         // Protocol methods
00444 
00445     }; // class TunnelHandler
00446 
00447     // ==================== class TxHandler ====================
00448     class TxHandler
00449     {
00450     private:
00451         AMQP_ClientProxy* parent;
00452 
00453         // Constructors and destructors
00454 
00455     protected:
00456         TxHandler() {}
00457     public:
00458         TxHandler(AMQP_ClientProxy* _parent) {parent = _parent;}
00459         virtual ~TxHandler() {}
00460 
00461         // Protocol methods
00462 
00463         virtual void commitOk( u_int16_t channel ) = 0;
00464 
00465         virtual void rollbackOk( u_int16_t channel ) = 0;
00466 
00467         virtual void selectOk( u_int16_t channel ) = 0;
00468     }; // class TxHandler
00469         
00470     // Method handler get methods
00471 
00472     virtual AMQP_ClientOperations::AccessHandler* getAccessHandler() = 0;
00473     virtual AMQP_ClientOperations::BasicHandler* getBasicHandler() = 0;
00474     virtual AMQP_ClientOperations::ChannelHandler* getChannelHandler() = 0;
00475     virtual AMQP_ClientOperations::ConnectionHandler* getConnectionHandler() = 0;
00476     virtual AMQP_ClientOperations::DtxHandler* getDtxHandler() = 0;
00477     virtual AMQP_ClientOperations::ExchangeHandler* getExchangeHandler() = 0;
00478     virtual AMQP_ClientOperations::FileHandler* getFileHandler() = 0;
00479     virtual AMQP_ClientOperations::QueueHandler* getQueueHandler() = 0;
00480     virtual AMQP_ClientOperations::StreamHandler* getStreamHandler() = 0;
00481     virtual AMQP_ClientOperations::TestHandler* getTestHandler() = 0;
00482     virtual AMQP_ClientOperations::TxHandler* getTxHandler() = 0;
00483 
00484 }; /* class AMQP_ClientOperations */
00485 
00486 } /* namespace framing */
00487 } /* namespace qpid */
00488 
00489 #endif

Generated on Thu Jan 25 11:48:13 2007 for Qpid by  doxygen 1.5.1