public class MongoDbChangeStreamMessageProducer
extends org.springframework.integration.endpoint.MessageProducerSupport
MessageProducerSupport for MongoDB Change Stream implementation.
The functionality is based on the
ReactiveMongoOperations.changeStream(String, ChangeStreamOptions, Class)
and MessageProducerSupport.subscribeToPublisher(org.reactivestreams.Publisher) consumption.lifecycleCondition, lifecycleLock| Constructor and Description |
|---|
MongoDbChangeStreamMessageProducer(org.springframework.data.mongodb.core.ReactiveMongoOperations mongoOperations)
Create an instance based on the provided
ReactiveMongoOperations. |
| Modifier and Type | Method and Description |
|---|---|
protected void |
doStart() |
java.lang.String |
getComponentType() |
void |
setCollection(java.lang.String collection)
Specify a collection name to track change events from.
|
void |
setDomainType(java.lang.Class<?> domainType)
Specify an object type to convert an event body to.
|
void |
setExtractBody(boolean extractBody)
Configure this channel adapter to build a
Message to produce
with a payload based on a ChangeStreamEvent.getBody() (by default)
or use a whole ChangeStreamEvent as a payload. |
void |
setOptions(org.springframework.data.mongodb.core.ChangeStreamOptions options)
Specify a
ChangeStreamOptions. |
afterSingletonsInstantiated, buildErrorMessage, doStop, getErrorChannel, getErrorMessageAttributes, getIntegrationPatternType, getMessagingTemplate, getOutputChannel, onInit, sendErrorMessageIfNecessary, sendMessage, setErrorChannel, setErrorChannelName, setErrorMessageStrategy, setOutputChannel, setOutputChannelName, setSendTimeout, setShouldTrack, subscribeToPublisherdestroy, doStop, getPhase, getRole, isActive, isAutoStartup, isRunning, setAutoStartup, setPhase, setRole, start, stop, stopafterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toStringpublic MongoDbChangeStreamMessageProducer(org.springframework.data.mongodb.core.ReactiveMongoOperations mongoOperations)
ReactiveMongoOperations.mongoOperations - the ReactiveMongoOperations to use.ReactiveMongoOperations.changeStream(String, ChangeStreamOptions, Class)public void setDomainType(java.lang.Class<?> domainType)
Document class.domainType - the class for event body conversion.ReactiveMongoOperations.changeStream(String, ChangeStreamOptions, Class)public void setCollection(java.lang.String collection)
mongoOperations configured database.collection - a collection to use.ReactiveMongoOperations.changeStream(String, ChangeStreamOptions, Class)public void setOptions(org.springframework.data.mongodb.core.ChangeStreamOptions options)
ChangeStreamOptions.options - the ChangeStreamOptions to use.ReactiveMongoOperations.changeStream(String, ChangeStreamOptions, Class)public void setExtractBody(boolean extractBody)
Message to produce
with a payload based on a ChangeStreamEvent.getBody() (by default)
or use a whole ChangeStreamEvent as a payload.extractBody - to extract ChangeStreamEvent.getBody() or not.public java.lang.String getComponentType()
getComponentType in interface org.springframework.integration.support.context.NamedComponentgetComponentType in class org.springframework.integration.context.IntegrationObjectSupportprotected void doStart()
doStart in class org.springframework.integration.endpoint.MessageProducerSupport