xorp

dummy_register_server.hh

00001 // -*- c-basic-offset: 4; tab-width: 8; indent-tabs-mode: t -*-
00002 
00003 // Copyright (c) 2001-2011 XORP, Inc and Others
00004 //
00005 // This program is free software; you can redistribute it and/or modify
00006 // it under the terms of the GNU General Public License, Version 2, June
00007 // 1991 as published by the Free Software Foundation. Redistribution
00008 // and/or modification of this program under the terms of any other
00009 // version of the GNU General Public License is not permitted.
00010 // 
00011 // This program is distributed in the hope that it will be useful, but
00012 // WITHOUT ANY WARRANTY; without even the implied warranty of
00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For more details,
00014 // see the GNU General Public License, Version 2, a copy of which can be
00015 // found in the XORP LICENSE.gpl file.
00016 // 
00017 // XORP Inc, 2953 Bunker Hill Lane, Suite 204, Santa Clara, CA 95054, USA;
00018 // http://xorp.net
00019 
00020 // $XORP: xorp/rib/dummy_register_server.hh,v 1.14 2008/10/02 21:58:09 bms Exp $
00021 
00022 #ifndef __RIB_DUMMY_REGISTER_SERVER_HH__
00023 #define __RIB_DUMMY_REGISTER_SERVER_HH__
00024 
00025 
00026 
00027 #include "register_server.hh"
00028 
00029 
00030 class DummyRegisterServer : public RegisterServer {
00031 public:
00032     DummyRegisterServer();
00033     void send_route_changed(const string& module_name,
00034                 const IPv4Net& net,
00035                 const IPv4& nexthop,
00036                 uint32_t metric,
00037                 uint32_t admin_distance,
00038                 const string& protocol_origin,
00039                 bool multicast);
00040     void send_invalidate(const string& module_name,
00041              const IPv4Net& net,
00042              bool multicast);
00043     void send_route_changed(const string& module_name,
00044                 const IPv6Net& net, 
00045                 const IPv6& nexthop,
00046                 uint32_t metric,
00047                 uint32_t admin_distance,
00048                 const string& protocol_origin,
00049                 bool multicast);
00050     void send_invalidate(const string& module_name,
00051              const IPv6Net& net,
00052              bool multicast);
00053     void flush() {}
00054     bool verify_invalidated(const string& invalid);
00055     bool verify_changed(const string& changed);
00056     bool verify_no_info();
00057 
00058 private:
00059     set<string> _invalidated;
00060     set<string> _changed;
00061 };
00062 
00063 #endif // __RIB_DUMMY_REGISTER_SERVER_HH__
 All Classes Namespaces Functions Variables Typedefs Enumerations