public SiddhiApp defineAggregation(AggregationDefinition aggregationDefinition) { if (aggregationDefinition == null) { throw new SiddhiAppValidationException("Aggregation Definition should not be null"); } if (aggregationDefinition.getId() == null) { throw new SiddhiAppValidationException("Aggregation Id should not be null for Aggregation Definition", aggregationDefinition.getQueryContextStartIndex(), aggregationDefinition.getQueryContextEndIndex()); } checkDuplicateDefinition(aggregationDefinition); this.aggregationDefinitionMap.put(aggregationDefinition.getId(), aggregationDefinition); return this; }
public SiddhiApp defineAggregation(AggregationDefinition aggregationDefinition) { if (aggregationDefinition == null) { throw new SiddhiAppValidationException("Aggregation Definition should not be null"); } if (aggregationDefinition.getId() == null) { throw new SiddhiAppValidationException("Aggregation Id should not be null for Aggregation Definition", aggregationDefinition.getQueryContextStartIndex(), aggregationDefinition.getQueryContextEndIndex()); } checkDuplicateDefinition(aggregationDefinition); this.aggregationDefinitionMap.put(aggregationDefinition.getId(), aggregationDefinition); return this; }
/** * Obtains information of all the Aggregations. */ private void loadAggregarionData(SiddhiApp siddhiApp, SiddhiAppRuntime siddhiAppRuntime, List<SiddhiAppElements> streams, String appData) { for (AggregationDefinition aggregationDefinition : siddhiApp.getAggregationDefinitionMap().values()) { SiddhiAppElements siddhiAppElements = new SiddhiAppElements(); siddhiAppElements.setInputStreamId(aggregationDefinition.getBasicSingleInputStream().getStreamId()); siddhiAppElements.setOutputStreamId(aggregationDefinition.getId()); loadInputData(siddhiApp, siddhiAppRuntime, aggregationDefinition.getBasicSingleInputStream() .getStreamId(), appData, siddhiAppElements); String aggregationDefinitionStr = getDefinition(aggregationDefinition, appData); siddhiAppElements.setOutputStreamSiddhiApp(aggregationDefinitionStr); siddhiAppElements.setOutputStreamType(Constants.AGGREGATION); streams.add(siddhiAppElements); } }
AggregationConfig aggregationConfig = new AggregationConfig(); aggregationConfig.setName(aggregationDefinition.getId()); aggregationConfig.setFrom(aggregationDefinition.getBasicSingleInputStream().getStreamId());