private StreamEvent buildStreamEvt(long ts, String host, double value) { StreamEvent e = new StreamEvent(); e.setData(new Object[] {ts, host, value}); e.setStreamId(inputStream); e.setTimestamp(ts); return e; } }
/** * @return cloned new event object. */ public StreamEvent copy() { StreamEvent newEvent = new StreamEvent(); newEvent.setTimestamp(this.getTimestamp()); newEvent.setData(this.getData()); newEvent.setStreamId(this.getStreamId()); newEvent.setMetaVersion(this.getMetaVersion()); return newEvent; }
public StreamEvent(String streamId, long timestamp, Object[] data) { this.setStreamId(streamId); this.setTimestamp(timestamp); this.setData(data); }
public StreamEvent(String streamId, long timestamp, Object[] data, String metaVersion) { this.setStreamId(streamId); this.setTimestamp(timestamp); this.setData(data); this.setMetaVersion(metaVersion); }
@Test public void testStreamEvent1() { thrown.expect(IndexOutOfBoundsException.class); List<StreamColumn> streamColumns = new ArrayList<>(); streamColumns.add(new StreamColumn.Builder().name("name").type(StreamColumn.Type.STRING).build()); streamColumns.add(new StreamColumn.Builder().name("host").type(StreamColumn.Type.STRING).build()); streamColumns.add(new StreamColumn.Builder().name("flag").type(StreamColumn.Type.BOOL).build()); streamColumns.add(new StreamColumn.Builder().name("value").type(StreamColumn.Type.DOUBLE).build()); streamColumns.add(new StreamColumn.Builder().name("data").type(StreamColumn.Type.LONG).build()); streamColumns.add(new StreamColumn.Builder().name("salary").type(StreamColumn.Type.FLOAT).build()); streamColumns.add(new StreamColumn.Builder().name("object").type(StreamColumn.Type.OBJECT).build()); streamColumns.add(new StreamColumn.Builder().name("int").type(StreamColumn.Type.INT).build()); StreamDefinition streamDefinition = new StreamDefinition(); streamDefinition.setColumns(streamColumns); StreamEvent streamEvent = new StreamEvent(); streamEvent.setData(new Object[]{"namevalue", "hostvalue", "1", 10.0, 1, -0.2, "{\"name\":\"heap.COMMITTED\", \"Value\":\"175636480\"}\"", 4}); streamEvent.getData(streamDefinition, "salary", "isYhd"); }
@Test public void testStreamEvent() { Object[] data = new Object[]{"namevalue", "hostvalue", "1", 10.0, 1, -0.2, "{\"name\":\"heap.COMMITTED\", \"Value\":\"175636480\"}", 4}; StreamEvent streamEvent = new StreamEvent("streamId", 1478667686971l, data); Assert.assertEquals("StreamEvent[stream=STREAMID,timestamp=2016-11-09 05:01:26,971,data=[namevalue,hostvalue,1,10.0,1,-0.2,{\"name\":\"heap.COMMITTED\", \"Value\":\"175636480\"},4],metaVersion=null]", streamEvent.toString()); streamEvent = new StreamEvent("streamId", 1478667686971l, data, "metaVersion"); Assert.assertEquals("StreamEvent[stream=STREAMID,timestamp=2016-11-09 05:01:26,971,data=[namevalue,hostvalue,1,10.0,1,-0.2,{\"name\":\"heap.COMMITTED\", \"Value\":\"175636480\"},4],metaVersion=metaVersion]", streamEvent.toString()); StreamEvent streamEventCopy = streamEvent.copy(); Assert.assertFalse(streamEventCopy == streamEvent); Assert.assertTrue(streamEventCopy.equals(streamEvent)); Assert.assertTrue(streamEventCopy.hashCode() == streamEvent.hashCode()); streamEventCopy.setMetaVersion(""); Assert.assertFalse(streamEventCopy == streamEvent); Assert.assertFalse(streamEventCopy.equals(streamEvent)); Assert.assertFalse(streamEventCopy.hashCode() == streamEvent.hashCode()); streamEventCopy.copyFrom(streamEvent); Assert.assertTrue(streamEventCopy.equals(streamEvent)); Assert.assertTrue(streamEventCopy.hashCode() == streamEvent.hashCode()); Object[] values = streamEvent.getData(streamDefinition, "int", "salary", "flag", "object"); Assert.assertEquals(4, values[0]); Assert.assertEquals(-0.2, values[1]); values = streamEvent.getData(streamDefinition, Arrays.asList("int", "data", "flag", "object"));
@Override public String toString() { List<String> dataStrings = new ArrayList<>(); if (this.getData() != null) { for (Object obj : this.getData()) { if (obj != null) { dataStrings.add(obj.toString()); } else { dataStrings.add(null); } } } return String.format("StreamEvent[stream=%S,timestamp=%s,data=[%s],metaVersion=%s]", this.getStreamId(), DateTimeUtil.millisecondsToHumanDateWithMilliseconds(this.getTimestamp()), StringUtils.join(dataStrings, ","), this.getMetaVersion()); }
StreamEvent event1 = new StreamEvent(); Object[] data = new Object[]{"value1"}; event1.setData(data); event1.setStreamId(streamId); PartitionedEvent pEvent1 = new PartitionedEvent(); pEvent1.setEvent(event1); pEvent1.setPartition(partition); StreamEvent event2 = new StreamEvent(); Object[] data2 = new Object[]{"value3"}; event2.setData(data2); event2.setStreamId(streamId); PartitionedEvent pEvent2 = new PartitionedEvent(); pEvent2.setEvent(event2);
@SuppressWarnings("rawtypes") private void compareAndEmit(Set wisb, Set wiri, StreamEvent event) { // compare with wisbValues if wisbValues are already there for dynamic type Collection noDataValues = CollectionUtils.subtract(wisb, wiri); LOG.debug("nodatavalues:" + noDataValues + ", wisb: " + wisb + ", wiri: " + wiri); if (noDataValues != null && noDataValues.size() > 0) { LOG.info("No data alert is triggered with no data values {} and wisb {}", noDataValues, wisbValues); AlertStreamEvent alertEvent = createAlertEvent(event.getTimestamp(), event.getData()); collector.emit(alertEvent); } }
public static PartitionedEvent createRandomSortedEventGroupedByName(String streamId) { StreamEvent event = createRandomStreamEvent(streamId); event.setTimestamp(System.currentTimeMillis()); return new PartitionedEvent(event, createSampleStreamGroupbyPartition(streamId, Arrays.asList("name")), event.getData()[0].hashCode()); }
pe.setPartitionKey(1); pe.setPartition(createPartition()); StreamEvent streamEvent = new StreamEvent(); streamEvent.setStreamId("test-stream"); streamEvent.setTimestamp(System.currentTimeMillis()); pe.setEvent(streamEvent);
public void send(StreamEvent event) throws Exception { context.getPolicyCounter().incr(String.format("%s.%s", this.context.getPolicyDefinition().getName(), "receive_count")); String streamId = event.getStreamId(); InputHandler inputHandler = executionRuntime.getInputHandler(streamId); if (inputHandler != null) { context.getPolicyCounter().incr(String.format("%s.%s", this.context.getPolicyDefinition().getName(), "eval_count")); inputHandler.send(event.getTimestamp(), event.getData()); if (LOG.isDebugEnabled()) { LOG.debug("sent event to siddhi stream {} ", streamId); } } else { context.getPolicyCounter().incr(String.format("%s.%s", this.context.getPolicyDefinition().getName(), "drop_count")); LOG.warn("No input handler found for stream {}", streamId); } }
public Object[] getData() { return event != null ? event.getData() : null; }
public StreamEventBuilder schema(StreamDefinition streamDefinition) { this.streamDefinition = streamDefinition; if (instance.getStreamId() == null) { instance.setStreamId(streamDefinition.getStreamId()); } return this; }
@SuppressWarnings( {"rawtypes", "unchecked"}) private StreamEvent convertToStreamEventByStreamDefinition(long timestamp, Map m, StreamDefinition sd) { return StreamEvent.builder().timestamep(timestamp).attributes(m, sd).build(); }
public String getStreamId() { return (event != null) ? event.getStreamId() : null; }
public StreamEventBuilder attributes(Object... data) { instance.setData(data); return this; }
public StreamEventBuilder() { instance = new StreamEvent(); }
public long getTimestamp() { return (event != null) ? event.getTimestamp() : 0L; }
triggerEvent[hostIndex] = ((List) one).get(0); } else if (i == originalStreamNameIndex) { triggerEvent[originalStreamNameIndex] = event.getStreamId(); } else if (sd.getColumns().size() < i) { LOG.error("strema event data have different lenght compare to column definition!"); AlertStreamEvent alertEvent = createAlertEvent(sd, event.getTimestamp(), triggerEvent); LOG.info(String.format("Nodata alert %s generated and will be emitted", Joiner.on(",").join(triggerEvent))); collector.emit(alertEvent);