This commit is contained in:
ken.lj 2019-01-07 21:10:27 +08:00
parent 824aaf9b5e
commit a66784ae12
14 changed files with 70 additions and 29 deletions

View File

@ -17,9 +17,11 @@
package org.apache.dubbo.config.spring.beans.factory.annotation;
import org.apache.dubbo.config.annotation.Reference;
import org.apache.dubbo.config.context.ConfigManager;
import org.apache.dubbo.config.spring.ReferenceBean;
import org.apache.dubbo.config.spring.api.DemoService;
import org.apache.dubbo.config.spring.context.annotation.DubboComponentScan;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
@ -63,12 +65,14 @@ public class ReferenceAnnotationBeanPostProcessorTest {
public void init() {
// Starts Provider
providerApplicationContext = new AnnotationConfigApplicationContext(ServiceAnnotationBeanPostProcessorTest.TestConfiguration.class);
ConfigManager.getInstance().clear();
}
@After
public void destroy() {
// Shutdowns Provider
providerApplicationContext.close();
ConfigManager.getInstance().clear();
}
@Test

View File

@ -16,11 +16,15 @@
*/
package org.apache.dubbo.config.spring.context.annotation;
import org.apache.dubbo.config.context.ConfigManager;
import org.apache.dubbo.config.spring.api.DemoService;
import org.apache.dubbo.config.spring.context.annotation.consumer.ConsumerConfiguration;
import org.apache.dubbo.config.spring.context.annotation.provider.DemoServiceImpl;
import org.apache.dubbo.config.spring.context.annotation.provider.ProviderConfiguration;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.springframework.aop.support.AopUtils;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
@ -35,6 +39,16 @@ import static org.springframework.core.annotation.AnnotationUtils.findAnnotation
*/
public class DubboComponentScanRegistrarTest {
@Before
public void setUp() {
ConfigManager.getInstance().clear();
}
@After
public void tearDown() {
ConfigManager.getInstance().clear();
}
@Test
public void test() {

View File

@ -16,12 +16,15 @@
*/
package org.apache.dubbo.config.spring.context.annotation;
import org.apache.dubbo.config.ApplicationConfig;
import org.apache.dubbo.config.RegistryConfig;
import org.apache.dubbo.config.context.ConfigManager;
import org.apache.dubbo.config.spring.api.DemoService;
import org.apache.dubbo.config.spring.context.annotation.consumer.test.TestConsumerConfiguration;
import org.apache.dubbo.config.spring.context.annotation.provider.DemoServiceImpl;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.springframework.aop.support.AopUtils;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
@ -45,6 +48,16 @@ import static org.springframework.core.annotation.AnnotationUtils.findAnnotation
*/
public class EnableDubboTest {
@Before
public void setUp() {
ConfigManager.getInstance().clear();
}
@After
public void tearDown() {
ConfigManager.getInstance().clear();
}
@Test
public void test() {
@ -114,13 +127,6 @@ public class EnableDubboTest {
Assert.assertEquals("Hello,Mercy", value);
// Test dubbo-annotation-consumer2 bean presentation
ApplicationConfig applicationConfig = consumerContext.getBean("dubbo-annotation-consumer2", ApplicationConfig.class);
// Test multiple binding
Assert.assertEquals("dubbo-consumer2", applicationConfig.getName());
// Test dubbo-annotation-consumer2 bean presentation
RegistryConfig registryConfig = consumerContext.getBean("my-registry2", RegistryConfig.class);
@ -135,7 +141,7 @@ public class EnableDubboTest {
@EnableDubbo(scanBasePackages = "org.apache.dubbo.config.spring.context.annotation.provider")
@ComponentScan(basePackages = "org.apache.dubbo.config.spring.context.annotation.provider")
@PropertySource("META-INF/dubbb-provider.properties")
@PropertySource("META-INF/dubbo-provider.properties")
@EnableTransactionManagement
public static class TestProviderConfiguration {

View File

@ -21,6 +21,7 @@ import org.apache.dubbo.config.RegistryConfig;
import org.apache.dubbo.config.annotation.Reference;
import org.apache.dubbo.config.spring.api.DemoService;
import org.apache.dubbo.config.spring.context.annotation.DubboComponentScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
@ -40,10 +41,10 @@ public class ConsumerConfiguration {
*
* @return {@link ApplicationConfig} Bean
*/
@Bean("dubbo-annotation-consumer")
@Bean("dubbo-annotation-test")
public ApplicationConfig applicationConfig() {
ApplicationConfig applicationConfig = new ApplicationConfig();
applicationConfig.setName("dubbo-annotation-consumer");
applicationConfig.setName("dubbo-annotation-test");
return applicationConfig;
}

View File

@ -19,6 +19,7 @@ package org.apache.dubbo.config.spring.context.annotation.consumer.test;
import org.apache.dubbo.config.annotation.Reference;
import org.apache.dubbo.config.spring.api.DemoService;
import org.apache.dubbo.config.spring.context.annotation.EnableDubbo;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.PropertySource;
import org.springframework.transaction.annotation.EnableTransactionManagement;
@ -29,11 +30,11 @@ import org.springframework.transaction.annotation.EnableTransactionManagement;
* @since 2.5.7
*/
@EnableDubbo(scanBasePackageClasses = TestConsumerConfiguration.class, multipleConfig = true)
@PropertySource("META-INF/dubbb-consumer.properties")
@PropertySource("META-INF/dubbo-consumer.properties")
@EnableTransactionManagement
public class TestConsumerConfiguration {
@Reference(version = "2.5.7", url = "dubbo://127.0.0.1:12345", application = "dubbo-annotation-consumer")
@Reference(version = "2.5.7", url = "dubbo://127.0.0.1:12345", application = "dubbo-annotation-test")
private DemoService demoService;
public DemoService getDemoService() {
@ -52,7 +53,7 @@ public class TestConsumerConfiguration {
public static abstract class Ancestor {
@Reference(version = "2.5.7", url = "dubbo://127.0.0.1:12345", application = "dubbo-annotation-consumer")
@Reference(version = "2.5.7", url = "dubbo://127.0.0.1:12345", application = "dubbo-annotation-test")
private DemoService demoServiceFromAncestor;
public DemoService getDemoServiceFromAncestor() {
@ -72,7 +73,7 @@ public class TestConsumerConfiguration {
return demoServiceFromParent;
}
@Reference(version = "2.5.7", url = "dubbo://127.0.0.1:12345", application = "dubbo-annotation-consumer")
@Reference(version = "2.5.7", url = "dubbo://127.0.0.1:12345", application = "dubbo-annotation-test")
public void setDemoServiceFromParent(DemoService demoServiceFromParent) {
this.demoServiceFromParent = demoServiceFromParent;
}
@ -81,7 +82,7 @@ public class TestConsumerConfiguration {
public static class Child extends TestConsumerConfiguration.Parent {
@Reference(version = "2.5.7", url = "dubbo://127.0.0.1:12345", application = "dubbo-annotation-consumer")
@Reference(version = "2.5.7", url = "dubbo://127.0.0.1:12345", application = "dubbo-annotation-test")
private DemoService demoServiceFromChild;
public DemoService getDemoServiceFromChild() {

View File

@ -20,6 +20,7 @@ import org.apache.dubbo.config.ApplicationConfig;
import org.apache.dubbo.config.ProtocolConfig;
import org.apache.dubbo.config.RegistryConfig;
import org.apache.dubbo.config.spring.context.annotation.DubboComponentScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Primary;
import org.springframework.context.annotation.PropertySource;
@ -42,10 +43,10 @@ public class ProviderConfiguration {
*
* @return {@link ApplicationConfig} Bean
*/
@Bean("dubbo-annotation-provider")
@Bean("dubbo-annotation-test")
public ApplicationConfig applicationConfig() {
ApplicationConfig applicationConfig = new ApplicationConfig();
applicationConfig.setName("dubbo-annotation-provider");
applicationConfig.setName("dubbo-annotation-test");
return applicationConfig;
}

View File

@ -21,10 +21,14 @@ import org.apache.dubbo.config.ModuleConfig;
import org.apache.dubbo.config.MonitorConfig;
import org.apache.dubbo.config.ProtocolConfig;
import org.apache.dubbo.config.ProviderConfig;
import org.apache.dubbo.config.context.ConfigManager;
import org.apache.dubbo.config.spring.ConfigTest;
import org.apache.dubbo.config.spring.ServiceBean;
import org.apache.dubbo.config.spring.api.DemoService;
import org.apache.dubbo.config.spring.impl.DemoServiceImpl;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.springframework.beans.factory.BeanCreationException;
import org.springframework.context.support.ClassPathXmlApplicationContext;
@ -37,6 +41,16 @@ import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;
public class DubboNamespaceHandlerTest {
@Before
public void setUp() {
ConfigManager.getInstance().clear();
}
@After
public void tearDown() {
ConfigManager.getInstance().clear();
}
@Test
public void testProviderXml() {
ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext(ConfigTest.class.getPackage().getName().replace('.', '/') + "/demo-provider.xml");

View File

@ -1,4 +1,4 @@
demo.service.version = 2.5.7
demo.service.application = dubbo-annotation-provider
demo.service.application = dubbo-annotation-test
demo.service.protocol = dubbo
demo.service.registry = my-registry

View File

@ -1,12 +1,12 @@
# Dubbo Consumer Properties as an alternative for
# Spring XML Bean definition : META-INF/spring/dubbo-annotation-consumer.xml
demo.service.application = dubbo-annotation-consumer
demo.service.application = dubbo-annotation-test
demo.service.registry = my-registry
## Dubbo configs binding properties
### <dubbo:application name="dubbo-annotation-consumer"/>
dubbo.applications.dubbo-annotation-consumer.name = Dubbo Consumer
dubbo.applications.dubbo-annotation-consumer2.name = dubbo-consumer2
# In this UT, the provider will be responsible of loading ApplicationConfig.
dubbo.applications.dubbo-annotation-consumer.name = dubbo-annotation-test
### <dubbo:registry id="my-registry" address="N/A"/>
dubbo.registries.my-registry.address = N/A

View File

@ -3,7 +3,7 @@
## Service Providers' Placeholders for org.apache.dubbo.config.spring.context.annotation.provider.DemoServiceImpl
demo.service.application = dubbo-annotation-provider
demo.service.application = dubbo-annotation-test
demo.service.protocol = dubbo
demo.service.registry = my-registry
@ -11,8 +11,8 @@ demo.service.registry = my-registry
## Dubbo configs binding properties
### <dubbo:application name="dubbo-annotation-provider"/>
dubbo.application.id = dubbo-annotation-provider
dubbo.application.name = Dubbo Provider
dubbo.application.id = dubbo-annotation-test
dubbo.application.name = dubbo-annotation-test
### <dubbo:registry id="my-registry" address="N/A"/>
dubbo.registry.id = my-registry

View File

@ -22,7 +22,7 @@
http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
<!-- 当前应用信息配置 -->
<dubbo:application name="dubbo-annotation-consumer"/>
<dubbo:application name="dubbo-annotation-test"/>
<!-- 连接注册中心配置 -->
<dubbo:registry address="N/A"/>

View File

@ -22,7 +22,7 @@
">
<!-- 当前应用信息配置 -->
<dubbo:application name="dubbo-annotation-provider"/>
<dubbo:application name="dubbo-annotation-test"/>
<!-- 连接注册中心配置 -->
<dubbo:registry id="my-registry" address="N/A"/>

View File

@ -22,7 +22,7 @@
http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
<!-- 当前应用信息配置 -->
<dubbo:application name="dubbo-consumer"/>
<dubbo:application name="dubbo-spring-test"/>
<!-- 连接注册中心配置 -->
<dubbo:registry address="N/A"/>

View File

@ -22,7 +22,7 @@
">
<!-- 当前应用信息配置 -->
<dubbo:application name="dubbo-provider"/>
<dubbo:application name="dubbo-spring-test"/>
<!-- 连接注册中心配置 -->
<dubbo:registry address="N/A"/>