-## $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
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 \
--- /dev/null
+/* $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
+ */
-/* $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 <iostream>
#include <stdexcept>
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;