MessageAgent增加rpcFirst配置
This commit is contained in:
@@ -1212,11 +1212,14 @@ public final class Application {
|
||||
if (this.messageAgents != null) {
|
||||
MessageAgent messageAgent = this.resourceFactory.find(resourceName, MessageAgent.class);
|
||||
if (messageAgent != null) {
|
||||
HttpRpcClient rpcClient = messageAgent.getHttpRpcClient();
|
||||
field.set(srcObj, rpcClient);
|
||||
rf.inject(resourceName, rpcClient, null); // 给其可能包含@Resource的字段赋值;
|
||||
rf.register(resourceName, HttpRpcClient.class, rpcClient);
|
||||
return rpcClient;
|
||||
if (clusterAgent == null || !Objects.equals(clusterAgent.getName(), resourceName)
|
||||
|| messageAgent.isRpcFirst()) {
|
||||
HttpRpcClient rpcClient = messageAgent.getHttpRpcClient();
|
||||
field.set(srcObj, rpcClient);
|
||||
rf.inject(resourceName, rpcClient, null); // 给其可能包含@Resource的字段赋值;
|
||||
rf.register(resourceName, HttpRpcClient.class, rpcClient);
|
||||
return rpcClient;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (clusterAgent == null) {
|
||||
|
||||
@@ -78,6 +78,8 @@ public abstract class MessageAgent implements Resourcable {
|
||||
protected final Map<String, Map<String, MessageConsumerWrapper>> messageConsumerMap = new HashMap<>();
|
||||
|
||||
//-------------------------- HttpRpcClient、SncpMessageClient --------------------------
|
||||
private boolean rpcFirst;
|
||||
|
||||
private HttpRpcMessageClient httpRpcClient;
|
||||
|
||||
private String httpAppRespTopic;
|
||||
@@ -100,6 +102,7 @@ public abstract class MessageAgent implements Resourcable {
|
||||
|
||||
public void init(AnyValue config) {
|
||||
this.name = checkName(config.getValue("name", ""));
|
||||
this.rpcFirst = config.getBoolValue("rpcfirst", false);
|
||||
this.httpAppRespTopic = generateHttpAppRespTopic();
|
||||
this.sncpAppRespTopic = generateSncpAppRespTopic();
|
||||
int threads = config.getIntValue("threads", application.isVirtualWorkExecutor() ? 0 : -1);
|
||||
@@ -344,6 +347,10 @@ public abstract class MessageAgent implements Resourcable {
|
||||
return sncpMessageClient;
|
||||
}
|
||||
|
||||
public boolean isRpcFirst() {
|
||||
return rpcFirst;
|
||||
}
|
||||
|
||||
protected String checkName(String name) { //不能含特殊字符
|
||||
if (name.isEmpty()) {
|
||||
return name;
|
||||
|
||||
Reference in New Issue
Block a user