Class ChangeStreamDocument<TDocument>
- java.lang.Object
-
- com.mongodb.client.model.changestream.ChangeStreamDocument<TDocument>
-
- Type Parameters:
TDocument- The type that this collection will encode thefullDocumentfield into.
public final class ChangeStreamDocument<TDocument> extends Object
Represents the$changeStreamaggregation output document.Note: this class will not be applicable for all change stream outputs. If using custom pipelines that radically change the change stream result, then an alternative document format should be used.
- Since:
- 3.6
-
-
Constructor Summary
Constructors Constructor Description ChangeStreamDocument(BsonDocument resumeToken, MongoNamespace namespace, TDocument fullDocument, BsonDocument documentKey, OperationType operationType, UpdateDescription updateDescription)ChangeStreamDocument(BsonDocument resumeToken, MongoNamespace namespace, TDocument fullDocument, BsonDocument documentKey, BsonTimestamp clusterTime, OperationType operationType, UpdateDescription updateDescription)Deprecated.ChangeStreamDocument(BsonDocument resumeToken, BsonDocument namespaceDocument, TDocument fullDocument, BsonDocument documentKey, BsonTimestamp clusterTime, OperationType operationType, UpdateDescription updateDescription)Creates a new instance
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static <TFullDocument>
Codec<ChangeStreamDocument<TFullDocument>>createCodec(Class<TFullDocument> fullDocumentClass, CodecRegistry codecRegistry)Creates the codec for the specific ChangeStreamOutput typebooleanequals(Object o)BsonTimestampgetClusterTime()Gets the cluster time at which the change occurred.StringgetDatabaseName()Returns the database nameBsonDocumentgetDocumentKey()Returns a document containing just the _id of the changed document.TDocumentgetFullDocument()Returns the fullDocumentMongoNamespacegetNamespace()Returns the namespace The invalidate operation type does include a MongoNamespace in the ChangeStreamDocument response.BsonDocumentgetNamespaceDocument()Returns the namespaceDocument The namespaceDocument is a BsonDocument containing the values associated with a MongoNamespace.OperationTypegetOperationType()Returns the operationTypeBsonDocumentgetResumeToken()Returns the resumeTokenUpdateDescriptiongetUpdateDescription()Returns the updateDescriptioninthashCode()StringtoString()
-
-
-
Constructor Detail
-
ChangeStreamDocument
@Deprecated public ChangeStreamDocument(BsonDocument resumeToken, MongoNamespace namespace, TDocument fullDocument, BsonDocument documentKey, OperationType operationType, UpdateDescription updateDescription)
Deprecated. PreferChangeStreamDocument(BsonDocument, MongoNamespace, Object, BsonDocument, BsonTimestamp, OperationType, UpdateDescription)Creates a new instance- Parameters:
resumeToken- the resume tokennamespace- the namespacedocumentKey- a document containing the _id of the changed documentfullDocument- the fullDocumentoperationType- the operation typeupdateDescription- the update description
-
ChangeStreamDocument
@Deprecated public ChangeStreamDocument(BsonDocument resumeToken, MongoNamespace namespace, TDocument fullDocument, BsonDocument documentKey, @Nullable BsonTimestamp clusterTime, OperationType operationType, UpdateDescription updateDescription)
Deprecated.Creates a new instance- Parameters:
resumeToken- the resume tokennamespace- the namespacedocumentKey- a document containing the _id of the changed documentclusterTime- the cluster time at which the change occurredfullDocument- the fullDocumentoperationType- the operation typeupdateDescription- the update description
-
ChangeStreamDocument
public ChangeStreamDocument(@BsonProperty("resumeToken") BsonDocument resumeToken, @BsonProperty("ns") BsonDocument namespaceDocument, @BsonProperty("fullDocument") TDocument fullDocument, @BsonProperty("documentKey") BsonDocument documentKey, @Nullable @BsonProperty("clusterTime") BsonTimestamp clusterTime, @BsonProperty("operationType") OperationType operationType, @BsonProperty("updateDescription") UpdateDescription updateDescription)
Creates a new instance- Parameters:
resumeToken- the resume tokennamespaceDocument- the BsonDocument representing the namespacefullDocument- the full documentdocumentKey- a document containing the _id of the changed documentclusterTime- the cluster time at which the change occuredoperationType- the operation typeupdateDescription- the update description- Since:
- 3.8
-
-
Method Detail
-
getResumeToken
public BsonDocument getResumeToken()
Returns the resumeToken- Returns:
- the resumeToken
-
getNamespace
@BsonIgnore @Nullable public MongoNamespace getNamespace()
Returns the namespace The invalidate operation type does include a MongoNamespace in the ChangeStreamDocument response. The dropDatabase operation type includes a MongoNamespace, but does not include a collection name as part of the namespace.- Returns:
- the namespace. If the namespaceDocument is null or if it is missing either the 'db' or 'coll' keys, then this will return null.
-
getNamespaceDocument
@BsonProperty("ns") public BsonDocument getNamespaceDocument()
Returns the namespaceDocument The namespaceDocument is a BsonDocument containing the values associated with a MongoNamespace. The 'db' key refers to the database name and the 'coll' key refers to the collection name.- Returns:
- the namespaceDocument
- Since:
- 3.8
-
getDatabaseName
@BsonIgnore @Nullable public String getDatabaseName()
Returns the database name- Returns:
- the databaseName. If the namespaceDocument is null or if it is missing the 'db' key, then this will return null.
- Since:
- 3.8
-
getFullDocument
@Nullable public TDocument getFullDocument()
Returns the fullDocument- Returns:
- the fullDocument
-
getDocumentKey
public BsonDocument getDocumentKey()
Returns a document containing just the _id of the changed document.For unsharded collections this contains a single field, _id, with the value of the _id of the document updated. For sharded collections, this will contain all the components of the shard key in order, followed by the _id if the _id isn’t part of the shard key.
- Returns:
- the document key
-
getClusterTime
@Nullable public BsonTimestamp getClusterTime()
Gets the cluster time at which the change occurred.- Returns:
- the cluster time at which the change occurred
- Since:
- 3.8
- Since server release
- 4.0
-
getOperationType
public OperationType getOperationType()
Returns the operationType- Returns:
- the operationType
-
getUpdateDescription
public UpdateDescription getUpdateDescription()
Returns the updateDescription- Returns:
- the updateDescription
-
createCodec
public static <TFullDocument> Codec<ChangeStreamDocument<TFullDocument>> createCodec(Class<TFullDocument> fullDocumentClass, CodecRegistry codecRegistry)
Creates the codec for the specific ChangeStreamOutput type- Type Parameters:
TFullDocument- the fullDocument type- Parameters:
fullDocumentClass- the class to use to represent the fullDocumentcodecRegistry- the codec registry- Returns:
- the codec
-
-