public CompletableFuture<RaftResponseMessage> SendRequest(RaftRequestMessage request){ boolean isAppendRequest = request.getMessageType() == RaftMessageType.AppendEntriesRequest || request.getMessageType() == RaftMessageType.InstallSnapshotRequest; return this.rpcClient.send(request) .thenComposeAsync((RaftResponseMessage response) -> { if(isAppendRequest){ this.setFree(); } this.resumeHeartbeatingSpeed(); return CompletableFuture.completedFuture(response); }, this.executor) .exceptionally((Throwable error) -> { if(isAppendRequest){ this.setFree(); } this.slowDownHeartbeating(); throw new RpcException(error, request); }); }
public CompletableFuture<RaftResponseMessage> SendRequest(RaftRequestMessage request){ boolean isAppendRequest = request.getMessageType() == RaftMessageType.AppendEntriesRequest || request.getMessageType() == RaftMessageType.InstallSnapshotRequest; return this.rpcClient.send(request) .thenComposeAsync((RaftResponseMessage response) -> { if(isAppendRequest){ this.setFree(); } this.resumeHeartbeatingSpeed(); return CompletableFuture.completedFuture(response); }, this.executor) .exceptionally((Throwable error) -> { if(isAppendRequest){ this.setFree(); } this.slowDownHeartbeating(); throw new RpcException(error, request); }); }
public CompletableFuture<RaftResponseMessage> SendRequest(RaftRequestMessage request){ boolean isAppendRequest = request.getMessageType() == RaftMessageType.AppendEntriesRequest || request.getMessageType() == RaftMessageType.InstallSnapshotRequest; return this.rpcClient.send(request) .thenComposeAsync((RaftResponseMessage response) -> { if(isAppendRequest){ this.setFree(); } this.resumeHeartbeatingSpeed(); return CompletableFuture.completedFuture(response); }, this.executor) .exceptionally((Throwable error) -> { if(isAppendRequest){ this.setFree(); } this.slowDownHeartbeating(); throw new RpcException(error, request); }); }
server.slowDownHeartbeating(); final RaftServer self = this; this.context.getScheduledExecutor().schedule(new Callable<Void>(){
server.slowDownHeartbeating(); final RaftServer self = this; this.context.getScheduledExecutor().schedule(new Callable<Void>(){
server.slowDownHeartbeating(); final RaftServer self = this; this.context.getScheduledExecutor().schedule(new Callable<Void>(){