当前位置: 首页>>代码示例>>Java>>正文


Java BindingService类代码示例

本文整理汇总了Java中org.springframework.cloud.stream.binding.BindingService的典型用法代码示例。如果您正苦于以下问题:Java BindingService类的具体用法?Java BindingService怎么用?Java BindingService使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


BindingService类属于org.springframework.cloud.stream.binding包,在下文中一共展示了BindingService类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testParentConnectionFactoryInheritedByDefaultAndRabbitSettingsPropagated

import org.springframework.cloud.stream.binding.BindingService; //导入依赖的package包/类
@Test
@SuppressWarnings("unchecked")
public void testParentConnectionFactoryInheritedByDefaultAndRabbitSettingsPropagated() {
	context = new SpringApplicationBuilder(SimpleProcessor.class)
			.web(WebApplicationType.NONE)
			.run("--server.port=0",
					"--spring.cloud.stream.rabbit.bindings.input.consumer.transacted=true",
					"--spring.cloud.stream.rabbit.bindings.output.producer.transacted=true");
	BinderFactory binderFactory = context.getBean(BinderFactory.class);
	Binder<?, ?, ?> binder = binderFactory.getBinder(null, MessageChannel.class);
	assertThat(binder).isInstanceOf(RabbitMessageChannelBinder.class);
	BindingService bindingService = context.getBean(BindingService.class);
	DirectFieldAccessor channelBindingServiceAccessor = new DirectFieldAccessor(bindingService);
	Map<String, List<Binding<MessageChannel>>> consumerBindings = (Map<String, List<Binding<MessageChannel>>>) channelBindingServiceAccessor
			.getPropertyValue("consumerBindings");
	Binding<MessageChannel> inputBinding = consumerBindings.get("input").get(0);
	SimpleMessageListenerContainer container = TestUtils.getPropertyValue(inputBinding,
			"lifecycle.messageListenerContainer", SimpleMessageListenerContainer.class);
	assertThat(TestUtils.getPropertyValue(container, "transactional", Boolean.class)).isTrue();
	Map<String, Binding<MessageChannel>> producerBindings = (Map<String, Binding<MessageChannel>>) TestUtils
			.getPropertyValue(bindingService, "producerBindings");
	Binding<MessageChannel> outputBinding = producerBindings.get("output");
	assertThat(TestUtils.getPropertyValue(outputBinding, "lifecycle.amqpTemplate.transactional",
			Boolean.class)).isTrue();
	DirectFieldAccessor binderFieldAccessor = new DirectFieldAccessor(binder);
	ConnectionFactory binderConnectionFactory = (ConnectionFactory) binderFieldAccessor
			.getPropertyValue("connectionFactory");
	assertThat(binderConnectionFactory).isInstanceOf(CachingConnectionFactory.class);
	ConnectionFactory connectionFactory = context.getBean(ConnectionFactory.class);
	assertThat(binderConnectionFactory).isSameAs(connectionFactory);
	CompositeHealthIndicator bindersHealthIndicator = context.getBean("bindersHealthIndicator",
			CompositeHealthIndicator.class);
	DirectFieldAccessor directFieldAccessor = new DirectFieldAccessor(bindersHealthIndicator);
	assertThat(bindersHealthIndicator).isNotNull();
	Map<String, HealthIndicator> healthIndicators = (Map<String, HealthIndicator>) directFieldAccessor
			.getPropertyValue("indicators");
	assertThat(healthIndicators).containsKey("rabbit");
	assertThat(healthIndicators.get("rabbit").health().getStatus()).isEqualTo(Status.UP);
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-stream-binder-rabbit,代码行数:40,代码来源:RabbitBinderModuleTests.java

示例2: bindingService

import org.springframework.cloud.stream.binding.BindingService; //导入依赖的package包/类
@Bean
// This conditional is intentionally not in an autoconfig (usually a bad idea) because
// it is used to detect a BindingService in the parent context (which we know
// already exists).
@ConditionalOnMissingBean
public BindingService bindingService(BindingServiceProperties bindingServiceProperties,
		BinderFactory binderFactory, TaskScheduler taskScheduler) {
	return new BindingService(bindingServiceProperties, binderFactory, taskScheduler);
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-stream,代码行数:10,代码来源:BindingServiceConfiguration.java

示例3: binderAwareChannelResolver

import org.springframework.cloud.stream.binding.BindingService; //导入依赖的package包/类
@SuppressWarnings("rawtypes")
@Bean
public BinderAwareChannelResolver binderAwareChannelResolver(BindingService bindingService,
		AbstractBindingTargetFactory<? extends MessageChannel> bindingTargetFactory,
		DynamicDestinationsBindable dynamicDestinationsBindable,
		@Nullable BinderAwareChannelResolver.NewDestinationBindingCallback callback) {
	return new BinderAwareChannelResolver(bindingService, bindingTargetFactory, dynamicDestinationsBindable,
			callback);
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-stream,代码行数:10,代码来源:BindingServiceConfiguration.java

示例4: propertyPassthrough

import org.springframework.cloud.stream.binding.BindingService; //导入依赖的package包/类
@Test
@SuppressWarnings({ "rawtypes", "unchecked" })
public void propertyPassthrough() {
	Map<String, BindingProperties> bindings = new HashMap<>();
	BindingProperties genericProperties = new BindingProperties();
	genericProperties.setContentType("text/plain");
	bindings.put("foo", genericProperties);
	this.bindingServiceProperties.setBindings(bindings);
	Binder binder = mock(Binder.class);
	Binder binder2 = mock(Binder.class);
	BinderFactory mockBinderFactory = Mockito.mock(BinderFactory.class);
	Binding<MessageChannel> fooBinding = Mockito.mock(Binding.class);
	Binding<MessageChannel> barBinding = Mockito.mock(Binding.class);
	when(binder.bindProducer(
			matches("foo"), any(DirectChannel.class), any(ProducerProperties.class))).thenReturn(fooBinding);
	when(binder2.bindProducer(
			matches("bar"), any(DirectChannel.class), any(ProducerProperties.class))).thenReturn(barBinding);
	when(mockBinderFactory.getBinder(null, DirectChannel.class)).thenReturn(binder);
	when(mockBinderFactory.getBinder("someTransport", DirectChannel.class)).thenReturn(binder2);
	BindingService bindingService = new BindingService(bindingServiceProperties,
			mockBinderFactory);
	BinderAwareChannelResolver resolver = new BinderAwareChannelResolver(bindingService, this.bindingTargetFactory,
			new DynamicDestinationsBindable());
	resolver.setBeanFactory(context.getBeanFactory());
	SubscribableChannel resolved = (SubscribableChannel) resolver.resolveDestination("foo");
	verify(binder).bindProducer(eq("foo"), any(MessageChannel.class), any(ProducerProperties.class));
	assertThat(resolved).isSameAs(context.getBean("foo"));
	this.context.close();
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-stream,代码行数:30,代码来源:BinderAwareChannelResolverTests.java

示例5: outputBindingLifecycle

import org.springframework.cloud.stream.binding.BindingService; //导入依赖的package包/类
@Bean
@DependsOn("bindingService")
public OutputBindingLifecycle outputBindingLifecycle(BindingService bindingService, Map<String, Bindable> bindables) {
	return new OutputBindingLifecycle(bindingService, bindables);
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-stream,代码行数:6,代码来源:BindingServiceConfiguration.java

示例6: inputBindingLifecycle

import org.springframework.cloud.stream.binding.BindingService; //导入依赖的package包/类
@Bean
@DependsOn("bindingService")
public InputBindingLifecycle inputBindingLifecycle(BindingService bindingService, Map<String, Bindable> bindables) {
	return new InputBindingLifecycle(bindingService, bindables);
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-stream,代码行数:6,代码来源:BindingServiceConfiguration.java


注:本文中的org.springframework.cloud.stream.binding.BindingService类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。