io.siddhi.query.api.execution.query.Query Java Examples
The following examples show how to use
io.siddhi.query.api.execution.query.Query.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void testCreatingReturnFilterQueryWithExtension3() { Query query = Query.query(); Window window1 = new Window("Foo"); AssertJUnit.assertFalse(window1.equals("falsewindow")); query.from( InputStream.stream("StockStream"). filter(Expression.and(Expression.compare(Expression.function("ext", "FooBarCond", Expression .value(7), Expression.value(9.5)), Compare.Operator.GREATER_THAN, Expression.variable("price")), Expression.function("ext", "BarCond", Expression.value(100), Expression.variable("volume") ) ) ).function("ext", "Foo", Expression.value(67), Expression.value(89)). window(window1) ); query.select( Selector.selector(). select("symbol", Expression.variable("symbol")). select("avgPrice", Expression.function("ext", "avg", Expression.variable("price"))) ); }
Example #2
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void testQuery6() { Query query = Query.query(); query.from( InputStream.faultStream("StockStream"). filter( Expression.isNullFaultStream("StockStream") ) ); query.select( Selector.selector(). select("symbol", Expression.variable("symbol")). select("avgPrice", Expression.function("avg", Expression.variable("symbol"))). groupBy(Expression.variable("symbol")). having(Expression.compare(Expression.variable("avgPrice"), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(50) )) ); query.insertIntoFault("OutStockStream"); SiddhiApp.siddhiApp("test").addQuery(query); }
Example #3
Source File: FilterTestCase1.java From siddhi with Apache License 2.0 | 6 votes |
@Test(expectedExceptions = SiddhiAppCreationException.class) public void testFilterQuery48() throws InterruptedException { log.info("Filter test48"); SiddhiManager siddhiManager = new SiddhiManager(); StreamDefinition cseEventStream = StreamDefinition.id("cseEventStream").attribute("symbol", Attribute.Type .STRING).attribute("price", Attribute.Type.FLOAT).attribute("available", Attribute.Type.BOOL); Query query = new Query(); query.from(InputStream.stream("cseEventStream"). filter(Expression.not(Expression.variable("price")))); query.annotation(Annotation.annotation("info").element("name", "query1")); query.select( Selector.selector(). select("symbol", Expression.variable("symbol")). select("price", Expression.variable("price")). select("available", Expression.variable("available")) ); query.insertInto("StockQuote"); SiddhiApp siddhiApp = new SiddhiApp("ep1"); siddhiApp.defineStream(cseEventStream); siddhiApp.addQuery(query); SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp); }
Example #4
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void testCreatingReturnFilterQuery() { Query query = Query.query(); query.from( InputStream.stream("StockStream"). filter(Expression.and(Expression.compare(Expression.divide(Expression.value(7), Expression .value(9.5)), Compare.Operator.GREATER_THAN, Expression.variable("price")), Expression.compare(Expression.value(100), Compare.Operator.GREATER_THAN_EQUAL, Expression.variable("volume") ) ) ).window("lengthBatch", Expression.value(50)) ); query.select( Selector.selector(). select("symbol", Expression.variable("symbol")). select("avgPrice", Expression.function("avg", Expression.variable("price"))) ); query.returns(); }
Example #5
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void testQuery7() { Query query = Query.query(); query.from( InputStream.faultStream("StockStream"). filter( Expression.isNullFaultStream("StockStream", 1) ) ); query.select( Selector.selector(). select("symbol", Expression.variable("symbol")). select("avgPrice", Expression.function("avg", Expression.variable("symbol"))). groupBy(Expression.variable("symbol")). having(Expression.compare(Expression.variable("avgPrice"), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(50) )) ); query.insertIntoFault("OutStockStream"); SiddhiApp.siddhiApp("test").addQuery(query); }
Example #6
Source File: Partition.java From siddhi with Apache License 2.0 | 6 votes |
public Partition addQuery(Query query) { if (query == null) { throw new SiddhiAppValidationException("Query should not be null"); } String name = null; Element element = AnnotationHelper.getAnnotationElement(SiddhiConstants.ANNOTATION_INFO, SiddhiConstants .ANNOTATION_ELEMENT_NAME, query.getAnnotations()); if (element != null) { name = element.getValue(); } if (name != null && queryNameList.contains(name)) { throw new SiddhiAppValidationException("Cannot add Query as another Execution Element already uses " + "its name=" + name + " within the same Partition", element.getQueryContextStartIndex(), element.getQueryContextEndIndex()); } queryNameList.add(name); this.queryList.add(query); return this; }
Example #7
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void testQuery10() { TimeConstant timeConstant = new TimeConstant(1000); Query query = Query.query(); query.from( InputStream.patternStream( State.next( State.stream(InputStream.stream("e1", "Stream1") .filter(Expression.compare(Expression.variable("price"), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(30)))), State.next(State.logicalNot(State.stream(InputStream.stream("Stream1") .filter(Expression.compare(Expression.variable("price"), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(20)))), timeConstant.week(1)), State.stream(InputStream.stream("e3", "Stream2").filter(Expression.compare (Expression.variable("price"), Compare.Operator.GREATER_THAN_EQUAL, Expression.variable("price").ofStream("e1"))))) ) ) ); }
Example #8
Source File: PartitionRuntimeImpl.java From siddhi with Apache License 2.0 | 6 votes |
public void addPartitionReceiver(QueryRuntimeImpl queryRuntime, List<VariableExpressionExecutor> executors, MetaStateEvent metaEvent) { Query query = queryRuntime.getQuery(); List<List<PartitionExecutor>> partitionExecutors = new StreamPartitioner(query.getInputStream(), partition, metaEvent, executors, queryRuntime.getSiddhiQueryContext()).getPartitionExecutorLists(); if (queryRuntime.getStreamRuntime() instanceof SingleStreamRuntime) { SingleInputStream singleInputStream = (SingleInputStream) query.getInputStream(); addPartitionReceiver(singleInputStream.getStreamId(), singleInputStream.isInnerStream(), metaEvent .getMetaStreamEvent(0), partitionExecutors.get(0)); } else if (queryRuntime.getStreamRuntime() instanceof JoinStreamRuntime) { SingleInputStream leftSingleInputStream = (SingleInputStream) ((JoinInputStream) query.getInputStream()) .getLeftInputStream(); addPartitionReceiver(leftSingleInputStream.getStreamId(), leftSingleInputStream.isInnerStream(), metaEvent.getMetaStreamEvent(0), partitionExecutors.get(0)); SingleInputStream rightSingleInputStream = (SingleInputStream) ((JoinInputStream) query.getInputStream()) .getRightInputStream(); addPartitionReceiver(rightSingleInputStream.getStreamId(), rightSingleInputStream.isInnerStream(), metaEvent.getMetaStreamEvent(1), partitionExecutors.get(1)); } else if (queryRuntime.getStreamRuntime() instanceof StateStreamRuntime) { StateElement stateElement = ((StateInputStream) query.getInputStream()).getStateElement(); addPartitionReceiverForStateElement(stateElement, metaEvent, partitionExecutors, 0); } }
Example #9
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void testCreatingReturnFilterQueryWithExtension() { Query query = Query.query(); query.from( InputStream.stream("StockStream"). filter(Expression.and(Expression.compare(Expression.function("ext", "FooBarCond", Expression .value(7), Expression.value(9.5)), Compare.Operator.GREATER_THAN, Expression.variable("price")), Expression.function("ext", "BarCond", Expression.value(100), Expression.variable("volume") ) ) ).function("ext", "Foo", Expression.value(67), Expression.value(89)).window("ext", "lengthFirst10", Expression.value(50)) ); query.select( Selector.selector(). select("symbol", Expression.variable("symbol")). select("avgPrice", Expression.function("ext", "avg", Expression.variable("price"))) ); }
Example #10
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void test4() throws SiddhiParserException { Query query = SiddhiCompiler.parseQuery("from AllStockQuotes#window.lengthBatch(50) " + "select symbol, avg(price) as avgPrice " + "return ;" ); AssertJUnit.assertNotNull(query); Query api = Query.query().from(InputStream.stream("AllStockQuotes"). window("lengthBatch", Expression.value(50))). select(Selector.selector(). select("symbol", Expression.variable("symbol")). select("avgPrice", Expression.function("avg", Expression.variable("price")))). returns(); AssertJUnit.assertEquals(api, query); }
Example #11
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void testCreatingReturnFilterQueryWithFunction() { Query query = Query.query(); query.from( InputStream.stream("StockStream"). filter(Expression.and(Expression.compare(Expression.function("FooBarCond", Expression.value (7), Expression.value(9.5)), Compare.Operator.GREATER_THAN, Expression.variable("price")), Expression.function("BarCond", Expression.value(100), Expression.variable("volume") ) ) ).function("ext", "Foo", Expression.value(67), Expression.value(89)).window("ext", "lengthFirst10", Expression.value(50)) ); query.select( Selector.selector(). select("symbol", Expression.variable("symbol")). select("avgPrice", Expression.function("ext", "avg", Expression.variable("symbol"))) ); }
Example #12
Source File: TableQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void testCreatingDeleteByTypeQuery() { Query query = Query.query(); query.from( InputStream.stream("cseEventStream"). filter(Expression.and(Expression.compare(Expression.add(Expression.value(7), Expression.value (9.5)), Compare.Operator.GREATER_THAN, Expression.variable("price")), Expression.compare(Expression.value(100), Compare.Operator.GREATER_THAN_EQUAL, Expression.variable("volume") ) ) ).window("lengthBatch", Expression.value(50)) ); query.deleteBy("StockQuote", OutputStream.OutputEventType.ALL_EVENTS, Expression.compare( Expression.variable("symbol"), Compare.Operator.EQUAL, Expression.variable("symbol").ofStream("StockQuote")) ); }
Example #13
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void test1() throws SiddhiParserException { Query query = SiddhiCompiler.parseQuery("from StockStream[price>3]#window.length(50) " + "select symbol, avg(price) as avgPrice " + "group by symbol " + "having (price >= 20) " + "insert all events into StockQuote; " ); AssertJUnit.assertNotNull(query); Query api = Query.query().from(InputStream.stream("StockStream"). filter(Expression.compare(Expression.variable("price"), Compare.Operator.GREATER_THAN, Expression .value(3))). window("length", Expression.value(50))). select(Selector.selector().select(Expression.variable("symbol")). select("avgPrice", Expression.function("avg", Expression.variable("price"))). groupBy(Expression.variable("symbol")). having(Expression.compare( Expression.variable("price"), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(20)))). insertInto("StockQuote", OutputStream.OutputEventType.ALL_EVENTS); AssertJUnit.assertEquals(api, query); }
Example #14
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void test5() throws SiddhiParserException { Query query = SiddhiCompiler.parseQuery("from AllStockQuotes[price==Foo.price and Foo.try<5] " + "select symbol, avg(price) as avgPrice " + "return ;" ); AssertJUnit.assertNotNull(query); Query api = Query.query().from(InputStream.stream("AllStockQuotes"). filter(Expression.and(Expression.compare(Expression.variable("price"), Compare.Operator.EQUAL, Expression.variable("price").ofStream("Foo")), Expression.compare(Expression.variable("try") .ofStream("Foo"), Compare.Operator.LESS_THAN, Expression.value(5))))). select(Selector.selector(). select("symbol", Expression.variable("symbol")). select("avgPrice", Expression.function("avg", Expression.variable("price")))); AssertJUnit.assertEquals(api, query); }
Example #15
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 6 votes |
@Test public void testCreatingReturnFilterQueryWithExtension2() { Query query = Query.query(); Window window1 = new Window("ext", "Foo"); query.from( InputStream.stream("StockStream"). filter(Expression.and(Expression.compare(Expression.function("ext", "FooBarCond", Expression .value(7), Expression.value(9.5)), Compare.Operator.GREATER_THAN, Expression.variable("price")), Expression.function("ext", "BarCond", Expression.value(100), Expression.variable("volume") ) ) ).function("ext", "Foo", Expression.value(67), Expression.value(89)). window(window1) ); query.select( Selector.selector(). select("symbol", Expression.variable("symbol")). select("avgPrice", Expression.function("ext", "avg", Expression.variable("price"))) ); }
Example #16
Source File: FilterTestCase1.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testFilterQuery68() throws InterruptedException { log.info("Filter test68"); SiddhiManager siddhiManager = new SiddhiManager(); StreamDefinition cseEventStream = StreamDefinition.id("cseEventStream").attribute("symbol", Attribute.Type .STRING).attribute("price", Attribute.Type.DOUBLE).attribute("volume", Attribute.Type.LONG); Query query = new Query(); query.from(InputStream.stream("cseEventStream").filter(Expression.compare(Expression.variable("price"), Compare.Operator.LESS_THAN_EQUAL, Expression.value(100f)))); query.annotation(Annotation.annotation("info").element("name", "query1")); query.select(Selector.selector().select("symbol", Expression.variable("symbol")).select("price", Expression .variable("price"))); query.insertInto("outputStream"); SiddhiApp siddhiApp = new SiddhiApp("ep1"); siddhiApp.defineStream(cseEventStream); siddhiApp.addQuery(query); SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp); siddhiAppRuntime.addCallback("query1", new QueryCallback() { @Override public void receive(long timeStamp, Event[] inEvents, Event[] removeEvents) { EventPrinter.print(timeStamp, inEvents, removeEvents); count.addAndGet(inEvents.length); } }); InputHandler inputHandler = siddhiAppRuntime.getInputHandler("cseEventStream"); siddhiAppRuntime.start(); inputHandler.send(new Object[]{"WSO2", 50d, 60L}); inputHandler.send(new Object[]{"WSO2", 70d, 40L}); inputHandler.send(new Object[]{"WSO2", 44d, 200L}); SiddhiTestHelper.waitForEvents(10, 3, count, 100); siddhiAppRuntime.shutdown(); }
Example #17
Source File: FilterTestCase1.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testFilterQuery76() throws InterruptedException { log.info("Filter test76"); SiddhiManager siddhiManager = new SiddhiManager(); StreamDefinition cseEventStream = StreamDefinition.id("cseEventStream").attribute("symbol", Attribute.Type .STRING).attribute("price", Attribute.Type.FLOAT).attribute("volume", Attribute.Type.LONG); Query query = new Query(); query.from(InputStream.stream("cseEventStream").filter(Expression.compare(Expression.variable("volume"), Compare.Operator.LESS_THAN_EQUAL, Expression.value(50d)))); query.annotation(Annotation.annotation("info").element("name", "query1")); query.select(Selector.selector().select("symbol", Expression.variable("symbol")).select("price", Expression .variable("price"))); query.insertInto("outputStream"); SiddhiApp siddhiApp = new SiddhiApp("ep1"); siddhiApp.defineStream(cseEventStream); siddhiApp.addQuery(query); SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp); siddhiAppRuntime.addCallback("query1", new QueryCallback() { @Override public void receive(long timeStamp, Event[] inEvents, Event[] removeEvents) { EventPrinter.print(timeStamp, inEvents, removeEvents); count.addAndGet(inEvents.length); } }); InputHandler inputHandler = siddhiAppRuntime.getInputHandler("cseEventStream"); siddhiAppRuntime.start(); inputHandler.send(new Object[]{"WSO2", 50f, 60L}); inputHandler.send(new Object[]{"WSO2", 70f, 40L}); inputHandler.send(new Object[]{"WSO2", 44f, 200L}); SiddhiTestHelper.waitForEvents(10, 1, count, 100); siddhiAppRuntime.shutdown(); }
Example #18
Source File: FilterTestCase2.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testFilterQuery93() throws InterruptedException { log.info("Filter test93"); SiddhiManager siddhiManager = new SiddhiManager(); StreamDefinition cseEventStream = StreamDefinition.id("cseEventStream").attribute("symbol", Attribute.Type .STRING).attribute("price", Attribute.Type.FLOAT).attribute("volume", Attribute.Type.LONG).attribute ("quantity", Attribute.Type.INT); Query query = new Query(); query.from(InputStream.stream("cseEventStream").filter(Expression.compare(Expression.variable("volume"), Compare.Operator.LESS_THAN, Expression.value(100f)))); query.annotation(Annotation.annotation("info").element("name", "query1")); query.select(Selector.selector().select("symbol", Expression.variable("symbol")).select("price", Expression .variable("price")).select("quantity", Expression.variable("quantity"))); query.insertInto("outputStream"); SiddhiApp siddhiApp = new SiddhiApp("ep1"); siddhiApp.defineStream(cseEventStream); siddhiApp.addQuery(query); SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp); siddhiAppRuntime.addCallback("query1", new QueryCallback() { @Override public void receive(long timeStamp, Event[] inEvents, Event[] removeEvents) { EventPrinter.print(timeStamp, inEvents, removeEvents); count.addAndGet(inEvents.length); } }); InputHandler inputHandler = siddhiAppRuntime.getInputHandler("cseEventStream"); siddhiAppRuntime.start(); inputHandler.send(new Object[]{"WSO2", 50f, 60L, 6}); inputHandler.send(new Object[]{"WSO2", 70f, 40L, 10}); inputHandler.send(new Object[]{"WSO2", 44f, 200L, 56}); SiddhiTestHelper.waitForEvents(10, 2, count, 100); AssertJUnit.assertEquals(2, count.get()); siddhiAppRuntime.shutdown(); }
Example #19
Source File: InputStreamParser.java From siddhi with Apache License 2.0 | 5 votes |
/** * Parse an InputStream returning corresponding StreamRuntime * * @param inputStream input stream to be parsed * @param streamDefinitionMap map containing user given stream definitions * @param tableDefinitionMap table definition map * @param windowDefinitionMap window definition map * @param aggregationDefinitionMap aggregation definition map * @param tableMap Table Map * @param windowMap event window map * @param aggregationMap aggregator map * @param executors List to hold VariableExpressionExecutors to update after query parsing * @param outputExpectsExpiredEvents is expired events sent as output * @param siddhiQueryContext Siddhi query context. * @return StreamRuntime */ public static StreamRuntime parse(InputStream inputStream, Query query, Map<String, AbstractDefinition> streamDefinitionMap, Map<String, AbstractDefinition> tableDefinitionMap, Map<String, AbstractDefinition> windowDefinitionMap, Map<String, AbstractDefinition> aggregationDefinitionMap, Map<String, Table> tableMap, Map<String, Window> windowMap, Map<String, AggregationRuntime> aggregationMap, List<VariableExpressionExecutor> executors, boolean outputExpectsExpiredEvents, SiddhiQueryContext siddhiQueryContext) { if (inputStream instanceof BasicSingleInputStream || inputStream instanceof SingleInputStream) { SingleInputStream singleInputStream = (SingleInputStream) inputStream; ProcessStreamReceiver processStreamReceiver = new ProcessStreamReceiver(singleInputStream.getStreamId(), siddhiQueryContext); return SingleInputStreamParser.parseInputStream((SingleInputStream) inputStream, executors, streamDefinitionMap, tableDefinitionMap, windowDefinitionMap, aggregationDefinitionMap, tableMap, new MetaStreamEvent(), processStreamReceiver, true, outputExpectsExpiredEvents, false, false, siddhiQueryContext); } else if (inputStream instanceof JoinInputStream) { return JoinInputStreamParser.parseInputStream(((JoinInputStream) inputStream), query, streamDefinitionMap, tableDefinitionMap, windowDefinitionMap, aggregationDefinitionMap, tableMap, windowMap, aggregationMap, executors, outputExpectsExpiredEvents, siddhiQueryContext); } else if (inputStream instanceof StateInputStream) { MetaStateEvent metaStateEvent = new MetaStateEvent(inputStream.getAllStreamIds().size()); return StateInputStreamParser.parseInputStream(((StateInputStream) inputStream), metaStateEvent, streamDefinitionMap, tableDefinitionMap, windowDefinitionMap, aggregationDefinitionMap, tableMap, executors, siddhiQueryContext); } else { throw new OperationNotSupportedException(); } }
Example #20
Source File: FilterTestCase1.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testFilterQuery82() throws InterruptedException { log.info("Filter test82"); SiddhiManager siddhiManager = new SiddhiManager(); StreamDefinition cseEventStream = StreamDefinition.id("cseEventStream").attribute("symbol", Attribute.Type .STRING).attribute("price", Attribute.Type.DOUBLE).attribute("volume", Attribute.Type.DOUBLE); Query query = new Query(); query.from(InputStream.stream("cseEventStream").filter(Expression.compare(Expression.variable("price"), Compare.Operator.LESS_THAN, Expression.value(50)))); query.annotation(Annotation.annotation("info").element("name", "query1")); query.select(Selector.selector().select("symbol", Expression.variable("symbol")).select("price", Expression .variable("price"))); query.insertInto("outputStream"); SiddhiApp siddhiApp = new SiddhiApp("ep1"); siddhiApp.defineStream(cseEventStream); siddhiApp.addQuery(query); SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp); siddhiAppRuntime.addCallback("query1", new QueryCallback() { @Override public void receive(long timeStamp, Event[] inEvents, Event[] removeEvents) { EventPrinter.print(timeStamp, inEvents, removeEvents); count.addAndGet(inEvents.length); } }); InputHandler inputHandler = siddhiAppRuntime.getInputHandler("cseEventStream"); siddhiAppRuntime.start(); inputHandler.send(new Object[]{"WSO2", 50d, 60d}); inputHandler.send(new Object[]{"WSO2", 70d, 40d}); inputHandler.send(new Object[]{"WSO2", 44d, 200d}); SiddhiTestHelper.waitForEvents(10, 1, count, 100); siddhiAppRuntime.shutdown(); }
Example #21
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 5 votes |
@Test(expectedExceptions = UnsupportedAttributeTypeException.class) public void testCreatingReturnFilterQueryLimitAndSortError() { Query query = Query.query(); query.from( InputStream.stream("StockStream")); query.select( Selector.selector(). select("symbol", Expression.variable("symbol")). orderBy(Expression.variable("avgPrice")). limit(Expression.value(5.0)) ); }
Example #22
Source File: PatternQueryTestCase.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testPatternQuery14() { Query query = Query.query(); query.from( InputStream.patternStream( State.next( State.every( State.stream(InputStream.stream("e1", "Stream1").filter(Expression.compare (Expression.variable("price"), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(30))))), State.next( State.zeroOrMany( State.stream(InputStream.stream("e2", "Stream1").filter(Expression .compare(Expression.variable("price").ofStream("e2", Variable .LAST), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(20)))) ), State.next( State.stream(InputStream.stream("e3", "Stream2").filter(Expression .compare(Expression.variable("price"), Compare.Operator.GREATER_THAN_EQUAL, Expression.variable("price").ofStream("e1")))), State.stream(InputStream.stream("e4", "Stream3").filter(Expression .compare(Expression.variable("price"), Compare.Operator.GREATER_THAN, Expression.value(74))))) ) ) ) ); query.select( Selector.selector(). select("symbol", Expression.variable("symbol").ofStream("e1")). select("avgPrice", Expression.function("avg", Expression.variable("price").ofStream("e2"))) ); query.insertInto("OutputStream"); }
Example #23
Source File: FilterTestCase1.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testFilterQuery65() throws InterruptedException { log.info("Filter test65"); SiddhiManager siddhiManager = new SiddhiManager(); StreamDefinition cseEventStream = StreamDefinition.id("cseEventStream").attribute("symbol", Attribute.Type .STRING).attribute("price", Attribute.Type.FLOAT).attribute("volume", Attribute.Type.LONG); Query query = new Query(); query.from(InputStream.stream("cseEventStream").filter(Expression.compare(Expression.variable("volume"), Compare.Operator.EQUAL, Expression.value(40)))); query.annotation(Annotation.annotation("info").element("name", "query1")); query.select(Selector.selector().select("symbol", Expression.variable("symbol")).select("price", Expression .variable("price"))); query.insertInto("outputStream"); SiddhiApp siddhiApp = new SiddhiApp("ep1"); siddhiApp.defineStream(cseEventStream); siddhiApp.addQuery(query); SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp); siddhiAppRuntime.addCallback("query1", new QueryCallback() { @Override public void receive(long timeStamp, Event[] inEvents, Event[] removeEvents) { EventPrinter.print(timeStamp, inEvents, removeEvents); count.addAndGet(inEvents.length); } }); InputHandler inputHandler = siddhiAppRuntime.getInputHandler("cseEventStream"); siddhiAppRuntime.start(); inputHandler.send(new Object[]{"WSO2", 50f, 60L}); inputHandler.send(new Object[]{"WSO2", 70f, 40L}); inputHandler.send(new Object[]{"WSO2", 44f, 200L}); SiddhiTestHelper.waitForEvents(10, 1, count, 100); siddhiAppRuntime.shutdown(); }
Example #24
Source File: FilterTestCase2.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testFilterQuery105() throws InterruptedException { log.info("Filter test105"); SiddhiManager siddhiManager = new SiddhiManager(); StreamDefinition cseEventStream = StreamDefinition.id("cseEventStream").attribute("symbol", Attribute.Type .STRING).attribute("price", Attribute.Type.FLOAT).attribute("volume", Attribute.Type.DOUBLE) .attribute("quantity", Attribute.Type.INT); Query query = new Query(); query.from(InputStream.stream("cseEventStream").filter(Expression.compare(Expression.variable("quantity"), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(15)))); query.annotation(Annotation.annotation("info").element("name", "query1")); query.select(Selector.selector().select("symbol", Expression.variable("symbol")).select("price", Expression .variable("price")).select("quantity", Expression.variable("quantity"))); query.insertInto("outputStream"); SiddhiApp siddhiApp = new SiddhiApp("ep1"); siddhiApp.defineStream(cseEventStream); siddhiApp.addQuery(query); SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp); siddhiAppRuntime.addCallback("query1", new QueryCallback() { @Override public void receive(long timeStamp, Event[] inEvents, Event[] removeEvents) { EventPrinter.print(timeStamp, inEvents, removeEvents); count.addAndGet(inEvents.length); } }); InputHandler inputHandler = siddhiAppRuntime.getInputHandler("cseEventStream"); siddhiAppRuntime.start(); inputHandler.send(new Object[]{"WSO2", 50f, 60d, 6}); inputHandler.send(new Object[]{"WSO2", 70f, 40d, 10}); inputHandler.send(new Object[]{"WSO2", 44f, 200d, 56}); SiddhiTestHelper.waitForEvents(10, 1, count, 100); AssertJUnit.assertEquals(1, count.get()); siddhiAppRuntime.shutdown(); }
Example #25
Source File: FilterTestCase1.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testFilterQuery78() throws InterruptedException { log.info("Filter test78"); SiddhiManager siddhiManager = new SiddhiManager(); StreamDefinition cseEventStream = StreamDefinition.id("cseEventStream").attribute("symbol", Attribute.Type .STRING).attribute("price", Attribute.Type.FLOAT).attribute("volume", Attribute.Type.LONG); Query query = new Query(); query.from(InputStream.stream("cseEventStream").filter(Expression.compare(Expression.variable("volume"), Compare.Operator.LESS_THAN_EQUAL, Expression.value(50)))); query.annotation(Annotation.annotation("info").element("name", "query1")); query.select(Selector.selector().select("symbol", Expression.variable("symbol")).select("price", Expression .variable("price"))); query.insertInto("outputStream"); SiddhiApp siddhiApp = new SiddhiApp("ep1"); siddhiApp.defineStream(cseEventStream); siddhiApp.addQuery(query); SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp); siddhiAppRuntime.addCallback("query1", new QueryCallback() { @Override public void receive(long timeStamp, Event[] inEvents, Event[] removeEvents) { EventPrinter.print(timeStamp, inEvents, removeEvents); count.addAndGet(inEvents.length); } }); InputHandler inputHandler = siddhiAppRuntime.getInputHandler("cseEventStream"); siddhiAppRuntime.start(); inputHandler.send(new Object[]{"WSO2", 50f, 60L}); inputHandler.send(new Object[]{"WSO2", 70f, 40L}); inputHandler.send(new Object[]{"WSO2", 44f, 200L}); SiddhiTestHelper.waitForEvents(10, 1, count, 100); siddhiAppRuntime.shutdown(); }
Example #26
Source File: PatternQueryTestCase.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testPatternQuery11() { Query query = Query.query(); query.from( InputStream.patternStream( State.next( State.stream(InputStream.stream("e1", "Stream1") .filter(Expression.compare(Expression.variable("price"), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(30)))), State.next(State.logicalNot(State.stream(InputStream.stream("Stream1") .filter(Expression.compare(Expression.variable("price"), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(20)))), new TimeConstant(1000)), State.stream(InputStream.stream("e3", "Stream2").filter(Expression.compare (Expression.variable("price"), Compare.Operator.GREATER_THAN_EQUAL, Expression.variable("price").ofStream("e1"))))) ) ) ); query.select( Selector.selector(). select("symbol", Expression.variable("symbol").ofStream("e1")). select("avgPrice", Expression.function("avg", Expression.variable("price").ofStream("e2"))). groupBy(Expression.variable("symbol").ofStream("e1")). having(Expression.compare(Expression.variable("avgPrice"), Compare.Operator.GREATER_THAN, Expression.value(50))) ); query.insertInto("OutputStream"); }
Example #27
Source File: PatternQueryTestCase.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testPatternQuery10() { Query query = Query.query(); query.from( InputStream.patternStream( State.next( State.every( State.stream(InputStream.stream("e1", "Stream1").filter(Expression.compare (Expression.variable("price"), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(30))))), State.next( State.next( State.stream(InputStream.stream("e2", "Stream1").filter(Expression .compare(Expression.variable("price").ofStream("e2", Variable .LAST), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(20)))), State.stream(InputStream.stream("e3", "Stream2").filter(Expression .compare(Expression.variable("price"), Compare.Operator.GREATER_THAN_EQUAL, Expression.variable("price").ofStream("e1"))))), State.stream(InputStream.stream("e4", "Stream3").filter(Expression.compare (Expression.variable("price"), Compare.Operator.GREATER_THAN, Expression.value(74)))) ) ), Expression.Time.minute(4) ) ); query.select( Selector.selector(). select("symbol", Expression.variable("symbol").ofStream("e1")). select("avgPrice", Expression.function("avg", Expression.variable("price").ofStream("e2"))) ); query.insertInto("OutputStream"); }
Example #28
Source File: SimpleQueryTestCase.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testCreatingFilterQueryWithFaultStream3() { Query query = Query.query(); query.from( InputStream.faultStream("StockStream"). filter( Expression.and( Expression.compare( Expression.add(Expression.value(7), Expression.value(9.5)), Compare.Operator.GREATER_THAN, Expression.variable("price")), Expression.compare( Expression.value(100), Compare.Operator.GREATER_THAN_EQUAL, Expression.variable("volume") ) ) ) ); query.select( Selector.selector(). select("symbol", Expression.variable("symbol")). select("avgPrice", Expression.function("avg", Expression.variable("symbol"))). groupBy(Expression.variable("symbol")). having(Expression.compare(Expression.variable("avgPrice"), Compare.Operator.GREATER_THAN_EQUAL, Expression.value(50) )) ); query.insertIntoFault("OutStockStream", OutputStream.OutputEventType.CURRENT_EVENTS); SiddhiApp.siddhiApp("test").addQuery(query); }
Example #29
Source File: FilterTestCase2.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testFilterQuery92() throws InterruptedException { log.info("Filter test92"); SiddhiManager siddhiManager = new SiddhiManager(); StreamDefinition cseEventStream = StreamDefinition.id("cseEventStream").attribute("symbol", Attribute.Type .STRING).attribute("price", Attribute.Type.FLOAT).attribute("volume", Attribute.Type.LONG).attribute ("quantity", Attribute.Type.INT); Query query = new Query(); query.from(InputStream.stream("cseEventStream").filter(Expression.compare(Expression.variable("volume"), Compare.Operator.LESS_THAN, Expression.value(100d)))); query.annotation(Annotation.annotation("info").element("name", "query1")); query.select(Selector.selector().select("symbol", Expression.variable("symbol")).select("price", Expression .variable("price")).select("quantity", Expression.variable("quantity"))); query.insertInto("outputStream"); SiddhiApp siddhiApp = new SiddhiApp("ep1"); siddhiApp.defineStream(cseEventStream); siddhiApp.addQuery(query); SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp); siddhiAppRuntime.addCallback("query1", new QueryCallback() { @Override public void receive(long timeStamp, Event[] inEvents, Event[] removeEvents) { EventPrinter.print(timeStamp, inEvents, removeEvents); count.addAndGet(inEvents.length); } }); InputHandler inputHandler = siddhiAppRuntime.getInputHandler("cseEventStream"); siddhiAppRuntime.start(); inputHandler.send(new Object[]{"WSO2", 50f, 60L, 6}); inputHandler.send(new Object[]{"WSO2", 70f, 40L, 10}); inputHandler.send(new Object[]{"WSO2", 44f, 200L, 56}); SiddhiTestHelper.waitForEvents(10, 2, count, 100); AssertJUnit.assertEquals(2, count.get()); siddhiAppRuntime.shutdown(); }
Example #30
Source File: FilterTestCase1.java From siddhi with Apache License 2.0 | 5 votes |
@Test public void testFilterQuery77() throws InterruptedException { log.info("Filter test77"); SiddhiManager siddhiManager = new SiddhiManager(); StreamDefinition cseEventStream = StreamDefinition.id("cseEventStream").attribute("symbol", Attribute.Type .STRING).attribute("price", Attribute.Type.FLOAT).attribute("volume", Attribute.Type.LONG); Query query = new Query(); query.from(InputStream.stream("cseEventStream").filter(Expression.compare(Expression.variable("volume"), Compare.Operator.LESS_THAN_EQUAL, Expression.value(50f)))); query.annotation(Annotation.annotation("info").element("name", "query1")); query.select(Selector.selector().select("symbol", Expression.variable("symbol")).select("price", Expression .variable("price"))); query.insertInto("outputStream"); SiddhiApp siddhiApp = new SiddhiApp("ep1"); siddhiApp.defineStream(cseEventStream); siddhiApp.addQuery(query); SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp); siddhiAppRuntime.addCallback("query1", new QueryCallback() { @Override public void receive(long timeStamp, Event[] inEvents, Event[] removeEvents) { EventPrinter.print(timeStamp, inEvents, removeEvents); count.addAndGet(inEvents.length); } }); InputHandler inputHandler = siddhiAppRuntime.getInputHandler("cseEventStream"); siddhiAppRuntime.start(); inputHandler.send(new Object[]{"WSO2", 50f, 60L}); inputHandler.send(new Object[]{"WSO2", 70f, 40L}); inputHandler.send(new Object[]{"WSO2", 44f, 200L}); SiddhiTestHelper.waitForEvents(10, 1, count, 100); siddhiAppRuntime.shutdown(); }