/** * Work queue not a root level object, thus we need to build a map from * MonitoredStream for later quick lookup. */ private Map<String, StreamWorkSlotQueue> buildQueueMap() { Map<String, StreamWorkSlotQueue> queueMap = new HashMap<String, StreamWorkSlotQueue>(); for (MonitoredStream ms : context.getMonitoredStreams().values()) { for (StreamWorkSlotQueue queue : ms.getQueues()) { queueMap.put(queue.getQueueId(), queue); } } return queueMap; }
public InMemScheduleConext(IScheduleContext context) { this.topologies = new HashMap<String, Topology>(context.getTopologies()); this.usages = new HashMap<String, TopologyUsage>(context.getTopologyUsages()); this.policies = new HashMap<String, PolicyDefinition>(context.getPolicies()); this.datasources = new HashMap<String, Kafka2TupleMetadata>(context.getDataSourceMetadata()); this.policyAssignments = new HashMap<String, PolicyAssignment>(context.getPolicyAssignments()); this.schemas = new HashMap<String, StreamDefinition>(context.getStreamSchemas()); this.monitoredStreams = new HashMap<StreamGroup, MonitoredStream>(context.getMonitoredStreams()); this.publishments = new HashMap<String, Publishment>(context.getPublishments()); }
public static Pair<MonitoredStream, StreamWorkSlotQueue> getQueue(IScheduleContext context, String queueId) { for (MonitoredStream ms : context.getMonitoredStreams().values()) { for (StreamWorkSlotQueue q : ms.getQueues()) { if (q.getQueueId().equals(queueId)) { return Pair.of(ms, q); } } } return null; }
public ScheduleState generate(List<WorkItem> expandworkSets) { // topologyId -> SpoutSpec Map<String, SpoutSpec> topoSpoutSpecsMap = generateSpoutMonitorMetadata(); // grp-by meta spec(sort & grp) Map<String, RouterSpec> groupSpecsMap = generateGroupbyMonitorMetadata(); // alert bolt spec Map<String, AlertBoltSpec> alertSpecsMap = generateAlertMonitorMetadata(); Map<String, PublishSpec> publishSpecsMap = generatePublishMetadata(); String uniqueVersion = generateVersion(); ScheduleState status = new ScheduleState(uniqueVersion, topoSpoutSpecsMap, groupSpecsMap, alertSpecsMap, publishSpecsMap, context.getPolicyAssignments().values(), context.getMonitoredStreams().values(), context.getPolicies().values(), context.getStreamSchemas().values()); return status; }
MonitoredStream targetdStream = context.getMonitoredStreams().get(policyStreamPartition); if (targetdStream == null) { targetdStream = new MonitoredStream(policyStreamPartition); context.getMonitoredStreams().put(policyStreamPartition, targetdStream);
Assert.assertEquals(0, context.getMonitoredStreams().size());