GitHub user gilfernandes opened a pull request:

    https://github.com/apache/camel/pull/1384

    Added support for oplog tracking and support for different tracking 
strategies

    This pull request adds an MongoDBTailTrackingStrategy interface which 
allows to flexibly extend the way the tracking field data is extracted.
    We introduced this change so that we can perform oplog tracking which uses 
as id a MongoDB Timestamp object. The current implementation did not allow to 
track using this specific data type. The oplog table can be used to implement 
database like triggers in MongoDB.
    With this patch you can track the oplog table and implement routes that act 
as triggers on MongoDB tables.
    I am a beginner with little experience in Mongo and Camel, so it might well 
be that I did something wrong. Please let me know your thoughts on this 
implementation.
    
    We have used this component in order to create a Talend ESB component which 
listens to oplog events.
    
    
![tail_tracking_component](https://cloud.githubusercontent.com/assets/442931/21730160/595543a6-d446-11e6-8719-eaf2fa9a1440.png)


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/gilfernandes/camel master

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/camel/pull/1384.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1384
    
----
commit 67b30e9cdb7982f0238f4408a96b4a09d5ff0d13
Author: gilfernandes <[email protected]>
Date:   2017-01-06T19:18:28Z

    Added support for oplog tracking. At the same time added interface for 
extending the strategy of extraction of the tailTrackingIncreasingField and 
creation of the cursor used to track the tail or a collection.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to