This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 1b86ab0  CAMEL-16716: camel-mongodb - Fixed streamFilter option
1b86ab0 is described below

commit 1b86ab00ddd9da4ac63da45157661ed201688b3c
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Sat Jun 12 10:32:36 2021 +0200

    CAMEL-16716: camel-mongodb - Fixed streamFilter option
---
 .../camel/catalog/docs/mongodb-component.adoc      |   7 +-
 .../apache/camel/component/mongodb/mongodb.json    |  14 +-
 .../src/main/docs/mongodb-component.adoc           |   7 +-
 .../mongodb/MongoDbChangeStreamsConsumer.java      |   5 +-
 .../camel/component/mongodb/MongoDbEndpoint.java   |  16 +-
 .../MongoDbChangeStreamsConsumerIT.java            |  11 +-
 .../dsl/MongoDbEndpointBuilderFactory.java         | 279 ---------------------
 .../modules/ROOT/pages/mongodb-component.adoc      |   7 +-
 .../ROOT/pages/camel-3x-upgrade-guide-3_11.adoc    |   4 +
 9 files changed, 32 insertions(+), 318 deletions(-)

diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mongodb-component.adoc
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mongodb-component.adoc
index 2534a98..a58bb0d 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mongodb-component.adoc
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mongodb-component.adoc
@@ -994,18 +994,15 @@ It could be easily specified using XML DSL configuration:
 [source,xml]
 -------------
 <route id="filterConsumer">
-    <from 
uri="mongodb:myDb?consumerType=changeStreams&amp;database=flights&amp;collection=tickets"/>
+    <from 
uri="mongodb:myDb?consumerType=changeStreams&amp;database=flights&amp;collection=tickets&amp;streamFilter={'$match':{'$or':[{'fullDocument.stringValue':
 'specificValue'}]}}"/>
     <to uri="mock:test"/>
-
-    <routeProperty key="streamFilter" 
value="{'$match':{'$or':[{'fullDocument.stringValue': 'specificValue'}]}}"/>
 </route>
 -------------
 
 Java configuration:
 [source,java]
 -------------
-from("mongodb:myDb?consumerType=changeStreams&database=flights&collection=tickets")
-    .routeProperty("streamFilter", 
"{'$match':{'$or':[{'fullDocument.stringValue': 'specificValue'}]}}")
+from("mongodb:myDb?consumerType=changeStreams&database=flights&collection=tickets&streamFilter={'$match':{'$or':[{'fullDocument.stringValue':
 'specificValue'}]}}")
     .to("mock:test");
 
 -------------
diff --git 
a/components/camel-mongodb/src/generated/resources/org/apache/camel/component/mongodb/mongodb.json
 
