#include "HTTPHeaders.hpp" namespace httpsserver { HTTPHeaders::HTTPHeaders() { _headers = new std::vector(); } HTTPHeaders::~HTTPHeaders() { clearAll(); delete _headers; } HTTPHeader * HTTPHeaders::get(std::string const &name) { for(std::vector::iterator header = _headers->begin(); header != _headers->end(); ++header) { if ((*header)->_name.compare(name)==0) { return (*header); } } return NULL; } std::string HTTPHeaders::getValue(std::string const &name) { for(std::vector::iterator header = _headers->begin(); header != _headers->end(); ++header) { if ((*header)->_name.compare(name)==0) { return ((*header)->_value); } } return ""; } void HTTPHeaders::set(HTTPHeader * header) { for(int i = 0; i < _headers->size(); i++) { if ((*_headers)[i]->_name.compare(header->_name)==0) { delete (*_headers)[i]; (*_headers)[i] = header; return; } } _headers->push_back(header); } std::vector * HTTPHeaders::getAll() { return _headers; } /** * Deletes all headers */ void HTTPHeaders::clearAll() { for(std::vector::iterator header = _headers->begin(); header != _headers->end(); ++header) { delete (*header); } _headers->clear(); } } /* namespace httpsserver */