Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.xmlrpc.metadata
Interface XmlRpcListableHandlerMapping

All Superinterfaces:
  XmlRpcHandlerMapping

All Known Implementing Classes:
  AbstractReflectiveHandlerMapping, PropertyHandlerMapping

    public interface XmlRpcListableHandlerMapping

extends XmlRpcHandlerMapping

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

See Also:
  Specification of XML-RPC introspection

Method Summary
`java.lang.String[]` | `getListMethods()` This method implements the introspection method `system.listMethods`, which is specified as follows: This method may be used to enumerate the methods implemented by the XML-RPC server.
`java.lang.String` | `getMethodHelp(java.lang.String pHandlerName)` This method implements the introspection method `system.methodSignature`, which is specified as follows: This method takes one parameter, the name of a method implemented by the XML-RPC server.
`java.lang.String[][]` | `getMethodSignature(java.lang.String pHandlerName)` This method implements the introspection method `system.methodSignature`, which is specified as follows: This method takes one parameter, the name of a method implemented by the XML-RPC server.

Methods inherited from interface org.apache.xmlrpc.server.XmlRpcHandlerMapping
`getHandler`

Method Detail

### getListMethods

    java.lang.String[] getListMethods()
                                      throws XmlRpcException

  This method implements the introspection method `system.listMethods`, which is specified as follows:

  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.

  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`.

  Throws:
    `XmlRpcException` - An internal error occurred.

### getMethodSignature

    java.lang.String[][] getMethodSignature(java.lang.String pHandlerName)
                                            throws XmlRpcException

  This method implements the introspection method `system.methodSignature`, which is specified as follows:

  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.

  Throws:
    `XmlRpcException`
  See Also:
    `XmlRpcMetaDataHandler.getSignatures()`

### getMethodHelp

    java.lang.String getMethodHelp(java.lang.String pHandlerName)
                                   throws XmlRpcException

  This method implements the introspection method `system.methodSignature`, which is specified as follows:

  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.

  Throws:
    `XmlRpcException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2010 The Apache Software Foundation. All Rights Reserved.