use of org.openkilda.wfm.topology.flowhs.bolts.YFlowValidationHubBolt in project open-kilda by telstra.
the class FlowHsTopology method yFlowValidationHub.
private void yFlowValidationHub(TopologyBuilder topologyBuilder, PersistenceManager persistenceManager) {
int hubTimeout = (int) TimeUnit.SECONDS.toMillis(topologyConfig.getValidationHubTimeoutSeconds());
HubBolt.Config config = HubBolt.Config.builder().requestSenderComponent(ComponentId.FLOW_ROUTER_BOLT.name()).workerComponent(ComponentId.YFLOW_VALIDATION_SPEAKER_WORKER.name()).lifeCycleEventComponent(ZooKeeperSpout.SPOUT_ID).timeoutMs(hubTimeout).build();
FlowResourcesConfig flowResourcesConfig = configurationProvider.getConfiguration(FlowResourcesConfig.class);
YFlowValidationHubBolt hubBolt = new YFlowValidationHubBolt(config, persistenceManager, flowResourcesConfig, topologyConfig.getFlowMeterMinBurstSizeInKbits(), topologyConfig.getFlowMeterBurstCoefficient());
declareBolt(topologyBuilder, hubBolt, ComponentId.YFLOW_VALIDATION_HUB.name()).fieldsGrouping(ComponentId.FLOW_ROUTER_BOLT.name(), Stream.ROUTER_TO_YFLOW_VALIDATION_HUB.name(), FLOW_FIELD).directGrouping(ComponentId.YFLOW_VALIDATION_SPEAKER_WORKER.name(), SPEAKER_WORKER_TO_HUB_YFLOW_VALIDATION.name()).allGrouping(ZooKeeperSpout.SPOUT_ID).directGrouping(CoordinatorBolt.ID);
}
Aggregations