Package org.reactivecommons.async.rabbit
Class RabbitDirectAsyncGateway
java.lang.Object
org.reactivecommons.async.rabbit.RabbitDirectAsyncGateway
- All Implemented Interfaces:
org.reactivecommons.async.api.DirectAsyncGateway
public class RabbitDirectAsyncGateway
extends Object
implements org.reactivecommons.async.api.DirectAsyncGateway
-
Field Summary
Fields inherited from interface org.reactivecommons.async.api.DirectAsyncGateway
DELAYED -
Constructor Summary
ConstructorsConstructorDescriptionRabbitDirectAsyncGateway(org.reactivecommons.async.commons.config.BrokerConfig config, org.reactivecommons.async.commons.reply.ReactiveReplyRouter router, ReactiveMessageSender sender, String exchange, org.reactivecommons.async.commons.converters.MessageConverter converter, io.micrometer.core.instrument.MeterRegistry meterRegistry) -
Method Summary
Modifier and TypeMethodDescription<T> reactor.core.publisher.Mono<Void>reply(T response, org.reactivecommons.async.api.From from) <R extends io.cloudevents.CloudEvent>
reactor.core.publisher.Mono<R>requestReply(io.cloudevents.CloudEvent query, String targetName, Class<R> type) <R extends io.cloudevents.CloudEvent>
reactor.core.publisher.Mono<R>requestReply(io.cloudevents.CloudEvent query, String targetName, Class<R> type, String domain) <T,R> reactor.core.publisher.Mono<R> requestReply(org.reactivecommons.async.api.AsyncQuery<T> query, String targetName, Class<R> type) <T,R> reactor.core.publisher.Mono<R> requestReply(org.reactivecommons.async.api.AsyncQuery<T> query, String targetName, Class<R> type, String domain) protected ReactiveMessageSenderresolveSender(String domain) reactor.core.publisher.Mono<Void>sendCommand(io.cloudevents.CloudEvent command, String targetName) reactor.core.publisher.Mono<Void>sendCommand(io.cloudevents.CloudEvent command, String targetName, long delayMillis) reactor.core.publisher.Mono<Void>sendCommand(io.cloudevents.CloudEvent command, String targetName, long delayMillis, String domain) reactor.core.publisher.Mono<Void>sendCommand(io.cloudevents.CloudEvent command, String targetName, String domain) <T> reactor.core.publisher.Mono<Void>sendCommand(org.reactivecommons.api.domain.Command<T> command, String targetName) <T> reactor.core.publisher.Mono<Void>sendCommand(org.reactivecommons.api.domain.Command<T> command, String targetName, long delayMillis) <T> reactor.core.publisher.Mono<Void>sendCommand(org.reactivecommons.api.domain.Command<T> command, String targetName, long delayMillis, String domain) <T> reactor.core.publisher.Mono<Void>sendCommand(org.reactivecommons.api.domain.Command<T> command, String targetName, String domain) <T> reactor.core.publisher.Flux<reactor.rabbitmq.OutboundMessageResult>sendCommands(reactor.core.publisher.Flux<org.reactivecommons.api.domain.Command<T>> commands, String targetName)
-
Constructor Details
-
RabbitDirectAsyncGateway
public RabbitDirectAsyncGateway(org.reactivecommons.async.commons.config.BrokerConfig config, org.reactivecommons.async.commons.reply.ReactiveReplyRouter router, ReactiveMessageSender sender, String exchange, org.reactivecommons.async.commons.converters.MessageConverter converter, io.micrometer.core.instrument.MeterRegistry meterRegistry)
-
-
Method Details
-
sendCommand
public <T> reactor.core.publisher.Mono<Void> sendCommand(org.reactivecommons.api.domain.Command<T> command, String targetName) - Specified by:
sendCommandin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
sendCommand
public <T> reactor.core.publisher.Mono<Void> sendCommand(org.reactivecommons.api.domain.Command<T> command, String targetName, long delayMillis) - Specified by:
sendCommandin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
sendCommand
public <T> reactor.core.publisher.Mono<Void> sendCommand(org.reactivecommons.api.domain.Command<T> command, String targetName, String domain) - Specified by:
sendCommandin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
sendCommand
public <T> reactor.core.publisher.Mono<Void> sendCommand(org.reactivecommons.api.domain.Command<T> command, String targetName, long delayMillis, String domain) - Specified by:
sendCommandin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
sendCommand
public reactor.core.publisher.Mono<Void> sendCommand(io.cloudevents.CloudEvent command, String targetName) - Specified by:
sendCommandin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
sendCommand
public reactor.core.publisher.Mono<Void> sendCommand(io.cloudevents.CloudEvent command, String targetName, long delayMillis) - Specified by:
sendCommandin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
sendCommand
public reactor.core.publisher.Mono<Void> sendCommand(io.cloudevents.CloudEvent command, String targetName, String domain) - Specified by:
sendCommandin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
sendCommand
public reactor.core.publisher.Mono<Void> sendCommand(io.cloudevents.CloudEvent command, String targetName, long delayMillis, String domain) - Specified by:
sendCommandin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
sendCommands
public <T> reactor.core.publisher.Flux<reactor.rabbitmq.OutboundMessageResult> sendCommands(reactor.core.publisher.Flux<org.reactivecommons.api.domain.Command<T>> commands, String targetName) -
requestReply
public <T,R> reactor.core.publisher.Mono<R> requestReply(org.reactivecommons.async.api.AsyncQuery<T> query, String targetName, Class<R> type) - Specified by:
requestReplyin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
requestReply
public <T,R> reactor.core.publisher.Mono<R> requestReply(org.reactivecommons.async.api.AsyncQuery<T> query, String targetName, Class<R> type, String domain) - Specified by:
requestReplyin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
requestReply
public <R extends io.cloudevents.CloudEvent> reactor.core.publisher.Mono<R> requestReply(io.cloudevents.CloudEvent query, String targetName, Class<R> type) - Specified by:
requestReplyin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
requestReply
public <R extends io.cloudevents.CloudEvent> reactor.core.publisher.Mono<R> requestReply(io.cloudevents.CloudEvent query, String targetName, Class<R> type, String domain) - Specified by:
requestReplyin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
reply
public <T> reactor.core.publisher.Mono<Void> reply(T response, org.reactivecommons.async.api.From from) - Specified by:
replyin interfaceorg.reactivecommons.async.api.DirectAsyncGateway
-
resolveSender
-