Class ResponseWorker
- java.lang.Object
-
- java.lang.Thread
-
- org.ovirt.vdsm.jsonrpc.client.internal.ResponseWorker
-
- All Implemented Interfaces:
java.lang.Runnable
public final class ResponseWorker extends java.lang.Thread
ResponseWorker
is responsible to process responses for all theJsonRpcClient
and it is produced byReactorFactory
.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) class
ResponseWorker.ResponseForkJoinWorkerThread
-
Field Summary
Fields Modifier and Type Field Description private static org.slf4j.Logger
log
private static com.fasterxml.jackson.databind.ObjectMapper
MAPPER
private EventPublisher
publisher
private java.util.concurrent.LinkedBlockingQueue<MessageContext>
queue
private ResponseTracker
tracker
-
Constructor Summary
Constructors Constructor Description ResponseWorker(int parallelism, int eventTimeoutInHours)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
EventPublisher
getPublisher()
private void
processIncomingObject(JsonRpcClient client, com.fasterxml.jackson.databind.JsonNode node)
private void
processNotifications(JsonRpcEvent notification)
JsonRpcClient
register(ReactorClient client)
Registers new client withResponseWorker
.void
run()
-
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield
-
-
-
-
Field Detail
-
queue
private final java.util.concurrent.LinkedBlockingQueue<MessageContext> queue
-
MAPPER
private static final com.fasterxml.jackson.databind.ObjectMapper MAPPER
-
tracker
private ResponseTracker tracker
-
publisher
private EventPublisher publisher
-
log
private static org.slf4j.Logger log
-
-
Method Detail
-
register
public JsonRpcClient register(ReactorClient client)
Registers new client withResponseWorker
.- Parameters:
client
- -JsonRpcClient
to be registered.- Returns:
- Client wrapper.
-
run
public void run()
- Specified by:
run
in interfacejava.lang.Runnable
- Overrides:
run
in classjava.lang.Thread
-
processIncomingObject
private void processIncomingObject(JsonRpcClient client, com.fasterxml.jackson.databind.JsonNode node)
-
processNotifications
private void processNotifications(JsonRpcEvent notification)
-
close
public void close()
-
getPublisher
public EventPublisher getPublisher()
- Returns:
- publisher which can be used to subscribe to events defined by subscription id.
-
-