From a500786ddb647d53cbefc1496ddddb9e34bf4b1b Mon Sep 17 00:00:00 2001 From: Arne Juul Date: Thu, 29 Nov 2018 12:30:53 +0000 Subject: provide defaults, making it easier to mock up an implementation --- .../java/com/yahoo/documentapi/AsyncSession.java | 20 +++++++++++++++----- .../main/java/com/yahoo/documentapi/SyncSession.java | 4 +++- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/documentapi/src/main/java/com/yahoo/documentapi/AsyncSession.java b/documentapi/src/main/java/com/yahoo/documentapi/AsyncSession.java index ae1f80d8b06..c9db5223283 100644 --- a/documentapi/src/main/java/com/yahoo/documentapi/AsyncSession.java +++ b/documentapi/src/main/java/com/yahoo/documentapi/AsyncSession.java @@ -43,7 +43,9 @@ public interface AsyncSession extends Session { * @param document the Document to put * @return the synchronous result of this operation */ - Result put(Document document, DocumentProtocol.Priority priority); + default Result put(Document document, DocumentProtocol.Priority priority) { + return put(document); + } /** *

Gets a document. This method returns immediately.

@@ -74,7 +76,9 @@ public interface AsyncSession extends Session { * @deprecated the 'headersonly' flag has no effect */ @Deprecated // TODO: Remove on Vespa 8 - Result get(DocumentId id, boolean headersOnly, DocumentProtocol.Priority priority); + default Result get(DocumentId id, boolean headersOnly, DocumentProtocol.Priority priority) { + return get(id); + } /** *

Gets a document. This method returns immediately.

@@ -89,7 +93,9 @@ public interface AsyncSession extends Session { * @return the synchronous result of this operation * @throws UnsupportedOperationException if this access implementation does not support retrieving */ - Result get(DocumentId id, DocumentProtocol.Priority priority); + default Result get(DocumentId id, DocumentProtocol.Priority priority) { + return get(id); + } /** @@ -119,7 +125,9 @@ public interface AsyncSession extends Session { * @return the synchronous result of this operation * @throws UnsupportedOperationException if this access implementation does not support removal */ - Result remove(DocumentId id, DocumentProtocol.Priority priority); + default Result remove(DocumentId id, DocumentProtocol.Priority priority) { + return remove(id); + } /** *

Updates a document. This method returns immediately.

@@ -148,7 +156,9 @@ public interface AsyncSession extends Session { * @return the synchronous result of this operation * @throws UnsupportedOperationException if this access implementation does not support update */ - Result update(DocumentUpdate update, DocumentProtocol.Priority priority); + default Result update(DocumentUpdate update, DocumentProtocol.Priority priority) { + return update(update); + } /** * Returns the current send window size of the session. diff --git a/documentapi/src/main/java/com/yahoo/documentapi/SyncSession.java b/documentapi/src/main/java/com/yahoo/documentapi/SyncSession.java index a79d49e32cf..c254df3ba02 100755 --- a/documentapi/src/main/java/com/yahoo/documentapi/SyncSession.java +++ b/documentapi/src/main/java/com/yahoo/documentapi/SyncSession.java @@ -34,7 +34,9 @@ public interface SyncSession extends Session { * @param documentPut The DocumentPut operation * @param priority The priority with which to perform this operation. */ - void put(DocumentPut documentPut, DocumentProtocol.Priority priority); + default void put(DocumentPut documentPut, DocumentProtocol.Priority priority) { + put(documentPut); + } /** *

Gets a document.

-- cgit v1.2.3