X-Git-Url: http://lists.indexdata.com/cgi-bin?a=blobdiff_plain;f=src%2Fpackage.hpp;h=12dc911c6db172af0fc11b3b0a35b8f6c9532dd6;hb=06a2a8a438c7b73aa9a0de228683fc8b9e52221e;hp=b00ebeb197d0c3f5aed532053252a7ab5f737ce4;hpb=48cfd383e1e94fa9d34d8a783b7c0137ae598a9d;p=metaproxy-moved-to-github.git diff --git a/src/package.hpp b/src/package.hpp index b00ebeb..12dc911 100644 --- a/src/package.hpp +++ b/src/package.hpp @@ -1,50 +1,47 @@ -/* $Id: package.hpp,v 1.23 2006-09-14 19:53:57 marc Exp $ - Copyright (c) 2005-2006, Index Data. +/* $Id: package.hpp,v 1.27 2007-05-09 21:23:09 adam Exp $ + Copyright (c) 2005-2007, Index Data. - See the LICENSE file for details +This file is part of Metaproxy. + +Metaproxy is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +Metaproxy is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with Metaproxy; see the file LICENSE. If not, write to the +Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. */ #ifndef YP2_PACKAGE_HPP #define YP2_PACKAGE_HPP #include -#include + #include #include "router.hpp" #include "filter.hpp" #include "session.hpp" +#include "origin.hpp" -namespace metaproxy_1 -{ - class Origin; +namespace metaproxy_1 { class Package; } namespace std { - std::ostream& operator<<(std::ostream& os, metaproxy_1::Origin& o); std::ostream& operator<<(std::ostream& os, metaproxy_1::Package& p); } namespace metaproxy_1 { - - class Origin { - friend std::ostream& - std::operator<<(std::ostream& os, metaproxy_1::Origin& o); - - enum origin_t { - API, - UNIX, - TCPIP - } type; - std::string address; // UNIX+TCPIP - unsigned long origin_id; - public: - Origin(); - void set_tcpip_address(std::string addr, unsigned long id); - }; class Package { public: @@ -55,6 +52,7 @@ namespace metaproxy_1 { Package(metaproxy_1::Session &session, const metaproxy_1::Origin &origin); + /// shallow copy constructor which only copies the filter chain info Package & copy_filter(const Package &p); /// send Package to it's next Filter defined in Router @@ -75,6 +73,7 @@ namespace metaproxy_1 { /// set function - can be chained Package & origin(const Origin & origin); + /// set function - can be chained Package & router(const Router &router); yazpp_1::GDU &request();