You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xmlrpc-auto@ws.apache.org by "Jochen Wiedmann (JIRA)" <xm...@ws.apache.org> on 2007/10/27 20:19:50 UTC

[jira] Commented: (XMLRPC-135) intercept method calls (on the client and on the server side)

    [ https://issues.apache.org/jira/browse/XMLRPC-135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12538237 ] 

Jochen Wiedmann commented on XMLRPC-135:
----------------------------------------

Are you ready to provide a patch?


> intercept method calls (on the client and on the server side)
> -------------------------------------------------------------
>
>                 Key: XMLRPC-135
>                 URL: https://issues.apache.org/jira/browse/XMLRPC-135
>             Project: XML-RPC
>          Issue Type: Improvement
>    Affects Versions: 3.0, 3.1
>            Reporter: Mario Linke
>
> This extension is to integrate cross-cutting concerns (AOP), how stopping the time, logging or transform args and return value.
> public interface Interceptor {
> 	
> 	public void beforeMethodInvocation (InterceptorContext pInterceptorContext);
> 	public void afterMethodInvocation (InterceptorContext pInterceptorContext);
> 	public void onError (Throwable pThrowable);	
> }
> public final class InterceptorContext {
> 	
> 	private Method method = null;
> 	private Object[] args = null;
> 	private Object result = null;
> }
> InterceptorContext  is analog to the XmlRpcRequest, extended to the result and the method object.
> Extend the XmlRpcController to register the Interceptors:
> - addInterceptor
> - removeInterceptor
> - getInterceptorByNumber
> and delegate before and after event:
> by the client to XmlRpcWorker
> by the server to the XmlRpcHandler
> Mario

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.