Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET | Apache Qpid Documentation |
00001 #ifndef QPID_FRAMING_CLIENTINVOKER_H 00002 #define QPID_FRAMING_CLIENTINVOKER_H 00003 /* 00004 * 00005 * Licensed to the Apache Software Foundation (ASF) under one 00006 * or more contributor license agreements. See the NOTICE file 00007 * distributed with this work for additional information 00008 * regarding copyright ownership. The ASF licenses this file 00009 * to you under the Apache License, Version 2.0 (the 00010 * "License"); you may not use this file except in compliance 00011 * with the License. You may obtain a copy of the License at 00012 * 00013 * http://www.apache.org/licenses/LICENSE-2.0 00014 * 00015 * Unless required by applicable law or agreed to in writing, 00016 * software distributed under the License is distributed on an 00017 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 00018 * KIND, either express or implied. See the License for the 00019 * specific language governing permissions and limitations 00020 * under the License. 00021 * 00022 */ 00023 00028 00029 00030 #include "qpid/framing/AMQP_ClientOperations.h" 00031 #include "qpid/framing/Invoker.h" 00032 00033 namespace qpid { 00034 namespace framing { 00035 00036 00037 class AMQP_ClientOperations::Invoker: 00038 public qpid::framing::Invoker 00039 { 00040 AMQP_ClientOperations& target; 00041 public: 00042 Invoker(AMQP_ClientOperations& target_) : target(target_) {} 00043 using MethodBodyDefaultVisitor::visit; 00044 void visit(const ConnectionStartBody& body); 00045 void visit(const ConnectionSecureBody& body); 00046 void visit(const ConnectionTuneBody& body); 00047 void visit(const ConnectionOpenOkBody& body); 00048 void visit(const ConnectionRedirectBody& body); 00049 void visit(const ConnectionHeartbeatBody& body); 00050 void visit(const ConnectionCloseBody& body); 00051 void visit(const ConnectionCloseOkBody& body); 00052 void visit(const SessionAttachBody& body); 00053 void visit(const SessionAttachedBody& body); 00054 void visit(const SessionDetachBody& body); 00055 void visit(const SessionDetachedBody& body); 00056 void visit(const SessionRequestTimeoutBody& body); 00057 void visit(const SessionTimeoutBody& body); 00058 void visit(const SessionCommandPointBody& body); 00059 void visit(const SessionExpectedBody& body); 00060 void visit(const SessionConfirmedBody& body); 00061 void visit(const SessionCompletedBody& body); 00062 void visit(const SessionKnownCompletedBody& body); 00063 void visit(const SessionFlushBody& body); 00064 void visit(const SessionGapBody& body); 00065 void visit(const ExecutionSyncBody& body); 00066 void visit(const ExecutionResultBody& body); 00067 void visit(const ExecutionExceptionBody& body); 00068 void visit(const MessageAcceptBody& body); 00069 void visit(const MessageRejectBody& body); 00070 void visit(const MessageReleaseBody& body); 00071 void visit(const MessageResumeBody& body); 00072 void visit(const MessageSetFlowModeBody& body); 00073 void visit(const MessageFlowBody& body); 00074 void visit(const MessageStopBody& body); 00075 void visit(const FileQosOkBody& body); 00076 void visit(const FileConsumeOkBody& body); 00077 void visit(const FileOpenBody& body); 00078 void visit(const FileOpenOkBody& body); 00079 void visit(const FileDeliverBody& body); 00080 void visit(const StreamQosOkBody& body); 00081 void visit(const StreamConsumeOkBody& body); 00082 }; 00083 00084 class AMQP_ClientOperations::ConnectionHandler::Invoker: 00085 public qpid::framing::Invoker 00086 { 00087 AMQP_ClientOperations::ConnectionHandler& target; 00088 public: 00089 Invoker(AMQP_ClientOperations::ConnectionHandler& target_) : target(target_) {} 00090 using MethodBodyDefaultVisitor::visit; 00091 void visit(const ConnectionStartBody& body); 00092 void visit(const ConnectionSecureBody& body); 00093 void visit(const ConnectionTuneBody& body); 00094 void visit(const ConnectionOpenOkBody& body); 00095 void visit(const ConnectionRedirectBody& body); 00096 void visit(const ConnectionHeartbeatBody& body); 00097 void visit(const ConnectionCloseBody& body); 00098 void visit(const ConnectionCloseOkBody& body); 00099 }; 00100 00101 class AMQP_ClientOperations::SessionHandler::Invoker: 00102 public qpid::framing::Invoker 00103 { 00104 AMQP_ClientOperations::SessionHandler& target; 00105 public: 00106 Invoker(AMQP_ClientOperations::SessionHandler& target_) : target(target_) {} 00107 using MethodBodyDefaultVisitor::visit; 00108 void visit(const SessionAttachBody& body); 00109 void visit(const SessionAttachedBody& body); 00110 void visit(const SessionDetachBody& body); 00111 void visit(const SessionDetachedBody& body); 00112 void visit(const SessionRequestTimeoutBody& body); 00113 void visit(const SessionTimeoutBody& body); 00114 void visit(const SessionCommandPointBody& body); 00115 void visit(const SessionExpectedBody& body); 00116 void visit(const SessionConfirmedBody& body); 00117 void visit(const SessionCompletedBody& body); 00118 void visit(const SessionKnownCompletedBody& body); 00119 void visit(const SessionFlushBody& body); 00120 void visit(const SessionGapBody& body); 00121 }; 00122 00123 class AMQP_ClientOperations::ExecutionHandler::Invoker: 00124 public qpid::framing::Invoker 00125 { 00126 AMQP_ClientOperations::ExecutionHandler& target; 00127 public: 00128 Invoker(AMQP_ClientOperations::ExecutionHandler& target_) : target(target_) {} 00129 using MethodBodyDefaultVisitor::visit; 00130 void visit(const ExecutionSyncBody& body); 00131 void visit(const ExecutionResultBody& body); 00132 void visit(const ExecutionExceptionBody& body); 00133 }; 00134 00135 class AMQP_ClientOperations::MessageHandler::Invoker: 00136 public qpid::framing::Invoker 00137 { 00138 AMQP_ClientOperations::MessageHandler& target; 00139 public: 00140 Invoker(AMQP_ClientOperations::MessageHandler& target_) : target(target_) {} 00141 using MethodBodyDefaultVisitor::visit; 00142 void visit(const MessageAcceptBody& body); 00143 void visit(const MessageRejectBody& body); 00144 void visit(const MessageReleaseBody& body); 00145 void visit(const MessageResumeBody& body); 00146 void visit(const MessageSetFlowModeBody& body); 00147 void visit(const MessageFlowBody& body); 00148 void visit(const MessageStopBody& body); 00149 }; 00150 00151 class AMQP_ClientOperations::FileHandler::Invoker: 00152 public qpid::framing::Invoker 00153 { 00154 AMQP_ClientOperations::FileHandler& target; 00155 public: 00156 Invoker(AMQP_ClientOperations::FileHandler& target_) : target(target_) {} 00157 using MethodBodyDefaultVisitor::visit; 00158 void visit(const FileQosOkBody& body); 00159 void visit(const FileConsumeOkBody& body); 00160 void visit(const FileOpenBody& body); 00161 void visit(const FileOpenOkBody& body); 00162 void visit(const FileDeliverBody& body); 00163 }; 00164 00165 class AMQP_ClientOperations::StreamHandler::Invoker: 00166 public qpid::framing::Invoker 00167 { 00168 AMQP_ClientOperations::StreamHandler& target; 00169 public: 00170 Invoker(AMQP_ClientOperations::StreamHandler& target_) : target(target_) {} 00171 using MethodBodyDefaultVisitor::visit; 00172 void visit(const StreamQosOkBody& body); 00173 void visit(const StreamConsumeOkBody& body); 00174 }; 00175 00176 }} // namespace qpid::framing 00177 00178 #endif