Package com.mongodb.session
Interface ClientSession
- All Superinterfaces:
AutoCloseable
,Closeable
A client session.
- Since:
- 3.6
- See Also:
- Since server release
- 3.6
-
Method Summary
Modifier and TypeMethodDescriptionvoid
advanceClusterTime
(BsonDocument clusterTime) void
advanceOperationTime
(BsonTimestamp operationTime) Set the operation time of the last operation executed in this session.void
Clears the transaction context.void
close()
Gets the operation time of the last operation executed in this session.Get the options for this session.Gets the originator for the session.Get the server address of the pinned mongos on this session.Get the recovery token from the latest outcome in a sharded transaction.For internal use only.com.mongodb.internal.TimeoutContext
Gets the timeout context to use with this session:MongoClientSettings#getTimeoutMS
ClientSessionOptions#getDefaultTimeout
Gets the transaction context.boolean
Returns true if operations in this session must be causally consistentvoid
setRecoveryToken
(BsonDocument recoveryToken) Set the recovery token.void
setSnapshotTimestamp
(BsonTimestamp snapshotTimestamp) For internal use only.void
setTransactionContext
(ServerAddress address, Object transactionContext) Sets the transaction context.
-
Method Details
-
getPinnedServerAddress
Get the server address of the pinned mongos on this session. For internal use only.- Returns:
- the server address of the pinned mongos
- Since:
- 3.11
- Since server release
- 4.2
-
getTransactionContext
Gets the transaction context.For internal use only
- Returns:
- the transaction context
-
setTransactionContext
Sets the transaction context.For internal use only
Implementations may place additional restrictions on the type of the transaction context
- Parameters:
address
- the server addresstransactionContext
- the transaction context
-
clearTransactionContext
void clearTransactionContext()Clears the transaction context.For internal use only
-
getRecoveryToken
Get the recovery token from the latest outcome in a sharded transaction. For internal use only.- Returns:
- the recovery token
- Since:
- 3.11
- Since server release
- 4.2
-
setRecoveryToken
Set the recovery token. For internal use only.- Parameters:
recoveryToken
- the recovery token- Since:
- 3.11
- Since server release
- 4.2
-
getOptions
ClientSessionOptions getOptions()Get the options for this session.- Returns:
- the options, which may not be null
-
isCausallyConsistent
boolean isCausallyConsistent()Returns true if operations in this session must be causally consistent- Returns:
- whether operations in this session must be causally consistent.
-
getOriginator
Object getOriginator()Gets the originator for the session.Important because sessions must only be used by their own originator.
- Returns:
- the sessions originator
-
getServerSession
ServerSession getServerSession()- Returns:
- the server session
-
getOperationTime
BsonTimestamp getOperationTime()Gets the operation time of the last operation executed in this session.- Returns:
- the operation time
-
advanceOperationTime
Set the operation time of the last operation executed in this session.- Parameters:
operationTime
- the operation time
-
advanceClusterTime
- Parameters:
clusterTime
- the cluster time to advance to
-
setSnapshotTimestamp
For internal use only.- Parameters:
snapshotTimestamp
- the snapshot timestamp
-
getSnapshotTimestamp
For internal use only.- Returns:
- the snapshot timestamp
-
getClusterTime
BsonDocument getClusterTime()- Returns:
- the latest cluster time seen by this session
-
close
void close()- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
-
getTimeoutContext
Gets the timeout context to use with this session:MongoClientSettings#getTimeoutMS
ClientSessionOptions#getDefaultTimeout
For internal use only
- Returns:
- the timeout to use
- Since:
- 5.2
-