replace : iotivity -> iotivity-sec
[platform/upstream/iotivity.git] / service / simulator / ramlparser / raml / model / Schema.h
index e38be93..658538f 100755 (executable)
  *\r
  ******************************************************************/\r
 \r
+/**\r
+ * @file   Schema.h\r
+ *\r
+ * @brief   This file provides data Model for RAML Schema.\r
+ */\r
+\r
 #ifndef SCHEMAS_H\r
 #define SCHEMAS_H\r
 \r
 #include <string>\r
+#if defined (__TIZENRT__)\r
+#include <apps/netutils/cJSON.h>\r
+#else\r
 #include "cJSON.h"\r
+#endif\r
 #include "IncludeResolver.h"\r
 \r
 #include "JsonSchema.h"\r
 \r
 namespace RAML\r
 {\r
+    /**\r
+     * @class   Schema\r
+     * @brief   This class provides data Model for RAML Schema.\r
+     */\r
     class Schema\r
     {\r
         public:\r
+            /**\r
+             * This method is for getting CJson object of schema.\r
+             *\r
+             * @return pointer to cJSON.\r
+             */\r
             virtual cJSON *getJson() const;\r
+\r
+            /**\r
+             * This method is for setting schema as CJson object.\r
+             *\r
+             * @param cjson - Cjson pointer.\r
+             */\r
             virtual void setJson(cJSON *cjson);\r
+\r
+            /**\r
+             * This method is for getting schema as string.\r
+             *\r
+             * @return string.\r
+             */\r
             virtual std::string getSchema() const;\r
+\r
+            /**\r
+             * This method is for setting schema as string.\r
+             *\r
+             * @param schema - schema string.\r
+             */\r
             virtual void setSchema(const std::string &schema);\r
+\r
+            /**\r
+             * This method is for getting Properties from JsonSchema.\r
+             *\r
+             * @return pointer to JsonSchema.\r
+             */\r
             virtual JsonSchemaPtr const &getProperties() const;\r
 \r
-            Schema(const std::string &schema, const IncludeResolverPtr &includeResolver): m_schema(schema) ,\r
-                m_cjson(cJSON_Parse(schema.c_str())),\r
+            /**\r
+             * Constructor of Schema.\r
+             *\r
+             * @param schema - contents of schema to be parsed\r
+             * @param includeResolver - Reference to IncludeResolver for reading external files\r
+             *\r
+             */\r
+            Schema(const std::string &schema, const IncludeResolverPtr &includeResolver):\r
+                m_schema(schema) , m_cjson(cJSON_Parse(schema.c_str())),\r
                 m_resProperties(std::make_shared<JsonSchema>(m_cjson, includeResolver) ) ,\r
                 m_includeResolver(includeResolver) {}\r
-            Schema(): m_cjson(NULL), m_includeResolver(NULL), m_resProperties(std::make_shared<JsonSchema>()) {}\r
+\r
+            /**\r
+             * Constructor of Schema.\r
+             */\r
+            Schema(): m_cjson(NULL), m_resProperties(std::make_shared<JsonSchema>()),\r
+                m_includeResolver(NULL) {}\r
+\r
+            Schema(const Schema&) = delete;\r
+            Schema& operator=(const Schema&) = delete;\r
+            Schema(Schema&&) = delete;\r
+            Schema& operator=(Schema&&) = delete;\r
+\r
+            /**\r
+             * Destructor of Schema.\r
+             */\r
             ~Schema() { cJSON_Delete(m_cjson); }\r
 \r
         private:\r
-            cJSON *m_cjson;\r
             std::string m_schema;\r
+            cJSON *m_cjson;\r
             JsonSchemaPtr m_resProperties;\r
             IncludeResolverPtr m_includeResolver;\r
     };\r
+\r
+    /** SchemaPtr - shared Ptr to Schema.*/\r
     typedef std::shared_ptr<Schema> SchemaPtr;\r
 \r
 }\r