package com.alipay.bluewhale.core.daemon.supervisor; import java.util.Map; import java.util.concurrent.atomic.AtomicBoolean; import backtype.storm.Config; import com.alipay.bluewhale.core.callback.RunnableCallback; import com.alipay.bluewhale.core.event.EventManager; /** * ��syncProcesses�¼���ӵ�processesEventManager������ */ class AsyncSyncProcesses extends RunnableCallback { private Map conf; private EventManager processesEventManager; private SyncProcesses syncProcesses; private AtomicBoolean active; private Integer result; /** * @param conf * @param processesEventManager * @param syncProcesses * @param active * @param activeReadLock */ public AsyncSyncProcesses(Map conf, EventManager processesEventManager, SyncProcesses syncProcesses, AtomicBoolean active) { this.processesEventManager = processesEventManager; this.syncProcesses = syncProcesses; this.active = active; this.conf = conf; this.result = null; } @Override public Object getResult() { return result; } @Override public void run() { processesEventManager.add(syncProcesses); if (active.get()) { this.result = (Integer) conf .get(Config.SUPERVISOR_MONITOR_FREQUENCY_SECS); }else{ this.result = -1; } } }