X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=src%2Fpackage.hpp;h=eaa370da13c9af894128fdb76a4c243c945355ad;hb=283537fd130e56aa77410b47092dea16be47b108;hp=a4924ddf39bb46c25b188d7791f62b8edc8b3bb3;hpb=7969e482bd427717e116917116e52958432a9c16;p=metaproxy-moved-to-github.git diff --git a/src/package.hpp b/src/package.hpp index a4924dd..eaa370d 100644 --- a/src/package.hpp +++ b/src/package.hpp @@ -3,15 +3,28 @@ #define PACKAGE_HPP #include +#include +#include "session.hpp" namespace yp2 { - - class Package { - public: + + class Origin { + enum origin_t { + API, + UNIX, + TCPIP + } type; + std::string address; // UNIX+TCPIP + int port; // TCPIP only + }; + + class Package { + public: - Package(unsigned long int id = 0, bool close = 0) - : m_session_id(id), m_session_close(close), + + Package(yp2::Session &session, yp2::Origin &origin) + : m_session(session), m_origin(origin), m_filter(0), m_router(0), m_data(0) {} /// send Package to it's next Filter defined in Router @@ -24,16 +37,10 @@ namespace yp2 { } - /// get function - right val in assignment - unsigned int session_id() const { - return m_session_id; - } - - /// get function - right val in assignment - unsigned int session_close() const { - return m_session_close; + /// access session - left val in assignment + yp2::Session & session() { + return m_session; } - /// get function - right val in assignment unsigned int data() const { @@ -52,6 +59,23 @@ namespace yp2 { } + /// get function - right val in assignment + Origin origin() const { + return m_origin; + } + + /// set function - left val in assignment + Origin & origin() { + return m_origin; + } + + /// set function - can be chained + Package & origin(const Origin & origin){ + m_origin = origin; + return *this; + } + + //Router router() const { // return m_router; //} @@ -69,11 +93,17 @@ namespace yp2 { private: - unsigned long int m_session_id; - bool m_session_close; + Session m_session; +// unsigned long int m_session_id; +// bool m_session_close; + Origin m_origin; + const Filter *m_filter; const Router *m_router; unsigned int m_data; + + yazpp_1::GDU m_request_gdu; + yazpp_1::GDU m_response_gdu; };