From: Adam Dickmeiss Date: Fri, 11 Nov 2005 15:00:25 +0000 (+0000) Subject: Factor implementation of Package to .cpp. X-Git-Tag: YP2.0.0.2~139 X-Git-Url: http://git.indexdata.com/?a=commitdiff_plain;h=ca452b141e9a32d98166f7e07fceb30d5185130a;p=metaproxy-moved-to-github.git Factor implementation of Package to .cpp. --- diff --git a/src/Makefile.am b/src/Makefile.am index ed5a00d..88dc408 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,4 +1,4 @@ -## $Id: Makefile.am,v 1.34 2005-11-10 23:10:42 adam Exp $ +## $Id: Makefile.am,v 1.35 2005-11-11 15:00:25 adam Exp $ MAINTAINERCLEANFILES = Makefile.in config.in config.hpp @@ -12,7 +12,8 @@ lib_LTLIBRARIES = libyp2.la libyp2_la_LDFLAGS = -version-info 0:0:0 libyp2_la_SOURCES = \ - session.cpp session.hpp package.hpp \ + session.cpp session.hpp \ + package.cpp package.hpp \ router.hpp router_chain.hpp router_chain.cpp \ router_flexml.hpp router_flexml.cpp \ thread_pool_observer.cpp thread_pool_observer.hpp \ diff --git a/src/package.cpp b/src/package.cpp new file mode 100644 index 0000000..aa38db0 --- /dev/null +++ b/src/package.cpp @@ -0,0 +1,106 @@ +/* $Id: package.cpp,v 1.1 2005-11-11 15:00:25 adam Exp $ + Copyright (c) 2005, Index Data. + +%LICENSE% + */ + +#include "config.hpp" + +#include "package.hpp" + +yp2::Package::Package() + : m_filter(0), m_router(0), m_data(0) +{ +} + +yp2::Package::Package(yp2::Session &session, yp2::Origin &origin) + : m_session(session), m_origin(origin), + m_filter(0), m_router(0), m_data(0) +{ +} + +yp2::Package & yp2::Package::copy_filter(const Package &p) +{ + m_router = p.m_router; + m_filter = p.m_filter; + return *this; +} + + +void yp2::Package::move() +{ + m_filter = m_router->move(m_filter, this); + if (m_filter) + m_filter->process(*this); +} + +yp2::Session & yp2::Package::session() +{ + return m_session; +} + + +unsigned int yp2::Package::data() const +{ + return m_data; +} + +unsigned int & yp2::Package::data() +{ + return m_data; +} + + +yp2::Package & yp2::Package::data(const unsigned int & data) +{ + m_data = data; + return *this; +} + +yp2::Origin yp2::Package::origin() const +{ + return m_origin; +} + +yp2::Origin & yp2::Package::origin() +{ + return m_origin; +} + +yp2::Package & yp2::Package::origin(const Origin & origin) +{ + m_origin = origin; + return *this; +} + +yp2::Package & yp2::Package::router(const yp2::Router &router) +{ + m_filter = 0; + m_router = &router; + return *this; +} + +yazpp_1::GDU &yp2::Package::request() +{ + return m_request_gdu; +} + + +yazpp_1::GDU &yp2::Package::response() +{ + return m_response_gdu; +} + +yp2::Session yp2::Package::session() const +{ + return m_session; +} + +/* + * Local variables: + * c-basic-offset: 4 + * indent-tabs-mode: nil + * c-file-style: "stroustrup" + * End: + * vim: shiftwidth=4 tabstop=8 expandtab + */ diff --git a/src/package.hpp b/src/package.hpp index 8545c43..c5e63ff 100644 --- a/src/package.hpp +++ b/src/package.hpp @@ -1,11 +1,11 @@ -/* $Id: package.hpp,v 1.9 2005-10-15 14:09:09 adam Exp $ +/* $Id: package.hpp,v 1.10 2005-11-11 15:00:25 adam Exp $ Copyright (c) 2005, Index Data. %LICENSE% */ -#ifndef PACKAGE_HPP -#define PACKAGE_HPP +#ifndef YP2_PACKAGE_HPP +#define YP2_PACKAGE_HPP #include #include @@ -31,82 +31,45 @@ namespace yp2 { class Package { public: - Package() - : m_filter(0), m_router(0), m_data(0) {} + Package() ; - Package(yp2::Session &session, yp2::Origin &origin) - : m_session(session), m_origin(origin), - m_filter(0), m_router(0), m_data(0) {} + Package(yp2::Session &session, yp2::Origin &origin); - Package & copy_filter(const Package &p) { - m_router = p.m_router; - m_filter = p.m_filter; - return *this; - } + Package & copy_filter(const Package &p); /// send Package to it's next Filter defined in Router - void move() { - m_filter = m_router->move(m_filter, this); - if (m_filter) - m_filter->process(*this); - } + void move(); /// access session - left val in assignment - yp2::Session & session() { - return m_session; - } + yp2::Session & session(); /// get function - right val in assignment - unsigned int data() const { - return m_data; - } + unsigned int data() const; + /// set function - left val in assignment - unsigned int & data() { - return m_data; - } + unsigned int & data(); /// set function - can be chained - Package & data(const unsigned int & data){ - m_data = data; - return *this; - } - + Package & data(const unsigned int & data); /// get function - right val in assignment - Origin origin() const { - return m_origin; - } + Origin origin() const; /// set function - left val in assignment - Origin & origin() { - return m_origin; - } + Origin & origin(); /// set function - can be chained - Package & origin(const Origin & origin){ - m_origin = origin; - return *this; - } - - Package & router(const Router &router){ - m_filter = 0; - m_router = &router; - return *this; - } + Package & origin(const Origin & origin); + + Package & router(const Router &router); - yazpp_1::GDU &request() { - return m_request_gdu; - } + yazpp_1::GDU &request(); - yazpp_1::GDU &response() { - return m_response_gdu; - } + yazpp_1::GDU &response(); /// get function - right val in assignment - Session session() const { - return m_session; - } + Session session() const; private: Session m_session;