修改:rpc 方法
This commit is contained in:
parent
074e5a0685
commit
5201cb6088
@ -8,7 +8,10 @@ import org.redkale.service.Service;
|
|||||||
import org.redkale.util.*;
|
import org.redkale.util.*;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.io.*;
|
import java.io.BufferedReader;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.InputStreamReader;
|
||||||
|
import java.io.OutputStream;
|
||||||
import java.net.InetSocketAddress;
|
import java.net.InetSocketAddress;
|
||||||
import java.net.Socket;
|
import java.net.Socket;
|
||||||
import java.net.SocketException;
|
import java.net.SocketException;
|
||||||
@ -128,7 +131,6 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
|
|||||||
} while (clen > 0 && clen > strLength(value));
|
} while (clen > 0 && clen > strLength(value));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// lock msg
|
// lock msg
|
||||||
if ("lock".equals(topic)) {
|
if ("lock".equals(topic)) {
|
||||||
Lock lock = lockTag.get(value);
|
Lock lock = lockTag.get(value);
|
||||||
@ -498,13 +500,12 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
|
|||||||
private static Map<String, TypeToken> rpcRetType = new ConcurrentHashMap<>();
|
private static Map<String, TypeToken> rpcRetType = new ConcurrentHashMap<>();
|
||||||
|
|
||||||
@Comment("rpc call")
|
@Comment("rpc call")
|
||||||
public CompletableFuture<RpcResult<Void>> rpc(String topic, Object v) {
|
public RpcResult<Void> rpc(String topic, Object v) {
|
||||||
return rpc(topic, v, null);
|
return rpc(topic, v, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Comment("rpc call")
|
@Comment("rpc call")
|
||||||
public <T, R> CompletableFuture<RpcResult<R>> rpc(String topic, T v, TypeToken<R> typeToken) {
|
public <T, R> RpcResult<R> rpc(String topic, T v, TypeToken<R> typeToken) {
|
||||||
return CompletableFuture.supplyAsync(() -> {
|
|
||||||
Rpc rpc = new Rpc<>(APP_NAME, Utility.uuid(), topic, v);
|
Rpc rpc = new Rpc<>(APP_NAME, Utility.uuid(), topic, v);
|
||||||
String ruk = rpc.getRuk();
|
String ruk = rpc.getRuk();
|
||||||
rpcMap.put(ruk, rpc);
|
rpcMap.put(ruk, rpc);
|
||||||
@ -522,7 +523,14 @@ public class ZHubClient extends AbstractConsumer implements IConsumer, IProducer
|
|||||||
// todo: 设置请求失败
|
// todo: 设置请求失败
|
||||||
}
|
}
|
||||||
return rpc.getRpcResult();
|
return rpc.getRpcResult();
|
||||||
});
|
}
|
||||||
|
|
||||||
|
public <T, R> CompletableFuture<RpcResult<R>> rpcAsync(String topic, T v) {
|
||||||
|
return CompletableFuture.supplyAsync(() -> rpc(topic, v, null));
|
||||||
|
}
|
||||||
|
|
||||||
|
public <T, R> CompletableFuture<RpcResult<R>> rpcAsync(String topic, T v, TypeToken<R> typeToken) {
|
||||||
|
return CompletableFuture.supplyAsync(() -> rpc(topic, v, typeToken));
|
||||||
}
|
}
|
||||||
|
|
||||||
// RpcResult: {ruk:xxx-xxxx, retcode:0}
|
// RpcResult: {ruk:xxx-xxxx, retcode:0}
|
||||||
|
Loading…
Reference in New Issue
Block a user