@Override public Object enqueueCallFromRemote(ConnectionRegistry reg, Actor sendingActor, Actor receiver, String methodName, Object[] args, boolean isCB, Object securityContext, BiFunction<Actor, String, Boolean> callInterceptor) { // System.out.println("dispatch "+methodName+" "+Thread.currentThread()); // here sender + receiver are known in a ST context Actor actor = receiver.getActor(); Method method = actor.__getCachedMethod(methodName, actor, callInterceptor); if ( method == null ) throw new RuntimeException("unknown method "+methodName+" on "+actor); // scan for callbacks in arguments .. for (int i = 0; i < args.length; i++) { Object arg = args[i]; if ( arg instanceof Callback) { args[i] = new CallbackWrapper<>(sendingActor,(Callback<Object>) arg); } } CallEntry e = createCallentry(reg, args, isCB, actor, method); return put2QueuePolling(e); }
@Override public Object enqueueCallFromRemote(ConnectionRegistry reg, Actor sendingActor, Actor receiver, String methodName, Object[] args, boolean isCB, Object securityContext, BiFunction<Actor, String, Boolean> callInterceptor) { // System.out.println("dispatch "+methodName+" "+Thread.currentThread()); // here sender + receiver are known in a ST context Actor actor = receiver.getActor(); Method method = actor.__getCachedMethod(methodName, actor, callInterceptor); if ( method == null ) throw new RuntimeException("unknown method "+methodName+" on "+actor); // scan for callbacks in arguments .. for (int i = 0; i < args.length; i++) { Object arg = args[i]; if ( arg instanceof Callback) { args[i] = new CallbackWrapper<>(sendingActor,(Callback<Object>) arg); } } CallEntry e = createCallentry(reg, args, isCB, actor, method); return put2QueuePolling(e); }
methodName += split[0].substring(0,1).toUpperCase()+split[0].substring(1); Method m = facade.getActor().__getCachedMethod(methodName,facade,null); if ( m == null ) { m = facade.getActor().__getCachedMethod(rawMethodName,facade,null); if ( m == null ) { exchange.setResponseCode(404);