提交 d681ba51 编写于 作者: W william.liangf

DUBBO-201 将延迟暴露服务依赖的ContextStartedEvent改为ContextRefreshedEvent

git-svn-id: http://code.alibabatech.com/svn/dubbo/trunk@885 1a56cb94-b969-4eaa-88fa-be21384802f2
上级 103e0264
......@@ -15,24 +15,25 @@
*/
package com.alibaba.dubbo.config.spring;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Map;
import org.springframework.beans.factory.BeanNameAware;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.ApplicationEvent;
import org.springframework.context.ApplicationListener;
import com.alibaba.dubbo.config.ApplicationConfig;
import com.alibaba.dubbo.config.MonitorConfig;
import com.alibaba.dubbo.config.ProtocolConfig;
import com.alibaba.dubbo.config.ProviderConfig;
import com.alibaba.dubbo.config.RegistryConfig;
import com.alibaba.dubbo.config.ServiceConfig;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Map;
import org.springframework.beans.factory.BeanNameAware;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.ApplicationEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextRefreshedEvent;
import com.alibaba.dubbo.config.ApplicationConfig;
import com.alibaba.dubbo.config.MonitorConfig;
import com.alibaba.dubbo.config.ProtocolConfig;
import com.alibaba.dubbo.config.ProviderConfig;
import com.alibaba.dubbo.config.RegistryConfig;
import com.alibaba.dubbo.config.ServiceConfig;
/**
* ServiceFactoryBean
......@@ -62,7 +63,6 @@ public class ServiceBean<T> extends ServiceConfig<T> implements InitializingBean
try {
Method method = applicationContext.getClass().getMethod("addApplicationListener", new Class<?>[]{ApplicationListener.class}); // 兼容Spring2.0.1
method.invoke(applicationContext, new Object[] {this});
Class.forName("org.springframework.context.event.ContextStartedEvent");
supportedApplicationListener = true;
} catch (Throwable t) {
}
......@@ -74,7 +74,7 @@ public class ServiceBean<T> extends ServiceConfig<T> implements InitializingBean
}
public void onApplicationEvent(ApplicationEvent event) {
if ("org.springframework.context.event.ContextStartedEvent".equals(event.getClass().getName())) { // 兼容Spring2.0.1
if (ContextRefreshedEvent.class.getName().equals(event.getClass().getName())) {
if (isDelay()) {
if (logger.isInfoEnabled()) {
logger.info("The service ready on spring started. service: " + getInterface());
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册