Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET | Apache Qpid Documentation |
00001 #ifndef QPID_FRAMING_EXCHANGEBOUNDRESULT_H 00002 #define QPID_FRAMING_EXCHANGEBOUNDRESULT_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 00031 #include <ostream> 00032 #include "qpid/framing/amqp_types_full.h" 00033 00034 namespace qpid { 00035 namespace framing { 00036 00037 class ExchangeBoundResult { 00038 uint16_t flags; 00039 public: 00040 static const uint16_t TYPE = 1794; 00041 ExchangeBoundResult( 00042 bool _exchangeNotFound, 00043 bool _queueNotFound, 00044 bool _queueNotMatched, 00045 bool _keyNotMatched, 00046 bool _argsNotMatched) : 00047 flags(0){ 00048 setExchangeNotFound(_exchangeNotFound); 00049 setQueueNotFound(_queueNotFound); 00050 setQueueNotMatched(_queueNotMatched); 00051 setKeyNotMatched(_keyNotMatched); 00052 setArgsNotMatched(_argsNotMatched); 00053 } 00054 ExchangeBoundResult() : flags(0) {} 00055 00056 void setExchangeNotFound(bool _exchangeNotFound); 00057 bool getExchangeNotFound() const; 00058 void setQueueNotFound(bool _queueNotFound); 00059 bool getQueueNotFound() const; 00060 void setQueueNotMatched(bool _queueNotMatched); 00061 bool getQueueNotMatched() const; 00062 void setKeyNotMatched(bool _keyNotMatched); 00063 bool getKeyNotMatched() const; 00064 void setArgsNotMatched(bool _argsNotMatched); 00065 bool getArgsNotMatched() const; 00066 friend std::ostream& operator<<(std::ostream&, const ExchangeBoundResult&); 00067 void encode(Buffer&) const; 00068 void decode(Buffer&, uint32_t=0); 00069 void encodeStructBody(Buffer&) const; 00070 void decodeStructBody(Buffer&, uint32_t=0); 00071 uint32_t encodedSize() const; 00072 uint32_t bodySize() const; 00073 void print(std::ostream& out) const; 00074 }; /* class ExchangeBoundResult */ 00075 00076 }} 00077 #endif