#ifndef __HTTPParameters_h__
#define __HTTPParameters_h__

#include "HTTPRequest.h"
#include "HTTPSession.h"
#include "HTTPActionList.h"
#include "TCPSession.h"
#include <sstream>

namespace http {

    ///
    /// HTTPParameters groups the objects needed to access request
    /// data and a means to return the content of a response message.
    ///

    class HTTPParameters {

     public:
        HTTPParameters(HTTPRequest &httpRequest,
                       core::TCPSession &session,
                       HTTPSession &httpSession,
                       std::stringstream &data,
                       HTTPActionList &actionList);

        HTTPRequest &httpRequest;
        core::TCPSession &session;
        HTTPSession &httpSession;
        std::stringstream &data;
        HTTPActionList &actionList;

    };

}

#endif
