Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET Apache Qpid Documentation
qmf/engine/Object.h
Go to the documentation of this file.
00001 #ifndef _QmfEngineObject_
00002 #define _QmfEngineObject_
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 #include <qmf/engine/Schema.h>
00024 #include <qmf/engine/ObjectId.h>
00025 #include <qmf/engine/Value.h>
00026 
00027 namespace qmf {
00028 namespace engine {
00029 
00030     struct ObjectImpl;
00031     class Object {
00032     public:
00033         Object(const SchemaObjectClass* type);
00034         Object(const Object& from);
00035         virtual ~Object();
00036 
00037         void destroy();
00038         const ObjectId* getObjectId() const;
00039         void setObjectId(ObjectId* oid);
00040         const SchemaObjectClass* getClass() const;
00041         Value* getValue(const char* key) const;
00042         void invokeMethod(const char* methodName, const Value* inArgs, void* context) const;
00043         bool isDeleted() const;
00044         void merge(const Object& from);
00045 
00046     private:
00047         friend struct ObjectImpl;
00048         friend class  AgentImpl;
00049         Object(ObjectImpl* impl);
00050         ObjectImpl* impl;
00051     };
00052 }
00053 }
00054 
00055 #endif
00056 

Qpid C++ API Reference
Generated on Mon Aug 22 2011 for Qpid C++ Client API by doxygen 1.7.4