package org.distributeme.core.interceptor; import org.distributeme.core.ServerSideCallContext; /** * This interceptor describes an interface that is acting on the server side. * * @author lrosenberg * @version $Id: $Id */ public interface ServerSideRequestInterceptor { /** * Called before any real processing happens on the server side. * * @param context a {@link org.distributeme.core.ServerSideCallContext} object. * @param iContext a {@link org.distributeme.core.interceptor.InterceptionContext} object. * @return a {@link org.distributeme.core.interceptor.InterceptorResponse} object. */ InterceptorResponse beforeServantCall(ServerSideCallContext context, InterceptionContext iContext); /** * Called after the service actually processed the request. Allows to inspect or modify the answer. * * @param context a {@link org.distributeme.core.ServerSideCallContext} object. * @param iContext a {@link org.distributeme.core.interceptor.InterceptionContext} object. * @return a {@link org.distributeme.core.interceptor.InterceptorResponse} object. */ InterceptorResponse afterServantCall(ServerSideCallContext context, InterceptionContext iContext); }