@Override protected ScheduledExecutorGetAllScheduledFuturesCodec.RequestParameters decodeClientMessage(ClientMessage clientMessage) { return ScheduledExecutorGetAllScheduledFuturesCodec.decodeRequest(clientMessage); }
@Override protected ClientMessage encodeResponse(Object response) { return ScheduledExecutorGetAllScheduledFuturesCodec .encodeResponse((Collection<Map.Entry<Member, List<ScheduledTaskHandler>>>) response); }
@Override public <V> Map<Member, List<IScheduledFuture<V>>> getAllScheduledFutures() { ClientMessage request = ScheduledExecutorGetAllScheduledFuturesCodec.encodeRequest(getName()); ClientInvocationFuture future = new ClientInvocation(getClient(), request, getName()).invoke(); ClientMessage response; try { response = future.get(); } catch (Exception e) { throw rethrow(e); } Collection<Map.Entry<Member, List<ScheduledTaskHandler>>> urnsPerMember = ScheduledExecutorGetAllScheduledFuturesCodec.decodeResponse(response).handlers; Map<Member, List<IScheduledFuture<V>>> tasksMap = new HashMap<Member, List<IScheduledFuture<V>>>(); for (Map.Entry<Member, List<ScheduledTaskHandler>> entry : urnsPerMember) { List<IScheduledFuture<V>> memberTasks = new ArrayList<IScheduledFuture<V>>(); for (ScheduledTaskHandler scheduledTaskHandler : entry.getValue()) { memberTasks.add(new ClientScheduledFutureProxy(scheduledTaskHandler, getContext())); } tasksMap.put(entry.getKey(), memberTasks); } return tasksMap; }
@Override public <V> Map<Member, List<IScheduledFuture<V>>> getAllScheduledFutures() { ClientMessage request = ScheduledExecutorGetAllScheduledFuturesCodec.encodeRequest(getName()); ClientInvocationFuture future = new ClientInvocation(getClient(), request, getName()).invoke(); ClientMessage response; try { response = future.get(); } catch (Exception e) { throw rethrow(e); } Collection<Map.Entry<Member, List<ScheduledTaskHandler>>> urnsPerMember = ScheduledExecutorGetAllScheduledFuturesCodec.decodeResponse(response).handlers; Map<Member, List<IScheduledFuture<V>>> tasksMap = new HashMap<Member, List<IScheduledFuture<V>>>(); for (Map.Entry<Member, List<ScheduledTaskHandler>> entry : urnsPerMember) { List<IScheduledFuture<V>> memberTasks = new ArrayList<IScheduledFuture<V>>(); for (ScheduledTaskHandler scheduledTaskHandler : entry.getValue()) { memberTasks.add(new ClientScheduledFutureProxy(scheduledTaskHandler, getContext())); } tasksMap.put(entry.getKey(), memberTasks); } return tasksMap; }
@Override protected ClientMessage encodeResponse(Object response) { return ScheduledExecutorGetAllScheduledFuturesCodec .encodeResponse((Collection<Map.Entry<Member, List<ScheduledTaskHandler>>>) response); }
@Override protected ScheduledExecutorGetAllScheduledFuturesCodec.RequestParameters decodeClientMessage(ClientMessage clientMessage) { return ScheduledExecutorGetAllScheduledFuturesCodec.decodeRequest(clientMessage); }