/** * @return Grid communication manager. */ public GridIoManager gridIO() { return ctx.io(); }
/** {@inheritDoc} */ @Override public boolean register(UUID nodeId, UUID routineId, final GridKernalContext ctx) throws GridException { ctx.io().addUserMessageListener(topic, pred); return true; }
/** {@inheritDoc} */ @SuppressWarnings({"LockAcquiredButNotSafelyReleased"}) @Override public void onKernalStop0(boolean cancel) { // Acquire write lock so that any new thread could not be started. busyLock.writeLock().lock(); if (msgLsnr != null) ctx.io().removeMessageListener(TOPIC_EVENT, msgLsnr); msgLsnr = null; lsnrs.clear(); }
/** * @param lsnr Listener to add. */ public void addDisconnectListener(GridDisconnectListener lsnr) { cctx.kernalContext().io().addDisconnectListener(lsnr); }
/** {@inheritDoc} */ @Override public void localListen(@Nullable Object topic, GridBiPredicate<UUID, ?> p) { A.notNull(p, "p"); guard(); try { ctx.io().addUserMessageListener(topic, p); } finally { unguard(); } }
@SuppressWarnings("deprecation") @Override public void addMessageListener(GridMessageListener lsnr, String topic) { A.notNull(lsnr, "lsnr"); A.notNull(topic, "topic"); ctx.io().addMessageListener(topic, lsnr); }
@SuppressWarnings("deprecation") @Override public boolean removeMessageListener(GridMessageListener lsnr, String topic) { A.notNull(lsnr, "lsnr"); A.notNull(topic, "topic"); return ctx.io().removeMessageListener(topic, lsnr); }
/** {@inheritDoc} */ @Override public void stopLocalListen(@Nullable Object topic, GridBiPredicate<UUID, ?> p) { A.notNull(p, "p"); guard(); try { ctx.io().removeUserMessageListener(topic, p); } finally { unguard(); } }
/** * Starts deployment communication. */ void start() { ctx.io().addMessageListener(TOPIC_CLASSLOAD, peerLsnr); if (log.isDebugEnabled()) log.debug("Started deployment communication."); }
/** {@inheritDoc} */ @Override public void start() { ctx.event().addLocalEventListener(discoLsnr, EVT_NODE_FAILED, EVT_NODE_LEFT); ctx.io().addMessageListener(TOPIC_JOB_SIBLINGS, new JobSiblingsMessageListener()); ctx.io().addMessageListener(TOPIC_TASK_CANCEL, new TaskCancelMessageListener()); ctx.io().addMessageListener(TOPIC_TASK, new JobMessageListener(true)); if (log.isDebugEnabled()) log.debug("Started task processor."); }
/** {@inheritDoc} */ @Override public void onBeforeJobResponseSent(GridJobWorker worker) { if (log.isDebugEnabled()) log.debug("Received onBeforeJobResponseSent() callback: " + worker); assert jobAlwaysActivate || !passiveJobs.containsKey(worker.getJobId()); if (worker.getSession().isFullSupport()) { // Unregister session request listener for this jobs. ctx.io().removeMessageListener(worker.getJobTopic()); // Unregister message IDs used for sending. ctx.io().removeMessageId(worker.getTaskTopic()); } }
/** * @param routineId Routine ID. * @param hnd Handler * @param loc If Handler unregistered on master node. */ private void unregisterHandler(UUID routineId, GridContinuousHandler hnd, boolean loc) { assert routineId != null; assert hnd != null; if (loc && hnd.orderedTopic() != null) ctx.io().removeMessageListener(hnd.orderedTopic()); hnd.unregister(routineId, ctx); }
/** * Stops deployment communication. */ void stop() { if (log.isDebugEnabled()) log.debug("Stopping deployment communication."); busyLock.block(); ctx.io().removeMessageListener(TOPIC_CLASSLOAD, peerLsnr); }
/** {@inheritDoc} */ @Override public void onJobSend(GridTaskWorker<?, ?> worker, GridJobSiblingImpl sib) { if (worker.getSession().isFullSupport()) // Listener is stateless, so same listener can be reused for all jobs. ctx.io().addMessageListener(sib.taskTopic(), msgLsnr); }
/** {@inheritDoc} */ @Override public void stop(boolean cancel) throws GridException { if (ctx.config().isDaemon()) return; GridIoManager comm = ctx.io(); if (comm != null) comm.removeMessageListener(TOPIC_CHECKPOINT, lsnr); stopSpi(); if (log.isDebugEnabled()) log.debug(stopInfo()); }
/** {@inheritDoc} */ @Override public void resetMetrics() { guard(); try { ctx.jobMetric().reset(); ctx.io().resetMetrics(); ctx.task().resetMetrics(); } finally { unguard(); } }
/** {@inheritDoc} */ @Override public void stop(boolean cancel) throws GridException { if (ctx.config().isDaemon()) return; ctx.io().removeMessageListener(TOPIC_CONTINUOUS); U.interrupt(threads); U.joinThreads(threads, log); if (log.isDebugEnabled()) log.debug("Continuous processor stopped."); }
/** * Constructor. */ protected FragmentizerCoordinator() { super(ggfsCtx.kernalContext().gridName(), "fragmentizer-coordinator", ggfsCtx.kernalContext().log()); ggfsCtx.kernalContext().event().addLocalEventListener(this, EVT_NODE_LEFT, EVT_NODE_FAILED); ggfsCtx.kernalContext().io().addMessageListener(topic, this); }
/** * Constructor. */ protected FragmentizerCoordinator() { super(ggfsCtx.kernalContext().gridName(), "fragmentizer-coordinator", ggfsCtx.kernalContext().log()); ggfsCtx.kernalContext().event().addLocalEventListener(this, EVT_NODE_LEFT, EVT_NODE_FAILED); ggfsCtx.kernalContext().io().addMessageListener(topic, this); }
/** {@inheritDoc} */ @Override public void onJobStarted(GridJobWorker worker) { if (log.isDebugEnabled()) log.debug("Received onJobStarted() callback: " + worker); if (metricsUpdateFreq > -1L) updateJobMetrics(); // Register for timeout notifications. if (worker.endTime() < Long.MAX_VALUE) ctx.timeout().addTimeoutObject(worker); if (worker.getSession().isFullSupport()) // Register session request listener for this job. ctx.io().addMessageListener(worker.getJobTopic(), sesLsnr); }