this.write(obj, newDocument);
@Override public void write(Object source, Bson target) { Assert.isInstanceOf(MessageWrapper.class, source); asMap(target).put(CREATED_DATE, System.currentTimeMillis()); super.write(source, target); }
@Override public void write(Object source, Bson target) { super.write(source, target); }
this.write(obj, newDocument);
@Override public void write(Object source, Bson target) { Assert.isInstanceOf(MessageWrapper.class, source); asMap(target).put(CREATED_DATE, System.currentTimeMillis()); super.write(source, target); }
@Test @MongoDbAvailable public void validateMessageHandlingWithMongoConverter() throws Exception { MongoDbFactory mongoDbFactory = this.prepareMongoFactory(); MongoDbStoringMessageHandler handler = new MongoDbStoringMessageHandler(mongoDbFactory); handler.setCollectionNameExpression(new LiteralExpression("foo")); MappingMongoConverter converter = new TestMongoConverter(mongoDbFactory, new MongoMappingContext()); converter.afterPropertiesSet(); converter = spy(converter); handler.setMongoConverter(converter); handler.setBeanFactory(mock(BeanFactory.class)); handler.afterPropertiesSet(); Message<Person> message = MessageBuilder.withPayload(this.createPerson("Bob")).build(); handler.handleMessage(message); MongoTemplate template = new MongoTemplate(mongoDbFactory); Query query = new BasicQuery("{'name' : 'Bob'}"); Person person = template.findOne(query, Person.class, "foo"); assertEquals("Bob", person.getName()); assertEquals("PA", person.getAddress().getState()); verify(converter, times(1)).write(Mockito.any(), Mockito.any(Bson.class)); }
@Test @MongoDbAvailable public void validateMessageHandlingWithMongoTemplate() throws Exception { MongoDbFactory mongoDbFactory = this.prepareMongoFactory(); MappingMongoConverter converter = new TestMongoConverter(mongoDbFactory, new MongoMappingContext()); converter.afterPropertiesSet(); converter = spy(converter); MongoTemplate template = new MongoTemplate(mongoDbFactory, converter); MongoDbStoringMessageHandler handler = new MongoDbStoringMessageHandler(template); handler.setCollectionNameExpression(new LiteralExpression("foo")); handler.setBeanFactory(mock(BeanFactory.class)); handler.afterPropertiesSet(); Message<Person> message = MessageBuilder.withPayload(this.createPerson("Bob")).build(); handler.handleMessage(message); MongoTemplate readingTemplate = new MongoTemplate(mongoDbFactory); Query query = new BasicQuery("{'name' : 'Bob'}"); Person person = readingTemplate.findOne(query, Person.class, "foo"); assertEquals("Bob", person.getName()); assertEquals("PA", person.getAddress().getState()); verify(converter, times(1)).write(Mockito.any(), Mockito.any(Bson.class)); } }