summaryrefslogtreecommitdiffstats
path: root/vespaclient-core/src/main/java/com/yahoo/feedapi/SendSession.java
diff options
context:
space:
mode:
Diffstat (limited to 'vespaclient-core/src/main/java/com/yahoo/feedapi/SendSession.java')
-rwxr-xr-xvespaclient-core/src/main/java/com/yahoo/feedapi/SendSession.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/vespaclient-core/src/main/java/com/yahoo/feedapi/SendSession.java b/vespaclient-core/src/main/java/com/yahoo/feedapi/SendSession.java
new file mode 100755
index 00000000000..dc2294832b1
--- /dev/null
+++ b/vespaclient-core/src/main/java/com/yahoo/feedapi/SendSession.java
@@ -0,0 +1,21 @@
+// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+package com.yahoo.feedapi;
+
+import com.yahoo.messagebus.Message;
+import com.yahoo.messagebus.Result;
+
+/**
+ * Wrapper class to send Messages. Used instead of using a MessageBus session directly
+ * so that unit tests can be more easily made.
+ */
+public abstract class SendSession {
+
+ protected abstract Result onSend(Message m, boolean blockIfQueueIsFull) throws InterruptedException;
+
+ public Result send(Message m, boolean blockIfQueueIsFull) throws InterruptedException {
+ return onSend(m, blockIfQueueIsFull);
+ }
+
+ public abstract void close();
+
+}