Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET Apache Qpid Documentation
Schema.h
Go to the documentation of this file.
1 #ifndef QMF_SCHEMA_H
2 #define QMF_SCHEMA_H
3 /*
4  *
5  * Licensed to the Apache Software Foundation (ASF) under one
6  * or more contributor license agreements. See the NOTICE file
7  * distributed with this work for additional information
8  * regarding copyright ownership. The ASF licenses this file
9  * to you under the Apache License, Version 2.0 (the
10  * "License"); you may not use this file except in compliance
11  * with the License. You may obtain a copy of the License at
12  *
13  * http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing,
16  * software distributed under the License is distributed on an
17  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
18  * KIND, either express or implied. See the License for the
19  * specific language governing permissions and limitations
20  * under the License.
21  *
22  */
23 
24 #if !defined(QMF_USE_DEPRECATED_API) && !defined(qmf2_EXPORTS) && !defined(SWIG)
25 # error "The API defined in this file has been DEPRECATED and will be removed in the future."
26 # error "Define 'QMF_USE_DEPRECATED_API' to enable continued use of the API."
27 #endif
28 
29 #include <qmf/ImportExport.h>
30 #include "qpid/sys/IntegerTypes.h"
31 #include "qmf/Handle.h"
32 #include "qmf/SchemaTypes.h"
33 #include <string>
34 
35 namespace qmf {
36 
37 #ifndef SWIG
38  template <class> class PrivateImplRef;
39 #endif
40 
41  class SchemaImpl;
42  class SchemaId;
43  class SchemaProperty;
44  class SchemaMethod;
45 
46  class QMF_CLASS_EXTERN Schema : public qmf::Handle<SchemaImpl> {
47  public:
48  QMF_EXTERN Schema(SchemaImpl* impl = 0);
49  QMF_EXTERN Schema(const Schema&);
50  QMF_EXTERN Schema& operator=(const Schema&);
51  QMF_EXTERN ~Schema();
52 
53  QMF_EXTERN Schema(int, const std::string&, const std::string&);
54  QMF_EXTERN const SchemaId& getSchemaId() const;
55 
56  QMF_EXTERN void finalize();
57  QMF_EXTERN bool isFinalized() const;
58  QMF_EXTERN void addProperty(const SchemaProperty&);
59  QMF_EXTERN void addMethod(const SchemaMethod&);
60  QMF_EXTERN void setDesc(const std::string&);
61  QMF_EXTERN const std::string& getDesc() const;
62 
63  QMF_EXTERN void setDefaultSeverity(int);
64  QMF_EXTERN int getDefaultSeverity() const;
65 
66  QMF_EXTERN uint32_t getPropertyCount() const;
67  QMF_EXTERN SchemaProperty getProperty(uint32_t) const;
68 
69  QMF_EXTERN uint32_t getMethodCount() const;
70  QMF_EXTERN SchemaMethod getMethod(uint32_t) const;
71 
72 #ifndef SWIG
73  private:
74  friend class qmf::PrivateImplRef<Schema>;
75  friend struct SchemaImplAccess;
76 #endif
77  };
78 
79 }
80 
81 #endif
#define QMF_EXTERN
Definition: ImportExport.h:30
unsigned int uint32_t
Definition: IntegerTypes.h:27
A handle is like a pointer: refers to an underlying implementation object.
Definition: Handle.h:43
#define QMF_CLASS_EXTERN
Definition: ImportExport.h:31

Qpid C++ API Reference
Generated on Tue Oct 28 2014 for Qpid C++ Client API by doxygen 1.8.5