xorp

cli_manager_xif.hh

00001 /*
00002  * obj/i686-pc-linux-gnu/xrl/interfaces/cli_manager_xif.hh
00003  * vim:set sts=4 ts=8 ft=cpp:
00004  *
00005  * Copyright (c) 2001-2010 XORP, Inc and Others
00006  * See the XORP LICENSE.lgpl file for licensing, conditions, and warranties
00007  * on use.
00008  *
00009  * DO NOT EDIT THIS FILE - IT IS PROGRAMMATICALLY GENERATED
00010  *
00011  * Generated by 'clnt-gen'.
00012  */
00013 
00014 #ifndef __XRL_INTERFACES_CLI_MANAGER_XIF_HH__
00015 #define __XRL_INTERFACES_CLI_MANAGER_XIF_HH__
00016 
00017 #undef XORP_LIBRARY_NAME
00018 #define XORP_LIBRARY_NAME "XifCliManager"
00019 
00020 #include "libxorp/xlog.h"
00021 #include "libxorp/callback.hh"
00022 
00023 #include "libxipc/xrl.hh"
00024 #include "libxipc/xrl_error.hh"
00025 #include "libxipc/xrl_sender.hh"
00026 
00027 //#include <memory>
00028 
00029 class XrlCliManagerV0p1Client {
00030 public:
00031     XrlCliManagerV0p1Client(XrlSender* s) : _sender(s) {}
00032     virtual ~XrlCliManagerV0p1Client() {}
00033 
00034     typedef XorpCallback1<void, const XrlError&>::RefPtr EnableCliCB;
00044     bool send_enable_cli(
00045     const char* dst_xrl_target_name,
00046     const bool& enable,
00047     const EnableCliCB&  cb
00048     );
00049 
00050     typedef XorpCallback1<void, const XrlError&>::RefPtr StartCliCB;
00051 
00052     bool send_start_cli(
00053     const char* dst_xrl_target_name,
00054     const StartCliCB&   cb
00055     );
00056 
00057     typedef XorpCallback1<void, const XrlError&>::RefPtr StopCliCB;
00058 
00059     bool send_stop_cli(
00060     const char* dst_xrl_target_name,
00061     const StopCliCB&    cb
00062     );
00063 
00064     typedef XorpCallback1<void, const XrlError&>::RefPtr AddEnableCliAccessFromSubnet4CB;
00076     bool send_add_enable_cli_access_from_subnet4(
00077     const char* dst_xrl_target_name,
00078     const IPv4Net&  subnet_addr,
00079     const AddEnableCliAccessFromSubnet4CB&  cb
00080     );
00081 
00082     typedef XorpCallback1<void, const XrlError&>::RefPtr AddEnableCliAccessFromSubnet6CB;
00083 
00084     bool send_add_enable_cli_access_from_subnet6(
00085     const char* dst_xrl_target_name,
00086     const IPv6Net&  subnet_addr,
00087     const AddEnableCliAccessFromSubnet6CB&  cb
00088     );
00089 
00090     typedef XorpCallback1<void, const XrlError&>::RefPtr DeleteEnableCliAccessFromSubnet4CB;
00101     bool send_delete_enable_cli_access_from_subnet4(
00102     const char* dst_xrl_target_name,
00103     const IPv4Net&  subnet_addr,
00104     const DeleteEnableCliAccessFromSubnet4CB&   cb
00105     );
00106 
00107     typedef XorpCallback1<void, const XrlError&>::RefPtr DeleteEnableCliAccessFromSubnet6CB;
00108 
00109     bool send_delete_enable_cli_access_from_subnet6(
00110     const char* dst_xrl_target_name,
00111     const IPv6Net&  subnet_addr,
00112     const DeleteEnableCliAccessFromSubnet6CB&   cb
00113     );
00114 
00115     typedef XorpCallback1<void, const XrlError&>::RefPtr AddDisableCliAccessFromSubnet4CB;
00127     bool send_add_disable_cli_access_from_subnet4(
00128     const char* dst_xrl_target_name,
00129     const IPv4Net&  subnet_addr,
00130     const AddDisableCliAccessFromSubnet4CB& cb
00131     );
00132 
00133     typedef XorpCallback1<void, const XrlError&>::RefPtr AddDisableCliAccessFromSubnet6CB;
00134 
00135     bool send_add_disable_cli_access_from_subnet6(
00136     const char* dst_xrl_target_name,
00137     const IPv6Net&  subnet_addr,
00138     const AddDisableCliAccessFromSubnet6CB& cb
00139     );
00140 
00141     typedef XorpCallback1<void, const XrlError&>::RefPtr DeleteDisableCliAccessFromSubnet4CB;
00152     bool send_delete_disable_cli_access_from_subnet4(
00153     const char* dst_xrl_target_name,
00154     const IPv4Net&  subnet_addr,
00155     const DeleteDisableCliAccessFromSubnet4CB&  cb
00156     );
00157 
00158     typedef XorpCallback1<void, const XrlError&>::RefPtr DeleteDisableCliAccessFromSubnet6CB;
00159 
00160     bool send_delete_disable_cli_access_from_subnet6(
00161     const char* dst_xrl_target_name,
00162     const IPv6Net&  subnet_addr,
00163     const DeleteDisableCliAccessFromSubnet6CB&  cb
00164     );
00165 
00166     typedef XorpCallback1<void, const XrlError&>::RefPtr AddCliCommandCB;
00189     bool send_add_cli_command(
00190     const char* dst_xrl_target_name,
00191     const string&   processor_name,
00192     const string&   command_name,
00193     const string&   command_help,
00194     const bool& is_command_cd,
00195     const string&   command_cd_prompt,
00196     const bool& is_command_processor,
00197     const AddCliCommandCB&  cb
00198     );
00199 
00200     typedef XorpCallback1<void, const XrlError&>::RefPtr DeleteCliCommandCB;
00212     bool send_delete_cli_command(
00213     const char* dst_xrl_target_name,
00214     const string&   processor_name,
00215     const string&   command_name,
00216     const DeleteCliCommandCB&   cb
00217     );
00218 
00219 protected:
00220     XrlSender* _sender;
00221 
00222 private:
00223     static void unmarshall_enable_cli(
00224     const XrlError& e,
00225     XrlArgs*    a,
00226     EnableCliCB     cb
00227     );
00228 
00229     static void unmarshall_start_cli(
00230     const XrlError& e,
00231     XrlArgs*    a,
00232     StartCliCB      cb
00233     );
00234 
00235     static void unmarshall_stop_cli(
00236     const XrlError& e,
00237     XrlArgs*    a,
00238     StopCliCB       cb
00239     );
00240 
00241     static void unmarshall_add_enable_cli_access_from_subnet4(
00242     const XrlError& e,
00243     XrlArgs*    a,
00244     AddEnableCliAccessFromSubnet4CB     cb
00245     );
00246 
00247     static void unmarshall_add_enable_cli_access_from_subnet6(
00248     const XrlError& e,
00249     XrlArgs*    a,
00250     AddEnableCliAccessFromSubnet6CB     cb
00251     );
00252 
00253     static void unmarshall_delete_enable_cli_access_from_subnet4(
00254     const XrlError& e,
00255     XrlArgs*    a,
00256     DeleteEnableCliAccessFromSubnet4CB      cb
00257     );
00258 
00259     static void unmarshall_delete_enable_cli_access_from_subnet6(
00260     const XrlError& e,
00261     XrlArgs*    a,
00262     DeleteEnableCliAccessFromSubnet6CB      cb
00263     );
00264 
00265     static void unmarshall_add_disable_cli_access_from_subnet4(
00266     const XrlError& e,
00267     XrlArgs*    a,
00268     AddDisableCliAccessFromSubnet4CB        cb
00269     );
00270 
00271     static void unmarshall_add_disable_cli_access_from_subnet6(
00272     const XrlError& e,
00273     XrlArgs*    a,
00274     AddDisableCliAccessFromSubnet6CB        cb
00275     );
00276 
00277     static void unmarshall_delete_disable_cli_access_from_subnet4(
00278     const XrlError& e,
00279     XrlArgs*    a,
00280     DeleteDisableCliAccessFromSubnet4CB     cb
00281     );
00282 
00283     static void unmarshall_delete_disable_cli_access_from_subnet6(
00284     const XrlError& e,
00285     XrlArgs*    a,
00286     DeleteDisableCliAccessFromSubnet6CB     cb
00287     );
00288 
00289     static void unmarshall_add_cli_command(
00290     const XrlError& e,
00291     XrlArgs*    a,
00292     AddCliCommandCB     cb
00293     );
00294 
00295     static void unmarshall_delete_cli_command(
00296     const XrlError& e,
00297     XrlArgs*    a,
00298     DeleteCliCommandCB      cb
00299     );
00300 
00301 private:
00302     /* Declare cached Xrl pointers */
00303     auto_ptr<Xrl> ap_xrl_enable_cli;
00304     auto_ptr<Xrl> ap_xrl_start_cli;
00305     auto_ptr<Xrl> ap_xrl_stop_cli;
00306     auto_ptr<Xrl> ap_xrl_add_enable_cli_access_from_subnet4;
00307     auto_ptr<Xrl> ap_xrl_add_enable_cli_access_from_subnet6;
00308     auto_ptr<Xrl> ap_xrl_delete_enable_cli_access_from_subnet4;
00309     auto_ptr<Xrl> ap_xrl_delete_enable_cli_access_from_subnet6;
00310     auto_ptr<Xrl> ap_xrl_add_disable_cli_access_from_subnet4;
00311     auto_ptr<Xrl> ap_xrl_add_disable_cli_access_from_subnet6;
00312     auto_ptr<Xrl> ap_xrl_delete_disable_cli_access_from_subnet4;
00313     auto_ptr<Xrl> ap_xrl_delete_disable_cli_access_from_subnet6;
00314     auto_ptr<Xrl> ap_xrl_add_cli_command;
00315     auto_ptr<Xrl> ap_xrl_delete_cli_command;
00316 };
00317 
00318 #endif /* __XRL_INTERFACES_CLI_MANAGER_XIF_HH__ */
 All Classes Namespaces Functions Variables Typedefs Enumerations