Class ChangeStreamDocument<TDocument>
- java.lang.Object
-
- com.mongodb.client.model.changestream.ChangeStreamDocument<TDocument>
-
- Type Parameters:
TDocument
- The type that this collection will encode thefullDocument
field into.
public final class ChangeStreamDocument<TDocument> extends Object
Represents the$changeStream
aggregation 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 typeboolean
equals(Object o)
BsonTimestamp
getClusterTime()
Gets the cluster time at which the change occurred.String
getDatabaseName()
Returns the database nameBsonDocument
getDocumentKey()
Returns a document containing just the _id of the changed document.TDocument
getFullDocument()
Returns the fullDocumentMongoNamespace
getNamespace()
Returns the namespace The invalidate operation type does include a MongoNamespace in the ChangeStreamDocument response.BsonDocument
getNamespaceDocument()
Returns the namespaceDocument The namespaceDocument is a BsonDocument containing the values associated with a MongoNamespace.OperationType
getOperationType()
Returns the operationTypeBsonDocument
getResumeToken()
Returns the resumeTokenUpdateDescription
getUpdateDescription()
Returns the updateDescriptionint
hashCode()
String
toString()
-
-
-
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
-
-