xorp

finder_xif.hh

00001 /*
00002  * obj/i386-pc-mingw32/xrl/interfaces/finder_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_FINDER_XIF_HH__
00015 #define __XRL_INTERFACES_FINDER_XIF_HH__
00016 
00017 #undef XORP_LIBRARY_NAME
00018 #define XORP_LIBRARY_NAME "XifFinder"
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 XrlFinderV0p2Client {
00030 public:
00031     XrlFinderV0p2Client(XrlSender* s) : _sender(s) {}
00032     virtual ~XrlFinderV0p2Client() {}
00033 
00034     typedef XorpCallback2<void, const XrlError&, const string*>::RefPtr RegisterFinderClientCB;
00048     bool send_register_finder_client(
00049     const char* dst_xrl_target_name,
00050     const string&   instance_name,
00051     const string&   class_name,
00052     const bool& singleton,
00053     const string&   in_cookie,
00054     const RegisterFinderClientCB&   cb
00055     );
00056 
00057     typedef XorpCallback1<void, const XrlError&>::RefPtr UnregisterFinderClientCB;
00058 
00059     bool send_unregister_finder_client(
00060     const char* dst_xrl_target_name,
00061     const string&   instance_name,
00062     const UnregisterFinderClientCB& cb
00063     );
00064 
00065     typedef XorpCallback1<void, const XrlError&>::RefPtr SetFinderClientEnabledCB;
00076     bool send_set_finder_client_enabled(
00077     const char* dst_xrl_target_name,
00078     const string&   instance_name,
00079     const bool& enabled,
00080     const SetFinderClientEnabledCB& cb
00081     );
00082 
00083     typedef XorpCallback2<void, const XrlError&, const bool*>::RefPtr FinderClientEnabledCB;
00091     bool send_finder_client_enabled(
00092     const char* dst_xrl_target_name,
00093     const string&   instance_name,
00094     const FinderClientEnabledCB&    cb
00095     );
00096 
00097     typedef XorpCallback2<void, const XrlError&, const string*>::RefPtr AddXrlCB;
00105     bool send_add_xrl(
00106     const char* dst_xrl_target_name,
00107     const string&   xrl,
00108     const string&   protocol_name,
00109     const string&   protocol_args,
00110     const AddXrlCB& cb
00111     );
00112 
00113     typedef XorpCallback1<void, const XrlError&>::RefPtr RemoveXrlCB;
00121     bool send_remove_xrl(
00122     const char* dst_xrl_target_name,
00123     const string&   xrl,
00124     const RemoveXrlCB&  cb
00125     );
00126 
00127     typedef XorpCallback2<void, const XrlError&, const XrlAtomList*>::RefPtr ResolveXrlCB;
00135     bool send_resolve_xrl(
00136     const char* dst_xrl_target_name,
00137     const string&   xrl,
00138     const ResolveXrlCB& cb
00139     );
00140 
00141     typedef XorpCallback2<void, const XrlError&, const XrlAtomList*>::RefPtr GetXrlTargetsCB;
00149     bool send_get_xrl_targets(
00150     const char* dst_xrl_target_name,
00151     const GetXrlTargetsCB&  cb
00152     );
00153 
00154     typedef XorpCallback2<void, const XrlError&, const XrlAtomList*>::RefPtr GetXrlsRegisteredByCB;
00162     bool send_get_xrls_registered_by(
00163     const char* dst_xrl_target_name,
00164     const string&   target_name,
00165     const GetXrlsRegisteredByCB&    cb
00166     );
00167 
00168     typedef XorpCallback2<void, const XrlError&, const XrlAtomList*>::RefPtr GetIpv4PermittedHostsCB;
00176     bool send_get_ipv4_permitted_hosts(
00177     const char* dst_xrl_target_name,
00178     const GetIpv4PermittedHostsCB&  cb
00179     );
00180 
00181     typedef XorpCallback2<void, const XrlError&, const XrlAtomList*>::RefPtr GetIpv4PermittedNetsCB;
00189     bool send_get_ipv4_permitted_nets(
00190     const char* dst_xrl_target_name,
00191     const GetIpv4PermittedNetsCB&   cb
00192     );
00193 
00194     typedef XorpCallback2<void, const XrlError&, const XrlAtomList*>::RefPtr GetIpv6PermittedHostsCB;
00202     bool send_get_ipv6_permitted_hosts(
00203     const char* dst_xrl_target_name,
00204     const GetIpv6PermittedHostsCB&  cb
00205     );
00206 
00207     typedef XorpCallback2<void, const XrlError&, const XrlAtomList*>::RefPtr GetIpv6PermittedNetsCB;
00215     bool send_get_ipv6_permitted_nets(
00216     const char* dst_xrl_target_name,
00217     const GetIpv6PermittedNetsCB&   cb
00218     );
00219 
00220 protected:
00221     XrlSender* _sender;
00222 
00223 private:
00224     static void unmarshall_register_finder_client(
00225     const XrlError& e,
00226     XrlArgs*    a,
00227     RegisterFinderClientCB      cb
00228     );
00229 
00230     static void unmarshall_unregister_finder_client(
00231     const XrlError& e,
00232     XrlArgs*    a,
00233     UnregisterFinderClientCB        cb
00234     );
00235 
00236     static void unmarshall_set_finder_client_enabled(
00237     const XrlError& e,
00238     XrlArgs*    a,
00239     SetFinderClientEnabledCB        cb
00240     );
00241 
00242     static void unmarshall_finder_client_enabled(
00243     const XrlError& e,
00244     XrlArgs*    a,
00245     FinderClientEnabledCB       cb
00246     );
00247 
00248     static void unmarshall_add_xrl(
00249     const XrlError& e,
00250     XrlArgs*    a,
00251     AddXrlCB        cb
00252     );
00253 
00254     static void unmarshall_remove_xrl(
00255     const XrlError& e,
00256     XrlArgs*    a,
00257     RemoveXrlCB     cb
00258     );
00259 
00260     static void unmarshall_resolve_xrl(
00261     const XrlError& e,
00262     XrlArgs*    a,
00263     ResolveXrlCB        cb
00264     );
00265 
00266     static void unmarshall_get_xrl_targets(
00267     const XrlError& e,
00268     XrlArgs*    a,
00269     GetXrlTargetsCB     cb
00270     );
00271 
00272     static void unmarshall_get_xrls_registered_by(
00273     const XrlError& e,
00274     XrlArgs*    a,
00275     GetXrlsRegisteredByCB       cb
00276     );
00277 
00278     static void unmarshall_get_ipv4_permitted_hosts(
00279     const XrlError& e,
00280     XrlArgs*    a,
00281     GetIpv4PermittedHostsCB     cb
00282     );
00283 
00284     static void unmarshall_get_ipv4_permitted_nets(
00285     const XrlError& e,
00286     XrlArgs*    a,
00287     GetIpv4PermittedNetsCB      cb
00288     );
00289 
00290     static void unmarshall_get_ipv6_permitted_hosts(
00291     const XrlError& e,
00292     XrlArgs*    a,
00293     GetIpv6PermittedHostsCB     cb
00294     );
00295 
00296     static void unmarshall_get_ipv6_permitted_nets(
00297     const XrlError& e,
00298     XrlArgs*    a,
00299     GetIpv6PermittedNetsCB      cb
00300     );
00301 
00302 private:
00303     /* Declare cached Xrl pointers */
00304     auto_ptr<Xrl> ap_xrl_register_finder_client;
00305     auto_ptr<Xrl> ap_xrl_unregister_finder_client;
00306     auto_ptr<Xrl> ap_xrl_set_finder_client_enabled;
00307     auto_ptr<Xrl> ap_xrl_finder_client_enabled;
00308     auto_ptr<Xrl> ap_xrl_add_xrl;
00309     auto_ptr<Xrl> ap_xrl_remove_xrl;
00310     auto_ptr<Xrl> ap_xrl_resolve_xrl;
00311     auto_ptr<Xrl> ap_xrl_get_xrl_targets;
00312     auto_ptr<Xrl> ap_xrl_get_xrls_registered_by;
00313     auto_ptr<Xrl> ap_xrl_get_ipv4_permitted_hosts;
00314     auto_ptr<Xrl> ap_xrl_get_ipv4_permitted_nets;
00315     auto_ptr<Xrl> ap_xrl_get_ipv6_permitted_hosts;
00316     auto_ptr<Xrl> ap_xrl_get_ipv6_permitted_nets;
00317 };
00318 
00319 #endif /* __XRL_INTERFACES_FINDER_XIF_HH__ */
 All Classes Namespaces Functions Variables Typedefs Enumerations