|
xorp
|
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__ */