public void addTopologyUsages(TopologyUsage usage) { usages.put(usage.getTopoName(), usage); }
private void buildTopologyDataSource(TopologyUsage u) { for (String policyName : u.getPolicies()) { PolicyDefinition def = policies.get(policyName); if (def != null) { u.getDataSources().addAll(findDatasource(def)); } else { LOG.error(" policy not find {}, but reference in topology usage {} !", policyName, u.getTopoName()); } } }
PublishSpec pubSpec = pubSpecs.get(u.getTopoName()); if (pubSpec == null) { pubSpec = new PublishSpec(u.getTopoName(), context.getTopologies().get(u.getTopoName()).getPubBoltId()); pubSpecs.put(u.getTopoName(), pubSpec);
if (topo2Policies.containsKey(u.getTopoName())) { u.getPolicies().addAll(topo2Policies.get(u.getTopoName())); if (topo2MonitorStream.containsKey(u.getTopoName())) { u.getMonitoredStream().addAll(topo2MonitorStream.get(u.getTopoName())); usages.put(u.getTopoName(), u);
private Map<String, AlertBoltSpec> generateAlertMonitorMetadata() { Map<String, AlertBoltSpec> alertSpecs = new HashMap<String, AlertBoltSpec>(); for (TopologyUsage u : context.getTopologyUsages().values()) { AlertBoltSpec alertSpec = alertSpecs.get(u.getTopoName()); if (alertSpec == null) { alertSpec = new AlertBoltSpec(u.getTopoName()); alertSpecs.put(u.getTopoName(), alertSpec);
private Map<String, RouterSpec> generateGroupbyMonitorMetadata() { Map<String, RouterSpec> groupSpecsMap = new HashMap<String, RouterSpec>(); for (TopologyUsage u : context.getTopologyUsages().values()) { RouterSpec spec = groupSpecsMap.get(u.getTopoName()); if (spec == null) { spec = new RouterSpec(u.getTopoName()); groupSpecsMap.put(u.getTopoName(), spec); } for (MonitoredStream ms : u.getMonitoredStream()) { // mutiple stream on the same policy group : for correlation group case: for (StreamPartition partiton : ms.getStreamGroup().getStreamPartitions()) { StreamRouterSpec routeSpec = new StreamRouterSpec(); routeSpec.setPartition(partiton); routeSpec.setStreamId(partiton.getStreamId()); for (StreamWorkSlotQueue sq : ms.getQueues()) { if (sq.getTopoGroupStartIndex().containsKey(u.getTopoName())) { PolicyWorkerQueue queue = new PolicyWorkerQueue(); queue.setWorkers(sq.getWorkingSlots()); queue.setPartition(partiton); routeSpec.addQueue(queue); } } spec.addRouterSpec(routeSpec); } } } return groupSpecsMap; }
Map<String, Kafka2TupleMetadata> datasourcesMap = context.getDataSourceMetadata(); for (TopologyUsage usage : context.getTopologyUsages().values()) { Topology topo = context.getTopologies().get(usage.getTopoName());