Public Member Functions
org.apache.xmlrpc.metadata.XmlRpcListableHandlerMapping Interface Reference
Inheritance diagram for org.apache.xmlrpc.metadata.XmlRpcListableHandlerMapping:
Inheritance graph
[legend]

List of all members.

Public Member Functions

String[] getListMethods () throws XmlRpcException
String getMethodHelp (String pHandlerName) throws XmlRpcException
String[][] getMethodSignature (String pHandlerName) throws XmlRpcException

Detailed Description

A listable handler mapping is able to provide support for XML-RPC meta data, as specified here.

See also:
Specification of XML-RPC introspection

Definition at line 34 of file XmlRpcListableHandlerMapping.java.


Member Function Documentation

This method implements the introspection method system.listMethods, which is specified as follows: <cite>

This method may be used to enumerate the methods implemented by the XML-RPC server.

The system.listMethods method requires no parameters. It returns an array of strings, each of which is the name of a method implemented by the server. </cite>

Note, that the specification doesn't require that the list must be exhaustive. We conclude, that a valid method "handlerName" doesn't need to be in the list. For example, a handler, which implements XmlRpcHandler, but not XmlRpcMetaDataHandler, should possibly excluded: Otherwise, the listable handler mapping could not provide meaningful replies to system.methodSignature, and system.methodHelp.

Exceptions:
XmlRpcExceptionAn internal error occurred.

Implemented in org.apache.xmlrpc.server.AbstractReflectiveHandlerMapping.

This method implements the introspection method system.methodSignature, which is specified as follows: <cite>

This method takes one parameter, the name of a method implemented by the XML-RPC server. It returns a documentation string describing the use of that method. If no such string is available, an empty string is returned.

The documentation string may contain HTML markup. </cite>

Implemented in org.apache.xmlrpc.server.AbstractReflectiveHandlerMapping.

This method implements the introspection method system.methodSignature, which is specified as follows: <cite>

This method takes one parameter, the name of a method implemented by the XML-RPC server. It returns an array of possible signatures for this method. A signature is an array of types. The first of these types is the return type of the method, the rest are parameters.

Multiple signatures (ie. overloading) are permitted: this is the reason that an array of signatures are returned by this method.

Signatures themselves are restricted to the top level parameters expected by a method. For instance if a method expects one array of structs as a parameter, and it returns a string, its signature is simply "string, array". If it expects three integers, its signature is "string, int, int, int".

If no signature is defined for the method, a none-array value is returned. Therefore this is the way to test for a non-signature, if $resp below is the response object from a method call to system.methodSignature:

      $v=$resp->value();
      if ($v->kindOf()!="array") {
        // then the method did not have a signature defined
      }
    

See the introspect.php demo included in this distribution for an example of using this method. </cite>

See also:
XmlRpcMetaDataHandler::getSignatures()

Implemented in org.apache.xmlrpc.server.AbstractReflectiveHandlerMapping.


The documentation for this interface was generated from the following file:


rosjava_core
Author(s):
autogenerated on Wed Aug 26 2015 16:06:50