private void updateSessionTriggerProvidersOnMasterThread() { for (Map.Entry<String, PoolState> entry : pools.entrySet()) { String poolName = entry.getKey(); PoolState poolState = entry.getValue(); final List<Trigger> triggers = Collections.unmodifiableList(poolState.getTriggers()); final List<TezSessionState> sessionStates = Collections.unmodifiableList(poolState.getSessions()); SessionTriggerProvider sessionTriggerProvider = perPoolProviders.get(poolName); if (sessionTriggerProvider != null) { perPoolProviders.get(poolName).setTriggers(triggers); perPoolProviders.get(poolName).setSessions(sessionStates); } else { perPoolProviders.put(poolName, new SessionTriggerProvider(sessionStates, triggers)); } } }
void updateTriggers(final WmTezSession session) { WmContext wmContext = session.getWmContext(); String poolName = session.getPoolName(); PoolState poolState = pools.get(poolName); if (wmContext != null && poolState != null) { wmContext.addTriggers(poolState.getTriggers()); LOG.info("Subscribed to counters: {}", wmContext.getSubscribedCounters()); } }