@AroundInvoke public Object log(InvocationContext context) throws Exception { Object[] parameters = context.getParameters(); if (parameters.length > 0 && parameters[0] instanceof String) { String param = (String) parameters[0]; parameters[0] = "Hi " + param + " !"; context.setParameters(parameters); } return context.proceed(); } }
@AroundInvoke public Object log(InvocationContext context) throws Exception { Object[] parameters = context.getParameters(); if (parameters.length > 0 && parameters[0] instanceof String) { String param = (String) parameters[0]; parameters[0] = "Hi " + param + " !"; context.setParameters(parameters); } return context.proceed(); } }
@AroundInvoke public Object log(InvocationContext context) throws Exception { Object[] parameters = context.getParameters(); if (parameters.length > 0 && parameters[0] instanceof String) { String param = (String) parameters[0]; parameters[0] = param + " Nice to meet you."; context.setParameters(parameters); } return context.proceed(); } }
public void setParameters(Object[] params) { context.setParameters(params); }
@Override public void setParameters(Object[] objects) { wrapped.setParameters(objects); }
public void setParameters(Object[] params) { delegateInvocationContext.setParameters(params); }
@Override public void setParameters(Object[] parameters) { wrapped.setParameters(parameters); }
@Override protected Object invokeTargetOperation(Method method, Object[] args) throws Throwable { this.invContext.setParameters(args); return this.invContext.proceed(); }
@AroundInvoke public Object intercept(InvocationContext ctx) throws Exception { Integer[] parameters = new Integer[] { 1, 2, 3 }; ctx.setParameters(parameters); return ctx.proceed(); } }
@AroundInvoke public Object intercept(InvocationContext ctx) throws Exception { Integer[] parameters = new Integer[] { 1, 2, 3 }; ctx.setParameters(parameters); return ctx.proceed(); } }
@AroundInvoke public Object intercept(InvocationContext ctx) throws Exception { Object[] parameters = new Object[]{"1", new HashSet<Integer>()}; ctx.setParameters(parameters); return ctx.proceed(); } }
@Override public void setParameters(Object[] params) throws IllegalStateException, IllegalArgumentException { delegate().setParameters(params); }
@Override public void setParameters(Object[] params) throws IllegalStateException, IllegalArgumentException { delegate().setParameters(params); }
@Override public void setParameters(Object[] params) throws IllegalStateException, IllegalArgumentException { delegate().setParameters(params); }
Object intercept( InvocationContext context ) { Object[] params = context .getParameters(); //modify the string and update the array //the value of i depends on the method signature (the parameter position) //and getting it is left for you as an excersise params[i] = modify( (String)params[i] ); context.setParameters( params ); return context.proceed(); }
@AroundInvoke public Object modifyGreet(InvocationContext context) throws Exception { if (context.getMethod().getName().equals("setGreet")) { context.setParameters(new Object[] { "Hello " + context.getParameters()[0] }); } return context.proceed(); } }
@AroundInvoke public Object aroundInvoke(final InvocationContext ctx) throws Exception { final Object[] objArr = ctx.getParameters(); final Message msg = (Message) objArr[0]; msg.setBooleanProperty("MethodLevelBusinessMethodInterception", true); ctx.setParameters(objArr); return ctx.proceed(); }
@AroundInvoke public Object mdbInterceptor(InvocationContext ctx) throws Exception { Object[] objArr = ctx.getParameters(); Message msg = (Message)objArr[0]; msg.setBooleanProperty("MethodLevelBusinessMethodInterception",true); ctx.setParameters(objArr); return ctx.proceed(); }
@AroundInvoke public Object mdbInterceptor(final InvocationContext ctx) throws Exception { final Object[] objArr = ctx.getParameters(); final Message msg = (Message) objArr[0]; msg.clearProperties(); msg.setBooleanProperty("ClassLevelBusinessMethodInterception", true); ctx.setParameters(objArr); return ctx.proceed(); }
protected Object performInvocation(final Exchange exchange, final Object serviceObject, final Method m, final Object[] paramArray) throws Exception { final InvocationContext invContext = exchange.get(InvocationContext.class); invContext.setParameters(paramArray); final Object res = invContext.proceed(); final EjbMessageContext ctx = (EjbMessageContext) invContext.getContextData(); final Map<String, Object> handlerProperties = (Map<String, Object>) exchange .get(HANDLER_PROPERTIES); addHandlerProperties(ctx, handlerProperties); updateWebServiceContext(exchange, ctx); return res; }