1 /******************************************************************
\r
3 * Copyright 2015 Samsung Electronics All Rights Reserved.
\r
7 * Licensed under the Apache License, Version 2.0 (the "License");
\r
8 * you may not use this file except in compliance with the License.
\r
9 * You may obtain a copy of the License at
\r
11 * http://www.apache.org/licenses/LICENSE-2.0
\r
13 * Unless required by applicable law or agreed to in writing, software
\r
14 * distributed under the License is distributed on an "AS IS" BASIS,
\r
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
16 * See the License for the specific language governing permissions and
\r
17 * limitations under the License.
\r
19 ******************************************************************/
\r
21 #ifndef RAML_PARSER_H
\r
22 #define RAML_PARSER_H
\r
24 #include "yaml-cpp/yaml.h"
\r
27 #include "RequestResponseBody.h"
\r
28 #include "RamlResource.h"
\r
30 #include "Response.h"
\r
38 void setDataFromRoot();
\r
39 void setBodyDefaultMediaType(std::map<std::string, RamlResource> resource);
\r
40 void setBodySchema(std::map<std::string, RamlResource> resource);
\r
41 void setTypes(std::map<std::string, RamlResource> resource);
\r
42 void setTraits(std::map<std::string, RamlResource> resource);
\r
45 virtual RamlPtr build();
\r
46 virtual RamlPtr getRamlPtr();
\r
47 RamlParser(): m_ramlPtr(new Raml()) {}
\r
48 RamlParser(std::string &fileLocation,
\r
49 std::string &ramlName): m_ramlPtr(new Raml(fileLocation)) ,
\r
50 m_fileLocation(fileLocation) , m_ramlName(ramlName) {}
\r
54 std::string m_fileLocation;
\r
55 std::string m_ramlName;
\r