2
#ifndef _XMLRPCSERVERMETHOD_H_
3
#define _XMLRPCSERVERMETHOD_H_
5
// XmlRpc++ Copyright (c) 2002-2008 by Chris Morley
8
# pragma warning(disable:4786) // identifier was truncated in debug info
15
// Representation of a parameter or result value
18
// The XmlRpcServer processes client requests to call RPCs
21
//! Abstract class representing a single RPC method
22
class XmlRpcServerMethod {
25
XmlRpcServerMethod(std::string const& name, XmlRpcServer* server = 0);
27
virtual ~XmlRpcServerMethod();
29
//! Returns the name of the method
30
std::string& name() { return _name; }
32
//! Execute the method. Subclasses must provide a definition for this method.
33
virtual void execute(XmlRpcValue& params, XmlRpcValue& result) = 0;
35
//! Returns a help string for the method.
36
//! Subclasses should define this method if introspection is being used.
37
virtual std::string help() { return std::string(); }
41
XmlRpcServer* _server;
45
#endif // _XMLRPCSERVERMETHOD_H_