XML-RPC.NET Introspection API

XML-RPC.NET Services and Proxy classes are easy to implement and install.The examples here are coded in C# but any CLS compliant language can be used.

array system.listMethods ()

Return an array of all available XML-RPC methods on this Service.

string system.methodHelp (string)

Given the name of a method, return a help string.

array system.methodSignature (string)

Given the name of a method, return an array of legal signatures. Each signature is an array of strings. The first item of each signature is the return type, and any others items are parameter types.

XML-RPC.NET Usage

All XML-RPC.NET proxy classes must derive from XmlRpcClientProtocol and so inherit the following XML-RPC proxy methods:

[XmlRpcMethod("system.listMethods")]
public string[] SystemListMethods()

[XmlRpcMethod("system.methodSignature")]
public string[][] SystemMethodSignature(string MethodName)

[XmlRpcMethod("system.methodHelp")]
public string SystemMethodHelp(string MethodName)


Therefore to use the Introspection API on a Service create a proxy class and call the above methods. If you are only interested in the Introspection methods the class need not define any of its own methods.

For example if a class called Introspect is derived from XmlRpcProxy, the following code will return the methods exposed by the Service:

[XmlRpcUrl("http://www.cookcomputing.com/xmlrpc/svc.xmlrpc")]
class Introspect : XmlRpcClientProtocol
{
}

Introspect is = new Introspect();
string[] methods = is.SystemListMethods();

 

Note: XML-RPC.NET currently does not support over-loaded methods.

 

© Charles Cook, 2001 All Rights Reserved.
25 April 2001