Adding JsonSchema parser implementation for simulator and Updating Raml Parser.
[platform/upstream/iotivity.git] / service / simulator / ramlparser / raml / model / Response.h
index cf720ec..92c09db 100755 (executable)
@@ -8,7 +8,7 @@
  * you may not use this file except in compliance with the License.\r
  * You may obtain a copy of the License at\r
  *\r
- *             http://www.apache.org/licenses/LICENSE-2.0\r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
  *\r
  * Unless required by applicable law or agreed to in writing, software\r
  * distributed under the License is distributed on an "AS IS" BASIS,\r
@@ -34,25 +34,27 @@ namespace RAML
     class Response\r
     {\r
         public:\r
-            virtual std::map<std::string, HeadergetHeaders() const;\r
-            virtual void setHeader(const std::string &headerName, const Header &header);\r
+            virtual std::map<std::string, HeaderPtr> const &getHeaders() const;\r
+            virtual void setHeader(const std::string &headerName, const HeaderPtr &header);\r
             virtual std::string getDescription() const;\r
             virtual void setDescription(const std::string &description);\r
             virtual void setResponseBody(const std::string &typeName);\r
-            virtual void setResponseBody(const std::string &type, const RequestResponseBody &body) ;\r
-            virtual std::map<std::string, RequestResponseBodygetResponseBody() const;\r
-            virtual RequestResponseBody &getResponseBody(const std::string bodyType);\r
+            virtual void setResponseBody(const std::string &type, const RequestResponseBodyPtr &body) ;\r
+            virtual std::map<std::string, RequestResponseBodyPtr> const &getResponseBody() const;\r
+            virtual RequestResponseBodyPtr getResponseBody(const std::string &bodyType);\r
 \r
 \r
-            Response() {}\r
-            Response(const YAML::Node &yamlNode, IncludeResolver *includeResolver) { readResponse(yamlNode, includeResolver);}\r
+            Response() : m_includeResolver(NULL) {}\r
+            Response(const YAML::Node &yamlNode,\r
+                     const IncludeResolverPtr &includeResolver): m_includeResolver(includeResolver)  { readResponse(yamlNode);}\r
         private:\r
-            void readResponse(const YAML::Node &yamlNode, IncludeResolver *includeResolver) ;\r
+            void readResponse(const YAML::Node &yamlNode) ;\r
         private:\r
             std::string m_description;\r
-            std::map<std::string, RequestResponseBody> m_responseBody;\r
-            std::map<std::string, Header> m_headers;\r
-            IncludeResolver *m_includeResolver;\r
+            std::map<std::string, RequestResponseBodyPtr> m_responseBody;\r
+            std::map<std::string, HeaderPtr> m_headers;\r
+            IncludeResolverPtr m_includeResolver;\r
     };\r
+    typedef std::shared_ptr<Response> ResponsePtr;\r
 }\r
 #endif\r