Class MongoFilterSpecification.MongoBsonFilterSpecification
java.lang.Object
org.occurrent.subscription.mongodb.MongoFilterSpecification
org.occurrent.subscription.mongodb.MongoFilterSpecification.MongoBsonFilterSpecification
- All Implemented Interfaces:
SubscriptionFilter
- Enclosing class:
- MongoFilterSpecification
public static class MongoFilterSpecification.MongoBsonFilterSpecification
extends MongoFilterSpecification
Use e.g.
Filters to create a bson filter. Note that MongoDB wraps the cloud event in a document called "fullDocument"
so you need to take this into account when creating custom filters. Note also that each filter entry must be a valid
aggregation stage.
For more simple filters use the predefined filter methods such as id(BiFunction, String) and type(BiFunction, String).
Examples:
filter().type(Filters::eq, "12345").and().data("someInt", Filters::lt, 3))
which can be written like this if created manually:
filter(match(eq("fullDocument.id", "12345")), matches(lt("fullDocument.data.someInt", 3)))))
-
Nested Class Summary
Nested classes/interfaces inherited from class org.occurrent.subscription.mongodb.MongoFilterSpecification
MongoFilterSpecification.MongoBsonFilterSpecification, MongoFilterSpecification.MongoJsonFilterSpecification -
Field Summary
Fields inherited from class org.occurrent.subscription.mongodb.MongoFilterSpecification
FULL_DOCUMENT -
Constructor Summary
ConstructorsConstructorDescriptionMongoBsonFilterSpecification(org.bson.conversions.Bson firstAggregationStage, org.bson.conversions.Bson... additionalStages) -
Method Summary
Modifier and TypeMethodDescriptionand()dataContentType(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) dataSchema(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) extension(BiFunction<String, String, org.bson.conversions.Bson> filter, String propertyName, String value) filter()filter(org.bson.conversions.Bson firstAggregationStage, org.bson.conversions.Bson... additionalStages) org.bson.conversions.Bson[]id(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) occurrentStreamId(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) source(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) specVersion(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) subject(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) time(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) type(BiFunction<String, String, org.bson.conversions.Bson> filter, String value)
-
Constructor Details
-
MongoBsonFilterSpecification
public MongoBsonFilterSpecification(org.bson.conversions.Bson firstAggregationStage, org.bson.conversions.Bson... additionalStages)
-
-
Method Details
-
filter
public static MongoFilterSpecification.MongoBsonFilterSpecification filter(org.bson.conversions.Bson firstAggregationStage, org.bson.conversions.Bson... additionalStages) -
filter
-
and
-
id
public MongoFilterSpecification.MongoBsonFilterSpecification id(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) -
type
public MongoFilterSpecification.MongoBsonFilterSpecification type(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) -
source
public MongoFilterSpecification.MongoBsonFilterSpecification source(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) -
subject
public MongoFilterSpecification.MongoBsonFilterSpecification subject(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) -
dataSchema
public MongoFilterSpecification.MongoBsonFilterSpecification dataSchema(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) -
specVersion
public MongoFilterSpecification.MongoBsonFilterSpecification specVersion(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) -
dataContentType
public MongoFilterSpecification.MongoBsonFilterSpecification dataContentType(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) -
time
public MongoFilterSpecification.MongoBsonFilterSpecification time(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) -
occurrentStreamId
public MongoFilterSpecification.MongoBsonFilterSpecification occurrentStreamId(BiFunction<String, String, org.bson.conversions.Bson> filter, String value) -
extension
public MongoFilterSpecification.MongoBsonFilterSpecification extension(BiFunction<String, String, org.bson.conversions.Bson> filter, String propertyName, String value) -
data
public MongoFilterSpecification.MongoBsonFilterSpecification data(BiFunction<String, String, org.bson.conversions.Bson> filter, String propertyName, String value) -
getAggregationStages
public org.bson.conversions.Bson[] getAggregationStages()
-