Class MongoDbStoringMessageHandler
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.handler.MessageHandlerSupport
org.springframework.integration.handler.AbstractMessageHandler
org.springframework.integration.mongodb.outbound.MongoDbStoringMessageHandler
- All Implemented Interfaces:
org.reactivestreams.Subscriber<org.springframework.messaging.Message<?>>,org.springframework.beans.factory.Aware,org.springframework.beans.factory.BeanFactoryAware,org.springframework.beans.factory.BeanNameAware,org.springframework.beans.factory.DisposableBean,org.springframework.beans.factory.InitializingBean,org.springframework.context.ApplicationContextAware,org.springframework.core.Ordered,org.springframework.integration.context.ExpressionCapable,org.springframework.integration.context.Orderable,org.springframework.integration.IntegrationPattern,org.springframework.integration.support.context.NamedComponent,org.springframework.integration.support.management.IntegrationManagement,org.springframework.integration.support.management.TrackableComponent,org.springframework.messaging.MessageHandler,reactor.core.CoreSubscriber<org.springframework.messaging.Message<?>>
public class MongoDbStoringMessageHandler
extends org.springframework.integration.handler.AbstractMessageHandler
Implementation of
MessageHandler
which writes Message payload into a MongoDb collection
identified by evaluation of the collectionNameExpression.- Since:
- 2.2
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.springframework.integration.support.management.IntegrationManagement
org.springframework.integration.support.management.IntegrationManagement.ManagementOverrides -
Field Summary
Fields inherited from class org.springframework.integration.context.IntegrationObjectSupport
EXPRESSION_PARSER, loggerFields inherited from interface org.springframework.integration.support.management.IntegrationManagement
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAMEFields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE -
Constructor Summary
ConstructorsConstructorDescriptionMongoDbStoringMessageHandler(org.springframework.data.mongodb.core.MongoOperations mongoTemplate) Will construct this instance using fully created and initialized instance of providedMongoOperations.MongoDbStoringMessageHandler(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory) Will construct this instance using providedMongoDatabaseFactory. -
Method Summary
Modifier and TypeMethodDescriptionprotected voidhandleMessageInternal(org.springframework.messaging.Message<?> message) protected voidonInit()voidsetCollectionNameExpression(org.springframework.expression.Expression collectionNameExpression) Set the SpELExpressionthat should resolve to a collection name used byMongoOperationsto store datavoidsetMongoConverter(org.springframework.data.mongodb.core.convert.MongoConverter mongoConverter) Allow providing customMongoConverterused to assist in serialization of data written to MongoDb.Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler
handleMessage, onComplete, onError, onNext, onSubscribe, setObservationConventionMethods inherited from class org.springframework.integration.handler.MessageHandlerSupport
buildSendTimer, destroy, getIntegrationPatternType, getManagedName, getManagedType, getMetricsCaptor, getObservationRegistry, getOrder, getOverrides, isLoggingEnabled, registerMetricsCaptor, registerObservationRegistry, sendTimer, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, shouldTrackMethods inherited from class org.springframework.integration.context.IntegrationObjectSupport
afterPropertiesSet, 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, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface reactor.core.CoreSubscriber
currentContextMethods inherited from interface org.springframework.integration.support.management.IntegrationManagement
getThisAsMethods inherited from interface org.springframework.integration.support.context.NamedComponent
getBeanName, getComponentName
-
Constructor Details
-
MongoDbStoringMessageHandler
public MongoDbStoringMessageHandler(org.springframework.data.mongodb.MongoDatabaseFactory mongoDbFactory) Will construct this instance using providedMongoDatabaseFactory.- Parameters:
mongoDbFactory- The mongodb factory.
-
MongoDbStoringMessageHandler
public MongoDbStoringMessageHandler(org.springframework.data.mongodb.core.MongoOperations mongoTemplate) Will construct this instance using fully created and initialized instance of providedMongoOperations.- Parameters:
mongoTemplate- The MongoOperations implementation.
-
-
Method Details
-
setMongoConverter
public void setMongoConverter(org.springframework.data.mongodb.core.convert.MongoConverter mongoConverter) Allow providing customMongoConverterused to assist in serialization of data written to MongoDb. Only allowed if this instance was constructed with aMongoDatabaseFactory.- Parameters:
mongoConverter- The mongo converter.
-
setCollectionNameExpression
public void setCollectionNameExpression(org.springframework.expression.Expression collectionNameExpression) Set the SpELExpressionthat should resolve to a collection name used byMongoOperationsto store data- Parameters:
collectionNameExpression- The collection name expression.
-
getComponentType
- Specified by:
getComponentTypein interfaceorg.springframework.integration.support.context.NamedComponent- Overrides:
getComponentTypein classorg.springframework.integration.handler.MessageHandlerSupport
-
onInit
protected void onInit()- Overrides:
onInitin classorg.springframework.integration.context.IntegrationObjectSupport
-
handleMessageInternal
protected void handleMessageInternal(org.springframework.messaging.Message<?> message) - Specified by:
handleMessageInternalin classorg.springframework.integration.handler.AbstractMessageHandler
-