35 void setListen(std::string
const &listenArg);
64bool matchServerName(std::vector<std::string>
const &, std::string
const &);
Base class for configuration blocks like 'server' and 'location'.
Definition Block.hpp:19
Represents a single 'location' block from the configuration file.
Definition LocationBlock.hpp:16
Represents a single 'server' block from the configuration file.
Definition ServerBlock.hpp:18
std::string address_
Definition ServerBlock.hpp:54
LocationBlockMap & locations()
Definition ServerBlock.hpp:45
LocationBlockMap const & locations() const
Definition ServerBlock.hpp:44
std::string const & getAddress() const
Definition ServerBlock.hpp:50
void setListen(std::string const &listenArg)
Parses a listen directive string and sets the address and port.
Definition ServerBlock.cpp:27
LocationBlockMap locations_
Definition ServerBlock.hpp:55
void addLocation(LocationBlock const &)
Definition ServerBlock.cpp:25
int port_
Definition ServerBlock.hpp:53
bool hasLocation(LocationBlock const &)
Definition ServerBlock.cpp:21
int getPort() const
Definition ServerBlock.hpp:49
ServerBlock()
Definition ServerBlock.cpp:15
LocationBlock const * getLocation(std::string const &name) const
Retrieves the configuration for a specific location path.
Definition ServerBlock.cpp:17
Definition ServerBlock.hpp:62
LocationBlock const * bestMatchLocation(LocationBlockMap const &ls, std::string const &path)
Definition bestMatchLocation.cpp:6
bool matchServerName(std::vector< std::string > const &, std::string const &)
Definition ServerBlock.cpp:62
Definition ConfigException.hpp:6
std::ostream & operator<<(std::ostream &o, Token const &t)
Definition Token.cpp:29
std::vector< ServerBlock > ServerBlockVec
Definition ServerBlock.hpp:58
std::map< std::string, LocationBlock > LocationBlockMap
Definition ServerBlock.hpp:8