You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xmlrpc-dev@ws.apache.org by "Jochen Wiedmann (JIRA)" <xm...@ws.apache.org> on 2006/02/23 07:49:07 UTC

[jira] Kommentiert: (XMLRPC-75) Introspection Patch for XML-RPC, current to SVN 2005-12-29 (r359943)

    [ http://issues.apache.org/jira/browse/XMLRPC-75?page=comments#action_12367476 ] 

Jochen Wiedmann commented on XMLRPC-75:
---------------------------------------

Walter, are you interested in getting this into the 3.0 branch?

If so, let's do it in a few steps.

- First of all, you should propose necessary extensions for the interfaces handlermapping and handler.
  (Recommended: Create an interface like XmlRpcMetaDataHandlerMapping, which extends
  XmlRpcHandlerMapping.)
- Second: Make the existing classes implement your new interfaces.
- Third: Provide special handlers, which provide the requested metadata.



> Introspection Patch for XML-RPC, current to SVN 2005-12-29 (r359943)
> --------------------------------------------------------------------
>
>          Key: XMLRPC-75
>          URL: http://issues.apache.org/jira/browse/XMLRPC-75
>      Project: XML-RPC
>         Type: New Feature
>   Components: Source
>     Versions: unspecified
>     Reporter: Walter Mundt
>  Attachments: IntrospectionExample.java, xmlrpc-2.0-beta-introspection.patch
>
> I've taken Aaron Hamid's Introspection patch (which was in turn derived from the one here: http://xmlrpc-c.sourceforge.net/hacks/helma-xmlrpc-introspection.diff ) and basically rewritten it to work with the current XML-RPC library.
> I tried to set it up so that it followed the existing coding style as much as possible, and would not break any existing applications.  For example, when I needed a list of handlers supported by a particular mapping, I added a new interface XmlRpcListableHandlerMapping that provides this information, made the default handler implement it, and designed my code so that if it were not implemented by a handler in use, everything  would work except the system.listMethods functionality that relies on it.
> I hope you will be able to integrate this code into the next version of the library; please contact me with any questions or issues.  I will be attaching the patch to this issue if I can so that the problem with his previous patch will not occur.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Re: [jira] Kommentiert: (XMLRPC-75) Introspection Patch for XML-RPC, current to SVN 2005-12-29 (r359943)

Posted by Jochen Wiedmann <jo...@gmail.com>.
On 2/23/06, Walter Mundt <Wa...@coleengineering.com> wrote:

> Specifically, the simple "ws.addHandler(name, someRandomObject)"
> mechanism is _very_ handy, and going out to property files is, for my
> purposes (rapid prototyping and integration of code in different
> languages) vastly less convenient.  Therefore, before I have any
> interest in workin on the 3.0 branch, you'll have to agree to reinstate
> the older option of providing arbitrary Object instances at runtime to a
> handler mapping.

There is absolutely no reason, that prevents additional
implementations of XmlRpcHandlerMapping. Patches welcome.


Jochen


--
Whenever you find yourself on the side of the
majority, it is time to pause and reflect.
(Mark Twain)

Re: [jira] Kommentiert: (XMLRPC-75) Introspection Patch for XML-RPC, current to SVN 2005-12-29 (r359943)

Posted by Walter Mundt <Wa...@coleengineering.com>.
Jochen Wiedmann (JIRA) wrote:
> Walter, are you interested in getting this into the 3.0 branch?

I am, but first I have a few issues with the 3.0 branch that I don't 
like.  First and foremost, the capabiliry to expose the methods on 
particular instances of a class has been removed and replaced with a 
default-constructor/proerty-file-based API that would be much less 
convenient for me to use.

Specifically, the simple "ws.addHandler(name, someRandomObject)" 
mechanism is _very_ handy, and going out to property files is, for my 
purposes (rapid prototyping and integration of code in different 
languages) vastly less convenient.  Therefore, before I have any 
interest in workin on the 3.0 branch, you'll have to agree to reinstate 
the older option of providing arbitrary Object instances at runtime to a 
handler mapping.

I don't care if the call structure changes to
((PropertyHandlerMapping)ws.getXmlRpcServer().getHandlerMapping()).addHandler(name, 
obj);
if that would be preferred, and I will whip up a quick patch to add such 
a call if you like.

> - First of all, you should propose necessary extensions for the interfaces handlermapping and handler.
>   (Recommended: Create an interface like XmlRpcMetaDataHandlerMapping, which extends
>   XmlRpcHandlerMapping.)
> - Second: Make the existing classes implement your new interfaces.
> - Third: Provide special handlers, which provide the requested metadata.

Can do, given the conditions above.