Commit 3819d1f6 by Nepxion

增加全局监听

parent 40302ab7
...@@ -39,18 +39,18 @@ public class NacosConfigAdapter extends ConfigAdapter { ...@@ -39,18 +39,18 @@ public class NacosConfigAdapter extends ConfigAdapter {
@Override @Override
public String getConfig() throws Exception { public String getConfig() throws Exception {
String config = getConfig(true); String config = getConfig(false);
if (StringUtils.isNotEmpty(config)) { if (StringUtils.isNotEmpty(config)) {
return config; return config;
} else { } else {
LOG.info("No global config is retrieved from Nacos server"); LOG.info("No partial config is retrieved from Nacos server");
} }
config = getConfig(false); config = getConfig(true);
if (StringUtils.isNotEmpty(config)) { if (StringUtils.isNotEmpty(config)) {
return config; return config;
} else { } else {
LOG.info("No partial config is retrieved from Nacos server"); LOG.info("No global config is retrieved from Nacos server");
} }
return null; return null;
...@@ -68,8 +68,8 @@ public class NacosConfigAdapter extends ConfigAdapter { ...@@ -68,8 +68,8 @@ public class NacosConfigAdapter extends ConfigAdapter {
@PostConstruct @PostConstruct
public void subscribeConfig() { public void subscribeConfig() {
subscribeConfig(true);
subscribeConfig(false); subscribeConfig(false);
subscribeConfig(true);
} }
private void subscribeConfig(boolean globalConfig) { private void subscribeConfig(boolean globalConfig) {
......
...@@ -37,18 +37,18 @@ public class RedisConfigAdapter extends ConfigAdapter { ...@@ -37,18 +37,18 @@ public class RedisConfigAdapter extends ConfigAdapter {
@Override @Override
public String getConfig() throws Exception { public String getConfig() throws Exception {
String config = getConfig(true); String config = getConfig(false);
if (StringUtils.isNotEmpty(config)) { if (StringUtils.isNotEmpty(config)) {
return config; return config;
} else { } else {
LOG.info("No global config is retrieved from Redis server"); LOG.info("No partial config is retrieved from Redis server");
} }
config = getConfig(false); config = getConfig(true);
if (StringUtils.isNotEmpty(config)) { if (StringUtils.isNotEmpty(config)) {
return config; return config;
} else { } else {
LOG.info("No partial config is retrieved from Redis server"); LOG.info("No global config is retrieved from Redis server");
} }
return null; return null;
...@@ -64,14 +64,14 @@ public class RedisConfigAdapter extends ConfigAdapter { ...@@ -64,14 +64,14 @@ public class RedisConfigAdapter extends ConfigAdapter {
return redisOperation.getConfig(group, globalConfig ? group : serviceId); return redisOperation.getConfig(group, globalConfig ? group : serviceId);
} }
public void subscribeGlobalConfig(String config) {
subscribeConfig(config, true);
}
public void subscribePartialConfig(String config) { public void subscribePartialConfig(String config) {
subscribeConfig(config, false); subscribeConfig(config, false);
} }
public void subscribeGlobalConfig(String config) {
subscribeConfig(config, true);
}
private void subscribeConfig(String config, boolean globalConfig) { private void subscribeConfig(String config, boolean globalConfig) {
String groupKey = pluginContextAware.getGroupKey(); String groupKey = pluginContextAware.getGroupKey();
String group = pluginAdapter.getGroup(); String group = pluginAdapter.getGroup();
......
...@@ -38,38 +38,38 @@ public class RedisConfigAutoConfiguration { ...@@ -38,38 +38,38 @@ public class RedisConfigAutoConfiguration {
private PluginAdapter pluginAdapter; private PluginAdapter pluginAdapter;
@Bean @Bean
public RedisMessageListenerContainer redisMessageListenerContainer(MessageListenerAdapter globalMessageListenerAdapter, MessageListenerAdapter partialMessageListenerAdapter) { public RedisMessageListenerContainer redisMessageListenerContainer(MessageListenerAdapter partialMessageListenerAdapter, MessageListenerAdapter globalMessageListenerAdapter) {
String group = pluginAdapter.getGroup(); String group = pluginAdapter.getGroup();
String serviceId = pluginAdapter.getServiceId(); String serviceId = pluginAdapter.getServiceId();
RedisMessageListenerContainer redisMessageListenerContainer = new RedisMessageListenerContainer(); RedisMessageListenerContainer redisMessageListenerContainer = new RedisMessageListenerContainer();
redisMessageListenerContainer.setConnectionFactory(redisConnectionFactory); redisMessageListenerContainer.setConnectionFactory(redisConnectionFactory);
redisMessageListenerContainer.addMessageListener(globalMessageListenerAdapter, new PatternTopic(group + "-" + group));
redisMessageListenerContainer.addMessageListener(partialMessageListenerAdapter, new PatternTopic(group + "-" + serviceId)); redisMessageListenerContainer.addMessageListener(partialMessageListenerAdapter, new PatternTopic(group + "-" + serviceId));
redisMessageListenerContainer.addMessageListener(globalMessageListenerAdapter, new PatternTopic(group + "-" + group));
return redisMessageListenerContainer; return redisMessageListenerContainer;
} }
@Bean @Bean
public MessageListenerAdapter globalMessageListenerAdapter(ConfigAdapter configAdapter) { public MessageListenerAdapter partialMessageListenerAdapter(ConfigAdapter configAdapter) {
String groupKey = pluginContextAware.getGroupKey(); String groupKey = pluginContextAware.getGroupKey();
String group = pluginAdapter.getGroup(); String group = pluginAdapter.getGroup();
String serviceId = pluginAdapter.getServiceId(); String serviceId = pluginAdapter.getServiceId();
LOG.info("Subscribe global config from Redis server, {}={}, serviceId={}", groupKey, group, serviceId); LOG.info("Subscribe partial config from Redis server, {}={}, serviceId={}", groupKey, group, serviceId);
return new MessageListenerAdapter(configAdapter, "subscribeGlobalConfig"); return new MessageListenerAdapter(configAdapter, "subscribePartialConfig");
} }
@Bean @Bean
public MessageListenerAdapter partialMessageListenerAdapter(ConfigAdapter configAdapter) { public MessageListenerAdapter globalMessageListenerAdapter(ConfigAdapter configAdapter) {
String groupKey = pluginContextAware.getGroupKey(); String groupKey = pluginContextAware.getGroupKey();
String group = pluginAdapter.getGroup(); String group = pluginAdapter.getGroup();
String serviceId = pluginAdapter.getServiceId(); String serviceId = pluginAdapter.getServiceId();
LOG.info("Subscribe partial config from Redis server, {}={}, serviceId={}", groupKey, group, serviceId); LOG.info("Subscribe global config from Redis server, {}={}, serviceId={}", groupKey, group, serviceId);
return new MessageListenerAdapter(configAdapter, "subscribePartialConfig"); return new MessageListenerAdapter(configAdapter, "subscribeGlobalConfig");
} }
@Bean @Bean
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment