Operation fireOperationDispatchedCallback(Request req, Operation op) { for (DispatcherCallback cb : callbacks) { Operation o = cb.operationDispatched(req, op); op = o != null ? o : op; } return op; }
Request fireInitCallback(Request req) { for (DispatcherCallback cb : callbacks) { Request r = cb.init(req); req = r != null ? r : req; } return req; }
Object fireOperationExecutedCallback(Request req, Operation op, Object result) { for (DispatcherCallback cb : callbacks) { Object r = cb.operationExecuted(req, op, result); result = r != null ? r : result; } return result; }
Response fireResponseDispatchedCallback( Request req, Operation op, Object result, Response response) { for (DispatcherCallback cb : callbacks) { Response r = cb.responseDispatched(req, op, result, response); response = r != null ? r : response; } return response; }
Service fireServiceDispatchedCallback(Request req, Service service) { for (DispatcherCallback cb : callbacks) { Service s = cb.serviceDispatched(req, service); service = s != null ? s : service; } return service; }
void fireFinishedCallback(Request req) { for (DispatcherCallback cb : callbacks) { try { cb.finished(req); } catch (Throwable t) { logger.log(Level.WARNING, "Error firing finished callback for " + cb.getClass(), t); } } }
callback.operationDispatched(new Request(), new Operation("foo", new Service("bar", null, null, null), null, null));
callback.operationDispatched( new Request(), new Operation("foo", new Service("bar", null, null, null), null, null));