b/components/camel-mongodb/src/generated/resources/org/apache/camel/component/mongodb/mongodb.json
index 3b7ad38..72d3a24 100644
--- 
a/components/camel-mongodb/src/generated/resources/org/apache/camel/component/mongodb/mongodb.json
+++ 
b/components/camel-mongodb/src/generated/resources/org/apache/camel/component/mongodb/mongodb.json
@@ -47,14 +47,14 @@
     "readPreference": { "kind": "parameter", "displayName": "Read Preference", 
"group": "advanced", "label": "advanced", "required": false, "type": "string", 
"javaType": "java.lang.String", "enum": [ "PRIMARY", "PRIMARY_PREFERRED", 
"SECONDARY", "SECONDARY_PREFERRED", "NEAREST" ], "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": "PRIMARY", "description": 
"Configure how MongoDB clients route read operations to the members of a 
replica set. Possible values are PRIMA [...]
     "writeConcern": { "kind": "parameter", "displayName": "Write Concern", 
"group": "advanced", "label": "advanced", "required": false, "type": "string", 
"javaType": "java.lang.String", "enum": [ "ACKNOWLEDGED", "W1", "W2", "W3", 
"UNACKNOWLEDGED", "JOURNALED", "MAJORITY" ], "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": "ACKNOWLEDGED", "description": 
"Configure the connection bean with the level of acknowledgment requested from 
MongoDB for write operations to a [...]
     "writeResultAsHeader": { "kind": "parameter", "displayName": "Write Result 
As Header", "group": "advanced", "label": "advanced", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "description": "In write 
operations, it determines whether instead of returning WriteResult as the body 
of the OUT message, we transfer the IN message to the OUT and attach the 
WriteResult as a header." },
-    "streamFilter": { "kind": "parameter", "displayName": "Stream Filter", 
"group": "changeStream", "label": "changeStream", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "description": "Filter condition for change streams 
consumer." },
+    "streamFilter": { "kind": "parameter", "displayName": "Stream Filter", 
"group": "changeStream", "label": "consumer,changeStream", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Filter condition for 
change streams consumer." },
     "password": { "kind": "parameter", "displayName": "Password", "group": 
"security", "label": "security", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": true, "description": "User password for mongodb connection" },
     "username": { "kind": "parameter", "displayName": "Username", "group": 
"security", "label": "security", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": true, "description": "Username for mongodb connection" },
-    "persistentId": { "kind": "parameter", "displayName": "Persistent Id", 
"group": "tail", "label": "tail", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "description": "One tail tracking collection can host many 
trackers for several tailable consumers. To keep them separate, each tracker 
should have its own unique persistentId." },
-    "persistentTailTracking": { "kind": "parameter", "displayName": 
"Persistent Tail Tracking", "group": "tail", "label": "tail", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Enable persistent tail tracking, which is a mechanism to keep track of the 
last consumed message across system restarts. The next time the system is up, 
the endpoint will recover the cursor from the point [...]
-    "tailTrackCollection": { "kind": "parameter", "displayName": "Tail Track 
Collection", "group": "tail", "label": "tail", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "description": "Collection where tail tracking 
information will be persisted. If not specified, 
MongoDbTailTrackingConfig#DEFAULT_COLLECTION will be used by default." },
-    "tailTrackDb": { "kind": "parameter", "displayName": "Tail Track Db", 
"group": "tail", "label": "tail", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "description": "Indicates what database the tail tracking 
mechanism will persist to. If not specified, the current database will be 
picked by default. Dynamicity will not be taken into account even if enabled, 
i.e. the tail tracking database will not vary p [...]
-    "tailTrackField": { "kind": "parameter", "displayName": "Tail Track 
Field", "group": "tail", "label": "tail", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "description": "Field where the last tracked value will be 
placed. If not specified, MongoDbTailTrackingConfig#DEFAULT_FIELD will be used 
by default." },
-    "tailTrackIncreasingField": { "kind": "parameter", "displayName": "Tail 
Track Increasing Field", "group": "tail", "label": "tail", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Correlation field in the 
incoming record which is of increasing nature and will be used to position the 
tailing cursor every time it is generated. The cursor will be (re)created with 
a query of type: tailTrackIncre [...]
+    "persistentId": { "kind": "parameter", "displayName": "Persistent Id", 
"group": "tail", "label": "consumer,tail", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "description": "One tail tracking collection can host many 
trackers for several tailable consumers. To keep them separate, each tracker 
should have its own unique persistentId." },
+    "persistentTailTracking": { "kind": "parameter", "displayName": 
"Persistent Tail Tracking", "group": "tail", "label": "consumer,tail", 
"required": false, "type": "boolean", "javaType": "boolean", "deprecated": 
false, "autowired": false, "secret": false, "defaultValue": false, 
"description": "Enable persistent tail tracking, which is a mechanism to keep 
track of the last consumed message across system restarts. The next time the 
system is up, the endpoint will recover the cursor from  [...]
+    "tailTrackCollection": { "kind": "parameter", "displayName": "Tail Track 
Collection", "group": "tail", "label": "consumer,tail", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Collection where tail 
tracking information will be persisted. If not specified, 
MongoDbTailTrackingConfig#DEFAULT_COLLECTION will be used by default." },
+    "tailTrackDb": { "kind": "parameter", "displayName": "Tail Track Db", 
"group": "tail", "label": "consumer,tail", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "description": "Indicates what database the tail tracking 
mechanism will persist to. If not specified, the current database will be 
picked by default. Dynamicity will not be taken into account even if enabled, 
i.e. the tail tracking database will n [...]
+    "tailTrackField": { "kind": "parameter", "displayName": "Tail Track 
Field", "group": "tail", "label": "consumer,tail", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "description": "Field where the last tracked value will 
be placed. If not specified, MongoDbTailTrackingConfig#DEFAULT_FIELD will be 
used by default." },
+    "tailTrackIncreasingField": { "kind": "parameter", "displayName": "Tail 
Track Increasing Field", "group": "tail", "label": "consumer,tail", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Correlation field in the 
incoming record which is of increasing nature and will be used to position the 
tailing cursor every time it is generated. The cursor will be (re)created with 
a query of type: tailT [...]
   }
 }
diff --git a/components/camel-mongodb/src/main/docs/mongodb-component.adoc 
b/components/camel-mongodb/src/main/docs/mongodb-component.adoc
index 2534a98..a58bb0d 100644
--- a/components/camel-mongodb/src/main/docs/mongodb-component.adoc
+++ b/components/camel-mongodb/src/main/docs/mongodb-component.adoc
@@ -994,18 +994,15 @@ It could be easily specified using XML DSL configuration:
 [source,xml]
 -------------
 <route id="filterConsumer">
-    <from 
uri="mongodb:myDb?consumerType=changeStreams&amp;database=flights&amp;collection=tickets"/>
+    <from 
uri="mongodb:myDb?consumerType=changeStreams&amp;database=flights&amp;collection=tickets&amp;streamFilter={'$match':{'$or':[{'fullDocument.stringValue':
 'specificValue'}]}}"/>
     <to uri="mock:test"/>
-
-    <routeProperty key="streamFilter" 
value="{'$match':{'$or':[{'fullDocument.stringValue': 'specificValue'}]}}"/>
 </route>
 -------------
 
 Java configuration:
 [source,java]
 -------------
-from("mongodb:myDb?consumerType=changeStreams&database=flights&collection=tickets")
-    .routeProperty("streamFilter", 
"{'$match':{'$or':[{'fullDocument.stringValue': 'specificValue'}]}}")
+from("mongodb:myDb?consumerType=changeStreams&database=flights&collection=tickets&streamFilter={'$match':{'$or':[{'fullDocument.stringValue':
 'specificValue'}]}}")
     .to("mock:test");
 
 -------------
diff --git 
a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbChangeStreamsConsumer.java
 
b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbChangeStreamsConsumer.java
index 62cf9bb..b76b8ef 100644
--- 
a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbChangeStreamsConsumer.java
+++ 
b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbChangeStreamsConsumer.java
@@ -31,8 +31,6 @@ import static java.util.Collections.singletonList;
  */
 public class MongoDbChangeStreamsConsumer extends DefaultConsumer {
 
-    private static final String STREAM_FILTER_PROPERTY = "streamFilter";
-
     private final MongoDbEndpoint endpoint;
     private ExecutorService executor;
     private MongoDbChangeStreamsThread changeStreamsThread;
@@ -57,7 +55,8 @@ public class MongoDbChangeStreamsConsumer extends 
DefaultConsumer {
     @Override
     protected void doStart() throws Exception {
         super.doStart();
-        String streamFilter = (String) 
getRoute().getProperties().get(STREAM_FILTER_PROPERTY);
+
+        String streamFilter = endpoint.getStreamFilter();
         List<BsonDocument> bsonFilter = null;
         if (ObjectHelper.isNotEmpty(streamFilter)) {
             bsonFilter = singletonList(BsonDocument.parse(streamFilter));
diff --git 
a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbEndpoint.java
 
b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbEndpoint.java
index f895b43..f77f97d 100644
--- 
a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbEndpoint.java
+++ 
b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbEndpoint.java
@@ -101,22 +101,20 @@ public class MongoDbEndpoint extends DefaultEndpoint {
     private String consumerType;
     @UriParam(label = "advanced", defaultValue = "1000", javaType = 
"java.time.Duration")
     private long cursorRegenerationDelay = 1000L;
-    @UriParam(label = "tail")
+    @UriParam(label = "consumer,tail")
     private String tailTrackIncreasingField;
-
-    @UriParam(label = "changeStream")
+    @UriParam(label = "consumer,changeStream")
     private String streamFilter;
-
     // persistent tail tracking
-    @UriParam(label = "tail")
+    @UriParam(label = "consumer,tail")
     private boolean persistentTailTracking;
-    @UriParam(label = "tail")
+    @UriParam(label = "consumer,tail")
     private String persistentId;
-    @UriParam(label = "tail")
+    @UriParam(label = "consumer,tail")
     private String tailTrackDb;
-    @UriParam(label = "tail")
+    @UriParam(label = "consumer,tail")
     private String tailTrackCollection;
-    @UriParam(label = "tail")
+    @UriParam(label = "consumer,tail")
     private String tailTrackField;
     @UriParam(label = "common")
     private MongoDbOutputType outputType;
diff --git 
a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/integration/MongoDbChangeStreamsConsumerIT.java
 
b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/integration/MongoDbChangeStreamsConsumerIT.java
index 905738d..cac6e39 100644
--- 
a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/integration/MongoDbChangeStreamsConsumerIT.java
+++ 
b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/integration/MongoDbChangeStreamsConsumerIT.java
@@ -141,11 +141,12 @@ public class MongoDbChangeStreamsConsumerIT extends 
AbstractMongoDbITSupport {
                         .autoStartup(false)
                         .to("mock:test");
 
-                
from("mongodb:myDb?consumerType=changeStreams&database={{mongodb.testDb}}&collection={{mongodb.testCollection}}")
-                        .routeProperty("streamFilter", 
"{'$match':{'$or':[{'fullDocument.string': 'value2'}]}}")
-                        .id("filterConsumer")
-                        .autoStartup(false)
-                        .to("mock:test");
+                
from("mongodb:myDb?consumerType=changeStreams&database={{mongodb.testDb}}&collection={{mongodb.testCollection}}"
+                     +
+                     "&streamFilter={'$match':{'$or':[{'fullDocument.string': 
'value2'}]}}")
+                             .id("filterConsumer")
+                             .autoStartup(false)
+                             .to("mock:test");
             }
         });
     }
diff --git 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MongoDbEndpointBuilderFactory.java
 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MongoDbEndpointBuilderFactory.java
index 6138d02..1338d99 100644
--- 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MongoDbEndpointBuilderFactory.java
+++ 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MongoDbEndpointBuilderFactory.java
@@ -967,20 +967,6 @@ public interface MongoDbEndpointBuilderFactory {
             return this;
         }
         /**
-         * Filter condition for change streams consumer.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: changeStream
-         * 
-         * @param streamFilter the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointProducerBuilder streamFilter(String 
streamFilter) {
-            doSetProperty("streamFilter", streamFilter);
-            return this;
-        }
-        /**
          * User password for mongodb connection.
          * 
          * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
@@ -1008,132 +994,6 @@ public interface MongoDbEndpointBuilderFactory {
             doSetProperty("username", username);
             return this;
         }
-        /**
-         * One tail tracking collection can host many trackers for several
-         * tailable consumers. To keep them separate, each tracker should have
-         * its own unique persistentId.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: tail
-         * 
-         * @param persistentId the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointProducerBuilder persistentId(String 
persistentId) {
-            doSetProperty("persistentId", persistentId);
-            return this;
-        }
-        /**
-         * Enable persistent tail tracking, which is a mechanism to keep track
-         * of the last consumed message across system restarts. The next time
-         * the system is up, the endpoint will recover the cursor from the 
point
-         * where it last stopped slurping records.
-         * 
-         * The option is a: &lt;code&gt;boolean&lt;/code&gt; type.
-         * 
-         * Default: false
-         * Group: tail
-         * 
-         * @param persistentTailTracking the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointProducerBuilder persistentTailTracking(
-                boolean persistentTailTracking) {
-            doSetProperty("persistentTailTracking", persistentTailTracking);
-            return this;
-        }
-        /**
-         * Enable persistent tail tracking, which is a mechanism to keep track
-         * of the last consumed message across system restarts. The next time
-         * the system is up, the endpoint will recover the cursor from the 
point
-         * where it last stopped slurping records.
-         * 
-         * The option will be converted to a &lt;code&gt;boolean&lt;/code&gt;
-         * type.
-         * 
-         * Default: false
-         * Group: tail
-         * 
-         * @param persistentTailTracking the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointProducerBuilder persistentTailTracking(
-                String persistentTailTracking) {
-            doSetProperty("persistentTailTracking", persistentTailTracking);
-            return this;
-        }
-        /**
-         * Collection where tail tracking information will be persisted. If not
-         * specified, MongoDbTailTrackingConfig#DEFAULT_COLLECTION will be used
-         * by default.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: tail
-         * 
-         * @param tailTrackCollection the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointProducerBuilder tailTrackCollection(
-                String tailTrackCollection) {
-            doSetProperty("tailTrackCollection", tailTrackCollection);
-            return this;
-        }
-        /**
-         * Indicates what database the tail tracking mechanism will persist to.
-         * If not specified, the current database will be picked by default.
-         * Dynamicity will not be taken into account even if enabled, i.e. the
-         * tail tracking database will not vary past endpoint initialisation.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: tail
-         * 
-         * @param tailTrackDb the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointProducerBuilder tailTrackDb(String tailTrackDb) 
{
-            doSetProperty("tailTrackDb", tailTrackDb);
-            return this;
-        }
-        /**
-         * Field where the last tracked value will be placed. If not specified,
-         * MongoDbTailTrackingConfig#DEFAULT_FIELD will be used by default.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: tail
-         * 
-         * @param tailTrackField the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointProducerBuilder tailTrackField(
-                String tailTrackField) {
-            doSetProperty("tailTrackField", tailTrackField);
-            return this;
-        }
-        /**
-         * Correlation field in the incoming record which is of increasing
-         * nature and will be used to position the tailing cursor every time it
-         * is generated. The cursor will be (re)created with a query of type:
-         * tailTrackIncreasingField greater than lastValue (possibly recovered
-         * from persistent tail tracking). Can be of type Integer, Date, 
String,
-         * etc. NOTE: No support for dot notation at the current time, so the
-         * field should be at the top level of the document.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: tail
-         * 
-         * @param tailTrackIncreasingField the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointProducerBuilder tailTrackIncreasingField(
-                String tailTrackIncreasingField) {
-            doSetProperty("tailTrackIncreasingField", 
tailTrackIncreasingField);
-            return this;
-        }
     }
 
     /**
@@ -1510,20 +1370,6 @@ public interface MongoDbEndpointBuilderFactory {
             return this;
         }
         /**
-         * Filter condition for change streams consumer.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: changeStream
-         * 
-         * @param streamFilter the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointBuilder streamFilter(String streamFilter) {
-            doSetProperty("streamFilter", streamFilter);
-            return this;
-        }
-        /**
          * User password for mongodb connection.
          * 
          * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
@@ -1551,131 +1397,6 @@ public interface MongoDbEndpointBuilderFactory {
             doSetProperty("username", username);
             return this;
         }
-        /**
-         * One tail tracking collection can host many trackers for several
-         * tailable consumers. To keep them separate, each tracker should have
-         * its own unique persistentId.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: tail
-         * 
-         * @param persistentId the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointBuilder persistentId(String persistentId) {
-            doSetProperty("persistentId", persistentId);
-            return this;
-        }
-        /**
-         * Enable persistent tail tracking, which is a mechanism to keep track
-         * of the last consumed message across system restarts. The next time
-         * the system is up, the endpoint will recover the cursor from the 
point
-         * where it last stopped slurping records.
-         * 
-         * The option is a: &lt;code&gt;boolean&lt;/code&gt; type.
-         * 
-         * Default: false
-         * Group: tail
-         * 
-         * @param persistentTailTracking the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointBuilder persistentTailTracking(
-                boolean persistentTailTracking) {
-            doSetProperty("persistentTailTracking", persistentTailTracking);
-            return this;
-        }
-        /**
-         * Enable persistent tail tracking, which is a mechanism to keep track
-         * of the last consumed message across system restarts. The next time
-         * the system is up, the endpoint will recover the cursor from the 
point
-         * where it last stopped slurping records.
-         * 
-         * The option will be converted to a &lt;code&gt;boolean&lt;/code&gt;
-         * type.
-         * 
-         * Default: false
-         * Group: tail
-         * 
-         * @param persistentTailTracking the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointBuilder persistentTailTracking(
-                String persistentTailTracking) {
-            doSetProperty("persistentTailTracking", persistentTailTracking);
-            return this;
-        }
-        /**
-         * Collection where tail tracking information will be persisted. If not
-         * specified, MongoDbTailTrackingConfig#DEFAULT_COLLECTION will be used
-         * by default.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: tail
-         * 
-         * @param tailTrackCollection the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointBuilder tailTrackCollection(
-                String tailTrackCollection) {
-            doSetProperty("tailTrackCollection", tailTrackCollection);
-            return this;
-        }
-        /**
-         * Indicates what database the tail tracking mechanism will persist to.
-         * If not specified, the current database will be picked by default.
-         * Dynamicity will not be taken into account even if enabled, i.e. the
-         * tail tracking database will not vary past endpoint initialisation.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: tail
-         * 
-         * @param tailTrackDb the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointBuilder tailTrackDb(String tailTrackDb) {
-            doSetProperty("tailTrackDb", tailTrackDb);
-            return this;
-        }
-        /**
-         * Field where the last tracked value will be placed. If not specified,
-         * MongoDbTailTrackingConfig#DEFAULT_FIELD will be used by default.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: tail
-         * 
-         * @param tailTrackField the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointBuilder tailTrackField(String tailTrackField) {
-            doSetProperty("tailTrackField", tailTrackField);
-            return this;
-        }
-        /**
-         * Correlation field in the incoming record which is of increasing
-         * nature and will be used to position the tailing cursor every time it
-         * is generated. The cursor will be (re)created with a query of type:
-         * tailTrackIncreasingField greater than lastValue (possibly recovered
-         * from persistent tail tracking). Can be of type Integer, Date, 
String,
-         * etc. NOTE: No support for dot notation at the current time, so the
-         * field should be at the top level of the document.
-         * 
-         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
-         * 
-         * Group: tail
-         * 
-         * @param tailTrackIncreasingField the value to set
-         * @return the dsl builder
-         */
-        default MongoDbEndpointBuilder tailTrackIncreasingField(
-                String tailTrackIncreasingField) {
-            doSetProperty("tailTrackIncreasingField", 
tailTrackIncreasingField);
-            return this;
-        }
     }
 
     /**
diff --git a/docs/components/modules/ROOT/pages/mongodb-component.adoc 
b/docs/components/modules/ROOT/pages/mongodb-component.adoc
index 487783b..46e1a81 100644
--- a/docs/components/modules/ROOT/pages/mongodb-component.adoc
+++ b/docs/components/modules/ROOT/pages/mongodb-component.adoc
@@ -996,18 +996,15 @@ It could be easily specified using XML DSL configuration:
 [source,xml]
 -------------
 <route id="filterConsumer">
-    <from 
uri="mongodb:myDb?consumerType=changeStreams&amp;database=flights&amp;collection=tickets"/>
+    <from 
uri="mongodb:myDb?consumerType=changeStreams&amp;database=flights&amp;collection=tickets&amp;streamFilter={'$match':{'$or':[{'fullDocument.stringValue':
 'specificValue'}]}}"/>
     <to uri="mock:test"/>
-
-    <routeProperty key="streamFilter" 
value="{'$match':{'$or':[{'fullDocument.stringValue': 'specificValue'}]}}"/>
 </route>
 -------------
 
 Java configuration:
 [source,java]
 -------------
-from("mongodb:myDb?consumerType=changeStreams&database=flights&collection=tickets")
-    .routeProperty("streamFilter", 
"{'$match':{'$or':[{'fullDocument.stringValue': 'specificValue'}]}}")
+from("mongodb:myDb?consumerType=changeStreams&database=flights&collection=tickets&streamFilter={'$match':{'$or':[{'fullDocument.stringValue':
 'specificValue'}]}}")
     .to("mock:test");
 
 -------------
diff --git 
a/docs/user-manual/modules/ROOT/pages/camel-3x-upgrade-guide-3_11.adoc 
b/docs/user-manual/modules/ROOT/pages/camel-3x-upgrade-guide-3_11.adoc
index bf30a07..7544e8b 100644
--- a/docs/user-manual/modules/ROOT/pages/camel-3x-upgrade-guide-3_11.adoc
+++ b/docs/user-manual/modules/ROOT/pages/camel-3x-upgrade-guide-3_11.adoc
@@ -27,6 +27,10 @@ This is from the `camel-main` module which is for running 
Camel standalone, but
 
 The `camel-apns` component has been removed as the APNS (Apple Push 
Notification Service) online service has been retired y Apple.
 
+=== camel-mongodb
+
+The `streamFilter` option should now be configured as endpoint uri parameter, 
instead of a route property.
+
 === camel-saxon
 
 The camel-saxon component no longer depends on camel-xslt-saxon.

Reply via email to