#pragma once
#include <string>

namespace Server
{
	class Configuration
	{
	private:
		std::string wwwRoot;
		std::string serverName;
		int port;
		bool isValid;

	public:
		int GetMajorVersion() const;
		int GetMinorVersion() const;
		std::string const & GetWwwRoot() const;
		std::string const & GetServerName() const;
		int GetPort() const;
		bool IsValid() const;

		bool LoadFromFile(std::string const & filePath);

		Configuration();
		~Configuration() = default;

		Configuration(Configuration & other) = delete;
		Configuration(Configuration && other) = delete;
	};
}