QueuedEvent — ControllerEvent with Enqueue Time

QueuedEvent is a ControllerEvent with the time it was enqueued (enqueue time) to ControllerEventManager.

QueuedEvent is created every time ControllerEventManager is requested to enqueue a controller event.

Processing ControllerEvent Using ControllerEventProcessor — process Method

process(
  processor: ControllerEventProcessor): Unit

process atomically turns the spent internal registry on and simply exits when it was on already.

process decrements the count of the processingStarted internal latch.

In the end, process simply requests the given ControllerEventProcessor to process the controller event.

Note
process is used exclusively when ControllerEventThread is requested to process controller events.

Preempting ControllerEvent Using ControllerEventProcessor — preempt Method

preempt(
  processor: ControllerEventProcessor): Unit

preempt atomically turns the spent internal registry on and simply exits when it was on already.

In the end, preempt simply requests the given ControllerEventProcessor to preempt the controller event.

Note
preempt is used exclusively when ControllerEventManager is requested to clearAndPut.

awaitProcessing Method

awaitProcessing(): Unit

awaitProcessing simply pauses the current thread until the processingStarted internal latch has counted down to zero (which happens only after processing the ControllerEvent using a ControllerEventProcessor).

Note
awaitProcessing is used exclusively when KafkaController is requested to start up.

String (Textual) Representation — toString Method

toString: String
Note
toString is part of the java.lang.Object Contract for a string representation of the object.

toString returns the following string representation:

QueuedEvent(event=[event], enqueueTimeMs=[enqueueTimeMs])

Internal Properties

Name Description

processingStarted

Java’s CountDownLatch (with the count of 1) to wait until…​FIXME

Used when…​FIXME

spent

Java’s AtomicBoolean (with the initial value of false) to be updated atomically…​FIXME

Used when…​FIXME

results matching ""

    No results matching ""