public SiddhiApp defineTrigger(TriggerDefinition triggerDefinition) { if (triggerDefinition == null) { throw new SiddhiAppValidationException("Trigger Definition should not be null"); } else if (triggerDefinition.getId() == null) { throw new SiddhiAppValidationException("Trigger Id should not be null for Trigger Definition", triggerDefinition.getQueryContextStartIndex(), triggerDefinition.getQueryContextEndIndex()); } StreamDefinition streamDefinition = StreamDefinition.id(triggerDefinition.getId()).attribute(SiddhiConstants .TRIGGERED_TIME, Attribute.Type.LONG); streamDefinition.setQueryContextStartIndex(triggerDefinition.getQueryContextStartIndex()); streamDefinition.setQueryContextEndIndex(triggerDefinition.getQueryContextEndIndex()); try { checkDuplicateDefinition(streamDefinition); } catch (DuplicateDefinitionException e) { throw new DuplicateDefinitionException("Trigger '" + triggerDefinition.getId() + "' cannot be defined as," + " " + e.getMessageWithOutContext(), e, triggerDefinition.getQueryContextStartIndex(), triggerDefinition.getQueryContextEndIndex()); } if (triggerDefinitionMap.containsKey(triggerDefinition.getId())) { throw new DuplicateDefinitionException("Trigger Definition with same Id '" + triggerDefinition.getId() + "' already exist '" + triggerDefinitionMap.get( triggerDefinition.getId()) + "', hence cannot add '" + triggerDefinition + "'", triggerDefinition.getQueryContextStartIndex(), triggerDefinition.getQueryContextEndIndex()); } this.triggerDefinitionMap.put(triggerDefinition.getId(), triggerDefinition); this.streamDefinitionMap.put(streamDefinition.getId(), streamDefinition); return this; }
public StreamDefinition getStreamDefinition(String streamId) { StreamDefinition streamDefinition = StreamDefinition.id(streamId); for (int i = 0; i < getFieldNames().length; i++) { streamDefinition.attribute(getFieldNames()[i], SiddhiTypeFactory.getAttributeType(getFieldTypes()[i])); } return streamDefinition; }
public StreamDefinition getStreamDefinition(String streamId) { StreamDefinition streamDefinition = StreamDefinition.id(streamId); for (int i = 0; i < getFieldNames().length; i++) { streamDefinition.attribute(getFieldNames()[i], SiddhiTypeFactory.getAttributeType(getFieldTypes()[i])); } return streamDefinition; }
StreamDefinition streamDefinition = StreamDefinition.id(source.streamId); populateQueryContext(streamDefinition, ctx); List<SiddhiQLParser.Attribute_nameContext> attribute_names = ctx.attribute_name();
public SiddhiApp defineTrigger(TriggerDefinition triggerDefinition) { if (triggerDefinition == null) { throw new SiddhiAppValidationException("Trigger Definition should not be null"); } else if (triggerDefinition.getId() == null) { throw new SiddhiAppValidationException("Trigger Id should not be null for Trigger Definition", triggerDefinition.getQueryContextStartIndex(), triggerDefinition.getQueryContextEndIndex()); } StreamDefinition streamDefinition = StreamDefinition.id(triggerDefinition.getId()).attribute(SiddhiConstants .TRIGGERED_TIME, Attribute.Type.LONG); streamDefinition.setQueryContextStartIndex(triggerDefinition.getQueryContextStartIndex()); streamDefinition.setQueryContextEndIndex(triggerDefinition.getQueryContextEndIndex()); try { checkDuplicateDefinition(streamDefinition); } catch (DuplicateDefinitionException e) { throw new DuplicateDefinitionException("Trigger '" + triggerDefinition.getId() + "' cannot be defined as," + " " + e.getMessageWithOutContext(), e, triggerDefinition.getQueryContextStartIndex(), triggerDefinition.getQueryContextEndIndex()); } if (triggerDefinitionMap.containsKey(triggerDefinition.getId())) { throw new DuplicateDefinitionException("Trigger Definition with same Id '" + triggerDefinition.getId() + "' already exist '" + triggerDefinitionMap.get( triggerDefinition.getId()) + "', hence cannot add '" + triggerDefinition + "'", triggerDefinition.getQueryContextStartIndex(), triggerDefinition.getQueryContextEndIndex()); } this.triggerDefinitionMap.put(triggerDefinition.getId(), triggerDefinition); this.streamDefinitionMap.put(streamDefinition.getId(), streamDefinition); return this; }