MongoDb からオブジェクトを取得して現在のペイロードに追加し、別のデータベースに保存しようとしています。
@Override
public void configure() throws Exception
{
from(kafkaEndpoint)
.convertBodyTo(DBObject.class)
.enrich("mongodb:mongoDb?database=myDbName1&collection=UserColl&operation=findOneByQuery",
(original, external) -> {
DBObject originalBody = original.getIn().getBody(DBObject.class);
DBObject externalBody = external.getIn().getBody(DBObject.class);
Map<String, DBObject> map = new HashMap<String, DBObject>();
map.put("original", originalBody);
map.put("external", externalBody);
original.getIn().setBody(map);
return original;
})
.to("mongodb:mongoDb?database=myDbName2&collection=UserColl&operation=insert");
}
元のオブジェクトを保持するIn.bodyからクエリをエンリッチする問題...
では、クエリ ( {"entity.id": ""} ) をenrich(mongoldb:...)に渡し、元のオブジェクトを保持して結果とマージするにはどうすればよいですか?
ありがとう。