private List<Long> getOutputStreamIds(TopologyProcessor topologyProcessor) { List<Long> streamIds = new ArrayList<>(); if (topologyProcessor != null) { QueryParam qp1 = new QueryParam(TopologyProcessorStreamMap.FIELD_PROCESSOR_ID, String.valueOf(topologyProcessor.getId())); QueryParam qp2 = new QueryParam(TopologyProcessorStreamMap.FIELD_VERSION_ID, String.valueOf(topologyProcessor.getVersionId())); for (TopologyProcessorStreamMap mapping : listTopologyProcessorStreamMapping(ImmutableList.of(qp1, qp2))) { streamIds.add(mapping.getStreamId()); } } return streamIds; }
private void addProcessorStreamMapping(TopologyProcessor topologyProcessor, List<Long> streamIds) { for (Long outputStreamId : streamIds) { dao.<TopologyProcessorStreamMap>add(new TopologyProcessorStreamMap(topologyProcessor.getId(), topologyProcessor.getVersionId(), outputStreamId)); } }
private List<TopologyStream> getOutputStreams(TopologyProcessor topologyProcessor) { List<TopologyStream> streams = new ArrayList<>(); if (topologyProcessor != null) { QueryParam qp1 = new QueryParam(TopologyProcessorStreamMap.FIELD_PROCESSOR_ID, String.valueOf(topologyProcessor.getId())); QueryParam qp2 = new QueryParam(TopologyProcessorStreamMap.FIELD_VERSION_ID, String.valueOf(topologyProcessor.getVersionId())); for (TopologyProcessorStreamMap mapping : listTopologyProcessorStreamMapping(ImmutableList.of(qp1, qp2))) { TopologyStream topologyStream = getStreamInfo(topologyProcessor.getTopologyId(), mapping.getStreamId(), topologyProcessor.getVersionId()); if (topologyStream != null) { streams.add(topologyStream); } } } return streams; }
private void removeProcessorStreamMapping(TopologyProcessor topologyProcessor, List<Long> streamIds) { if (topologyProcessor != null) { for (Long outputStreamId : streamIds) { TopologyProcessorStreamMap mapping = new TopologyProcessorStreamMap(topologyProcessor.getId(), topologyProcessor.getVersionId(), outputStreamId); dao.<TopologyProcessorStreamMap>remove(mapping.getStorableKey()); } } }
private void createProcessorStreamMapping(TopologyProcessor topologyProcessor, List<TopologyStream> streams) { for (TopologyStream outputStream : streams) { TopologyStream addedStream = addStreamInfo(topologyProcessor.getTopologyId(), outputStream); dao.<TopologyProcessorStreamMap>add(new TopologyProcessorStreamMap(topologyProcessor.getId(), topologyProcessor.getVersionId(), addedStream.getId())); } }
public TopologyProcessor addTopologyProcessor(Long topologyId, Long versionId, TopologyProcessor topologyProcessor) { if (topologyProcessor.getId() == null) { topologyProcessor.setId(getNextTopologyComponentId()); } topologyProcessor.setVersionId(versionId); topologyProcessor.setTopologyId(topologyId); validateTopologyProcessor(topologyProcessor); List<TopologyStream> topologyStreams = addTopologyOutputComponent(topologyProcessor); addProcessorStreamMapping(topologyProcessor, topologyProcessor.getOutputStreamIds()); topologyProcessor.setOutputStreams(topologyStreams); topologyProcessor.setVersionTimestamp(updateVersionTimestamp(versionId).getTimestamp()); return topologyProcessor; }
removeTopologyProcessor(topologyId, processor.getId(), versionId, false);