Class EsbControlChannel

java.lang.Object
com.kingsrook.qqq.esb.runtime.EsbControlChannel

public class EsbControlChannel extends Object
A runtime's listener on the ESB control topic (spec section 6): the internal, non-durable topic qqq.esb.control, on each provider that the runtime's triggers use. EsbTriggerControl sends { "action", "triggerName" } messages to it, and each runtime listening applies them to its own runner for that trigger (pauseLocal, resumeLocal, restartLocal) - so an action reaches every node on the broker, including the sender's. A runtime without the trigger ignores the message. The topic is non-durable, and nothing is persisted: a node that isn't listening when a message is sent (stopped, or disconnected) never gets it, and a node that starts later uses startPaused. Opening a listener never blocks the caller: it runs on a virtual thread, and if the provider can't be reached or listener setup fails, that thread keeps trying. QEsbRuntime's connection listener calls onReconnect after a lost connection, which discards the old session so the thread rebuilds it. Messages arrive on the broker client's threads.