/usr/share/cruisecontrol-bin-2.6.1/projects/qpid-trunk/cpp/src/gen/qpid/management/Binding.h

00001 
00002 #ifndef _MANAGEMENT_BINDING_
00003 #define _MANAGEMENT_BINDING_
00004 
00005 //
00006 // Licensed to the Apache Software Foundation (ASF) under one
00007 // or more contributor license agreements.  See the NOTICE file
00008 // distributed with this work for additional information
00009 // regarding copyright ownership.  The ASF licenses this file
00010 // to you under the Apache License, Version 2.0 (the
00011 // "License"); you may not use this file except in compliance
00012 // with the License.  You may obtain a copy of the License at
00013 // 
00014 //   http://www.apache.org/licenses/LICENSE-2.0
00015 // 
00016 // Unless required by applicable law or agreed to in writing,
00017 // software distributed under the License is distributed on an
00018 // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
00019 // KIND, either express or implied.  See the License for the
00020 // specific language governing permissions and limitations
00021 // under the License.
00022 //
00023 
00024 // This source file was created by a code generator.
00025 // Please do not edit.
00026 
00027 #include "qpid/management/ManagementObject.h"
00028 #include "qpid/framing/Uuid.h"
00029 
00030 namespace qpid {
00031 namespace management {
00032 
00033 class Binding : public ManagementObject
00034 {
00035   private:
00036 
00037     static std::string packageName;
00038     static std::string className;
00039     static uint8_t     md5Sum[16];
00040 
00041     // Configuration Elements
00042     uint64_t exchangeRef;
00043     uint64_t queueRef;
00044     std::string bindingKey;
00045     framing::FieldTable arguments;
00046 
00047     // Instrumentation Elements
00048     uint64_t  msgMatched;
00049 
00050     // Private Methods
00051     static void writeSchema   (qpid::framing::Buffer& buf);
00052     void writeConfig          (qpid::framing::Buffer& buf);
00053     void writeInstrumentation (qpid::framing::Buffer& buf,
00054                                bool skipHeaders = false);
00055     void doMethod             (std::string            methodName,
00056                                qpid::framing::Buffer& inBuf,
00057                                qpid::framing::Buffer& outBuf);
00058     writeSchemaCall_t getWriteSchemaCall (void) { return writeSchema; }
00059 
00060 
00061   public:
00062 
00063     friend class PackageQpid;
00064     typedef boost::shared_ptr<Binding> shared_ptr;
00065 
00066     Binding (Manageable* coreObject, Manageable* _parent, uint64_t _queueRef, std::string _bindingKey, framing::FieldTable _arguments);
00067     ~Binding (void);
00068 
00069     std::string getPackageName (void) { return packageName; }
00070     std::string getClassName   (void) { return className; }
00071     uint8_t*    getMd5Sum      (void) { return md5Sum; }
00072 
00073     // Method IDs
00074 
00075     // Accessor Methods
00076     inline void inc_msgMatched (uint64_t by = 1){
00077         sys::RWlock::ScopedWlock writeLock (accessLock);
00078         msgMatched += by;
00079         instChanged = true;
00080     }
00081     inline void dec_msgMatched (uint64_t by = 1){
00082         sys::RWlock::ScopedWlock writeLock (accessLock);
00083         msgMatched -= by;
00084         instChanged = true;
00085     }
00086 
00087 };
00088 
00089 }}
00090             
00091 
00092 #endif  

Generated on Thu Apr 10 11:08:17 2008 for Qpid by  doxygen 1.4.7