Safir SDK Core
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ResponseErrorInfo.h
Go to the documentation of this file.
1 #ifndef SAFIR_DOB_RESPONSEERRORINFO_H_INCLUDED
2 #define SAFIR_DOB_RESPONSEERRORINFO_H_INCLUDED
3 
8 
9 #include <Safir/Dob/Item.h>
11 
12 #ifdef _MSC_VER
13 #ifdef DOTS_GENERATED_CPP_EXPORTS
14 #define GENERATED_API __declspec(dllexport)
15 #else
16 #define GENERATED_API __declspec(dllimport)
17 #ifdef _DEBUG
18 #pragma comment( lib, "dots_generated-Safir-cppd.lib" )
19 #else
20 #pragma comment( lib, "dots_generated-Safir-cpp.lib" )
21 #endif
22 #endif
23 #endif
24 #ifdef __GNUC__
25 #define GENERATED_API
26 #endif
27 
31 namespace Safir
32 {
36 namespace Dob
37 {
38 
39  class ResponseErrorInfo; //forward declaration
40  typedef boost::shared_ptr<ResponseErrorInfo> ResponseErrorInfoPtr;
41  typedef boost::shared_ptr<const ResponseErrorInfo> ResponseErrorInfoConstPtr;
42 
45 
50  class GENERATED_API ResponseErrorInfo : public Safir::Dob::Item
51  {
52  public:
53  //Constructors and Create routines
55  virtual Safir::Dob::Typesystem::ObjectPtr Clone() const;
56  static ResponseErrorInfoPtr Create();
57 
61  static ResponseErrorInfoPtr CreateResponseErrorInfo(
62  const std::wstring & Code,
63  const std::wstring & Parameters);
64 
65 
69  static ResponseErrorInfoPtr CreateResponseErrorInfo(
70  const std::wstring & Code,
71  const Safir::Dob::Typesystem::Int32 Member,
72  const std::wstring & Parameters);
73 
74 
78  static ResponseErrorInfoPtr CreateResponseErrorInfo(
79  const std::wstring & Code,
80  const Safir::Dob::Typesystem::Int32 Member,
82  const std::wstring & Parameters);
83 
84 
85  //Member
86  static Safir::Dob::Typesystem::MemberIndex MemberMemberIndex();
92 
93 
94  //Index
95  static Safir::Dob::Typesystem::MemberIndex IndexMemberIndex();
101 
102 
103  //Code
104  static Safir::Dob::Typesystem::MemberIndex CodeMemberIndex();
105  static Safir::Dob::Typesystem::Int32 CodeMaxStringLength();
111 
112 
113  //Parameters
114  static Safir::Dob::Typesystem::MemberIndex ParametersMemberIndex();
115  static Safir::Dob::Typesystem::Int32 ParametersMaxStringLength();
121 
122 
124  static const Safir::Dob::Typesystem::TypeId ClassTypeId = 3197952542434689553LL;
125 
126  //Type id for ResponseErrorInfo
127  virtual Safir::Dob::Typesystem::TypeId GetTypeId() const {return ClassTypeId;}
128 
129  //Check if anything in the object has change flags set
130  virtual bool IsChanged();
131 
132  //Recursively set all change flags in the object
133  virtual void SetChanged(const bool changed);
134 
135 
136  //Reflection part (Don't use unless you really know what you're doing!!)
139  virtual const Safir::Dob::Typesystem::ContainerBase & GetMember(const Safir::Dob::Typesystem::MemberIndex member,
140  const Safir::Dob::Typesystem::ArrayIndex index) const;
141 
142  virtual Safir::Dob::Typesystem::Int32 CalculateBlobSize() const;
143  virtual void WriteToBlob(char * blob, char * & beginningOfUnused) const;
144  explicit ResponseErrorInfo(char const * const blob);
145 
146  private:
147 
148 #ifdef _MSC_VER
149 #pragma warning (push)
150 #pragma warning (disable : 4251)
151 #endif
152 
156  Safir::Dob::Typesystem::StringContainer m_ParametersMember;
157 
158 #ifdef _MSC_VER
159 #pragma warning (pop)
160 #endif
161  };
162 
163 } // Dob
164 } // Safir
165 
166 #endif
167 
Container for base types.
Definition: ValueContainers.h:60
Safir::Dob::Typesystem::ObjectContainerImpl< ResponseErrorInfo > ResponseErrorInfoContainer
Definition: ResponseErrorInfo.h:43
Safir::Dob::Typesystem::ArrayContainer< ResponseErrorInfoContainer > ResponseErrorInfoContainerArray
Definition: ResponseErrorInfo.h:44
virtual Safir::Dob::Typesystem::TypeId GetTypeId() const
Get the type id of this object.
Definition: ResponseErrorInfo.h:127
boost::shared_ptr< const ResponseErrorInfo > ResponseErrorInfoConstPtr
Definition: ResponseErrorInfo.h:41
Definition: ContainerProxies.h:38
Contains information about one of the errors found when handling a request.
Definition: ResponseErrorInfo.h:50
DotsC_TypeId TypeId
A unique type identifier.
Definition: Dob/Typesystem/Defs.h:221
Template class for all containers of automatically generated DOB objects.
Definition: ObjectContainer.h:185
Container for strings (std::wstring).
Definition: ValueContainers.h:128
boost::shared_ptr< Object > ObjectPtr
A smart pointer to an Object.
Definition: Object.h:41
DotsC_ArrayIndex ArrayIndex
Index into an array.
Definition: Dob/Typesystem/Defs.h:249
Base class for all Containers.
Definition: ContainerBase.h:41
The baseclass for all items.
Definition: Item.h:48
boost::shared_ptr< ResponseErrorInfo > ResponseErrorInfoPtr
Definition: ResponseErrorInfo.h:39
DotsC_Int32 Int32
32 bit integer type.
Definition: Dob/Typesystem/Defs.h:69
DotsC_MemberIndex MemberIndex
The index of a member in an object.
Definition: Dob/Typesystem/Defs.h:240
static bool IsChanged(const ContainerBase &container)
Check if a container is changed.
Definition: ContainerBase.h:134