Package com.yahoo.documentapi
Interface SyncSession
- All Superinterfaces:
Session
- All Known Implementing Classes:
LocalSyncSession,MessageBusSyncSession
A session for synchronous access to a document repository,
provides simple document access where throughput is not a concern.
This is multithread safe.
- Author:
- Simon Thoresen Hult, bjorncs
-
Method Summary
Modifier and TypeMethodDescriptiondefault com.yahoo.document.Documentget(com.yahoo.document.DocumentId id) Gets a document.default com.yahoo.document.Documentget(com.yahoo.document.DocumentId id, DocumentOperationParameters parameters, Duration timeout) Gets a document with timeout.com.yahoo.document.DocumentGets a document with timeout.voidput(com.yahoo.document.DocumentPut documentPut) Puts a document.default voidput(com.yahoo.document.DocumentPut documentPut, DocumentOperationParameters parameters) Puts a document.booleanremove(com.yahoo.document.DocumentRemove documentRemove) Removes a document if it is present and condition is fulfilled.default booleanremove(com.yahoo.document.DocumentRemove documentRemove, DocumentOperationParameters parameters) Removes a document if it is present.booleanupdate(com.yahoo.document.DocumentUpdate update) Updates a document.default booleanupdate(com.yahoo.document.DocumentUpdate update, DocumentOperationParameters parameters) Updates a document.
-
Method Details
-
put
void put(com.yahoo.document.DocumentPut documentPut) Puts a document. When this method returns, the document is safely received. This enables setting condition compared to using Document.- Parameters:
documentPut- the DocumentPut operation
-
put
default void put(com.yahoo.document.DocumentPut documentPut, DocumentOperationParameters parameters) Puts a document. When this method returns, the document is safely received.- Parameters:
documentPut- the DocumentPut operationparameters- parameters for the operation
-
get
default com.yahoo.document.Document get(com.yahoo.document.DocumentId id) Gets a document.- Parameters:
id- the id of the document to get.- Returns:
- the known document having this id, or null if there is no document having this id
- Throws:
UnsupportedOperationException- thrown if this access does not support retrieving
-
get
Gets a document with timeout.- Parameters:
id- the id of the document to gettimeout- timeout. If timeout is null, an unspecified default will be used- Returns:
- the document with this id, or null if there is none
- Throws:
UnsupportedOperationException- thrown if this access does not support retrievingDocumentAccessException- on any messagebus error, including timeout (ErrorCode.TIMEOUT).
-
get
default com.yahoo.document.Document get(com.yahoo.document.DocumentId id, DocumentOperationParameters parameters, Duration timeout) Gets a document with timeout.- Parameters:
id- the id of the document to getparameters- parameters for the operationtimeout- timeout. If timeout is null, an unspecified default will be used- Returns:
- the known document having this id, or null if there is no document having this id
- Throws:
UnsupportedOperationException- thrown if this access does not support retrievingDocumentAccessException- on any messagebus error, including timeout (ErrorCode.TIMEOUT)
-
remove
boolean remove(com.yahoo.document.DocumentRemove documentRemove) Removes a document if it is present and condition is fulfilled.- Parameters:
documentRemove- document to delete- Returns:
- true if the document with this id was removed, false otherwise
-
remove
default boolean remove(com.yahoo.document.DocumentRemove documentRemove, DocumentOperationParameters parameters) Removes a document if it is present.- Parameters:
documentRemove- document remove operationparameters- parameters for the operation- Returns:
- true if the document with this id was removed, false otherwise.
- Throws:
UnsupportedOperationException- thrown if this access does not support removal
-
update
boolean update(com.yahoo.document.DocumentUpdate update) Updates a document.- Parameters:
update- the updates to perform- Returns:
- false if the updates could not be applied as the document does not exist and
create-if-non-existentis not set. - Throws:
DocumentAccessException- on update error, including but not limited to: 1. timeouts, 2. the document exists but theconditionis not met.
-
update
default boolean update(com.yahoo.document.DocumentUpdate update, DocumentOperationParameters parameters) Updates a document.- Parameters:
update- the updates to perform.parameters- parameters for the operation- Returns:
- false if the updates could not be applied as the document does not exist and
create-if-non-existentis not set. - Throws:
DocumentAccessException- on update error, including but not limited to: 1. timeouts, 2. the document exists but theconditionis not met.
-