S3FC project page | S3FC home page |
T_obj
.
More...
#include <s3_rpc.h>
Inheritance diagram for s3_rpc_caller_m:
Public Methods | |
virtual void | call (T_obj *obj, const std::vector< std::string > &args)=0 |
Invoke the bound method of the T_obj instance obj . More... | |
virtual unsigned int | get_num_params ()=0 |
Return the number of parameters that the method that is invoked by call requires. More... | |
Static Protected Methods | |
s3_rpc_exception | err_invalid_args (const std::string &where, const std::vector< std::string > &args) |
Instantiate and return an exception indicating that an invalid argument was passed to the remotely invoked method. More... |
T_obj
.
The caller is passed a string containing packed representations of the arguments that should be passed to the method. This allows a s3_rpc_caller_m
to invoke any method of a non-static T_obj
. A particular s3_rpc_caller_m
instance is never bound to a T_obj
instance and a reference to a T_obj
is passed during each call
invocation. It is, however, bound to a particular method (requiring an instance for each method that is called). As the type of the method depends on the derived class, it is not specified in the this interface.
In order to call a method using this interface (i.e. via the call()
method), s3_rpc_caller_m
should be subclassed to create a new class capable of being bound to a particular method. This derived class is then responsible for converting the string
arguments to their real types and forwarding to the method.
The current interface only supports the calling of non-const methods (i.e. mutators).
A number of generic (templated) classes, derived from s3_rpc_caller_m
, supporting different method types are available.
Definition at line 113 of file s3_rpc.h.
|
Invoke the bound method of the
Implemented in s3_rpc_caller_m_v_v. |
|
Instantiate and return an exception indicating that an invalid argument was passed to the remotely invoked method.
The error string contains the name
Definition at line 27 of file s3_rpc.tcc. Referenced by s3_rpc_caller_m_v_t2::call, s3_rpc_caller_m_v_t1::call, and s3_rpc_caller_m_v_v::call. |
|
Return the number of parameters that the method that is invoked by call requires.
Implemented in s3_rpc_caller_m_v_v. |
Send comments to: s3fc@stonethree.com |
|