blob: 5ded7e2e42d080f61e115c58ad767af1be81c2e2 [file] [log] [blame]
// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef GARNET_BIN_RUN_TEST_COMPONENT_ENV_CONFIG_H_
#define GARNET_BIN_RUN_TEST_COMPONENT_ENV_CONFIG_H_
#include <string>
#include <unordered_map>
#include <vector>
#include "lib/json/json_parser.h"
#include "rapidjson/document.h"
namespace run {
enum EnvironmentType { SYS };
class EnvironmentConfig {
public:
bool ParseFromFile(const std::string& file_path);
bool HasError() const { return json_parser_.HasError(); }
std::string error_str() const { return json_parser_.error_str(); }
const std::unordered_map<std::string, EnvironmentType>& url_map() const { return url_map_; }
private:
void CreateMap(const std::string& environment_name, EnvironmentType env_type,
const rapidjson::Document& document);
json::JSONParser json_parser_;
std::unordered_map<std::string, EnvironmentType> url_map_;
};
} // namespace run
#endif // GARNET_BIN_RUN_TEST_COMPONENT_ENV_CONFIG_H_