Module spring.data.mongodb
Class TailableCursorRequest<T>
java.lang.Object
org.springframework.data.mongodb.core.messaging.TailableCursorRequest<T>
- All Implemented Interfaces:
SubscriptionRequest<org.bson.Document,T, SubscriptionRequest.RequestOptions>
public class TailableCursorRequest<T>
extends Object
implements SubscriptionRequest<org.bson.Document,T,SubscriptionRequest.RequestOptions>
SubscriptionRequest implementation to be used to listen to query results in a
Capped Collection using a
Tailable Cursor.
The most trivial use case is subscribing to all events of a specific
collection.
TailableCursorRequest<Document> request = new TailableCursorRequest<>(System.out::println, () -> "collection-name");
TailableCursorRequest.TailableCursorRequestBuilder offers a fluent API for creating TailableCursorRequest with
TailableCursorRequest.TailableCursorRequestOptions in one go.
TailableCursorRequest<Document> request = TailableCursorRequest.builder()
.collection("collection-name")
.publishTo(System.out::println)
.build();
- Since:
- 2.1
- Author:
- Christoph Strobl, Mark Paluch
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classBuilder for creatingTailableCursorRequest.static classSubscriptionRequest.RequestOptionsimplementation specific to aTailableCursorRequest.Nested classes/interfaces inherited from interface org.springframework.data.mongodb.core.messaging.SubscriptionRequest
SubscriptionRequest.RequestOptions -
Constructor Summary
ConstructorsConstructorDescriptionTailableCursorRequest(MessageListener<org.bson.Document, ? super T> messageListener, SubscriptionRequest.RequestOptions options) -
Method Summary
Modifier and TypeMethodDescriptionbuilder()Obtain a shiny newTailableCursorRequest.TailableCursorRequestBuilderand start defining options in this fancy fluent way.static <T> TailableCursorRequest.TailableCursorRequestBuilder<T>builder(MessageListener<org.bson.Document, ? super T> listener) Obtain a shiny newTailableCursorRequest.TailableCursorRequestBuilderand start defining options in this fancy fluent way.MessageListener<org.bson.Document,? super T> Obtain theMessageListenerto publishmessagesto.Get theSubscriptionRequest.RequestOptionsspecifying the requests behaviour.
-
Constructor Details
-
TailableCursorRequest
public TailableCursorRequest(MessageListener<org.bson.Document, ? super T> messageListener, SubscriptionRequest.RequestOptions options) - Parameters:
messageListener- must not be null.options- must not be null.
-
-
Method Details
-
getMessageListener
Description copied from interface:SubscriptionRequestObtain theMessageListenerto publishmessagesto.- Specified by:
getMessageListenerin interfaceSubscriptionRequest<org.bson.Document,T, SubscriptionRequest.RequestOptions> - Returns:
- never null.
-
getRequestOptions
Description copied from interface:SubscriptionRequestGet theSubscriptionRequest.RequestOptionsspecifying the requests behaviour.- Specified by:
getRequestOptionsin interfaceSubscriptionRequest<org.bson.Document,T, SubscriptionRequest.RequestOptions> - Returns:
- never null.
-
builder
Obtain a shiny newTailableCursorRequest.TailableCursorRequestBuilderand start defining options in this fancy fluent way. Just don't forget to callbuild()when done.- Returns:
- new instance of
TailableCursorRequest.TailableCursorRequestBuilder.
-
builder
public static <T> TailableCursorRequest.TailableCursorRequestBuilder<T> builder(MessageListener<org.bson.Document, ? super T> listener) Obtain a shiny newTailableCursorRequest.TailableCursorRequestBuilderand start defining options in this fancy fluent way. Just don't forget to callbuild()when done.- Returns:
- new instance of
TailableCursorRequest.TailableCursorRequestBuilder.
-