public static void deployAddListener(EPCompiled compiledStmt, String stmtName, UpdateListener listener, EPRuntime runtime) { try { EPDeployment deployed = runtime.getDeploymentService().deploy(compiledStmt, new DeploymentOptions().setStatementNameRuntime(ctx -> stmtName)); if (deployed.getStatements().length != 1) { throw new UnsupportedOperationException("This method is designed for a single statement"); } deployed.getStatements()[0].addListener(listener); } catch (EPDeployException e) { throw new RuntimeException(e); } }
public void traverseStatements(BiConsumer<EPDeployment, EPStatement> consumer) { for (String deploymentId : getDeploymentService().getDeployments()) { EPDeployment deployment = getDeploymentService().getDeployment(deploymentId); if (deployment == null) { continue; } for (EPStatement stmt : deployment.getStatements()) { consumer.accept(deployment, stmt); } } }
public void run(RegressionEnvironment env) { EPCompiled compiled = env.compile("select * from SupportBean;select * from SupportBean;"); EPDeployment deployment; try { deployment = env.deployment().deploy(compiled); } catch (EPDeployException e) { throw new RuntimeException(e); } assertEquals("stmt-0", deployment.getStatements()[0].getName()); assertEquals("stmt-1", deployment.getStatements()[1].getName()); env.undeployAll(); } }
private EPStatement compileDeploy(String expression, Configuration config, EPRuntime runtime) { try { CompilerArguments args = new CompilerArguments(config); EPCompiled compiled = EPCompilerProvider.getCompiler().compile(expression, args); EPDeployment deployment = runtime.getDeploymentService().deploy(compiled); // EPL modules can have multiple statements // We return the first statement here. return deployment.getStatements()[0]; } catch (Exception ex) { throw new RuntimeException(ex); } }
private EPStatement compileDeploy(String expression, String statementName) { try { CompilerArguments args = new CompilerArguments(runtime.getRuntimePath()); EPCompiled compiled = EPCompilerProvider.getCompiler().compile(expression, args); DeploymentOptions options = new DeploymentOptions(); options.setStatementNameRuntime(env -> statementName); return runtime.getDeploymentService().deploy(compiled, options).getStatements()[0]; } catch (Exception ex) { throw new RuntimeException("Failed to compile and deploy: " + ex.getMessage(), ex); } } }
public TicksFalloffStatement(EPDeploymentService admin, Configuration configuration, EPCompilerPathable epRuntimePath) { String stmt = "select feed, avg(cnt) as avgCnt, cnt as feedCnt from TicksPerSecond#time(10 sec) " + "group by feed " + "having cnt < avg(cnt) * 0.75 "; CompilerArguments args = new CompilerArguments(configuration); args.getPath().add(epRuntimePath); try { EPCompiled compiled = EPCompilerProvider.getCompiler().compile(stmt, args); statement = admin.deploy(compiled).getStatements()[0]; } catch (Exception ex) { throw new RuntimeException(ex); } }
public static String getFilterAll(EPRuntime runtime) { String[] deployments = runtime.getDeploymentService().getDeployments(); Set<Integer> statements = new HashSet<>(); for (String deployment : deployments) { EPDeployment info = runtime.getDeploymentService().getDeployment(deployment); for (EPStatement statement : info.getStatements()) { EPStatementSPI spi = (EPStatementSPI) statement; statements.add(spi.getStatementId()); } } FilterServiceSPI filterService = ((EPRuntimeSPI) runtime).getServicesContext().getFilterService(); Map<EventTypeIdPair, Map<Integer, List<FilterItem[]>>> pairs = filterService.get(statements); return pairs.toString(); } }
public TicksPerSecondStatement(EPDeploymentService admin, Configuration configuration) { String stmt = "insert into TicksPerSecond " + "select feed, count(*) as cnt from MarketDataEvent#time_batch(1 sec) group by feed"; CompilerArguments args = new CompilerArguments(configuration); args.getOptions().setAccessModifierEventType(env -> NameAccessModifier.PUBLIC); // export the type allowing others to refer to it try { EPCompiled compiled = EPCompilerProvider.getCompiler().compile(stmt, args); statement = admin.deploy(compiled).getStatements()[0]; } catch (Exception ex) { throw new RuntimeException(ex); } }
public void destroy(String statementName) { log.info("Via Java Management JMX proxy: Destroying statement '" + statementName + "'"); for (String deploymentId : runtime.getDeploymentService().getDeployments()) { EPDeployment deployment = runtime.getDeploymentService().getDeployment(deploymentId); for (EPStatement stmt : deployment.getStatements()) { if (statementName.equals(stmt.getName())) { try { runtime.getDeploymentService().undeploy(deploymentId); } catch (EPUndeployException e) { log.warn("Failed to undeploy: " + e.getMessage()); } } } } }
public RegressionEnvironment eplToModelCompileDeploy(String epl) { EPStatementObjectModel copy = eplToModel(epl); Assert.assertEquals(epl.trim(), copy.toEPL()); EPCompiled compiled = compile(copy, new CompilerArguments(getConfiguration())); EPDeployment result = tryDeploy(compiled); EPStatement stmt = result.getStatements()[0]; Assert.assertEquals(epl.trim(), stmt.getProperty(StatementProperty.EPL)); return this; }
public RegressionEnvironment eplToModelCompileDeploy(String epl, RegressionPath path) { EPStatementObjectModel copy = eplToModel(epl); Assert.assertEquals(epl.trim(), copy.toEPL()); CompilerArguments args = getArgsWithExportToPath(path); EPCompiled compiled = compile(copy, args); path.add(compiled); EPDeployment result = tryDeploy(compiled); Assert.assertEquals(epl.trim(), result.getStatements()[0].getProperty(StatementProperty.EPL)); return this; }
public static void createStatement(EPRuntime runtime) { String epl = "select istream ipAddress, avg(duration) from SampleEvent#time(10 sec) group by ipAddress output snapshot every 2 seconds order by ipAddress asc"; EPStatement statement; try { CompilerArguments args = new CompilerArguments(runtime.getRuntimePath()); EPCompiled compiled = EPCompilerProvider.getCompiler().compile(epl, args); statement = runtime.getDeploymentService().deploy(compiled).getStatements()[0]; } catch (Exception ex) { throw new RuntimeException("Failed to compile and deploy: " + ex.getMessage(), ex); } statement.addListener(new UpdateListener() { public void update(EventBean[] newEvents, EventBean[] oldEvents, EPStatement statement, EPRuntime runtime) { if (newEvents == null) { return; } for (int i = 0; i < newEvents.length; i++) { if (log.isInfoEnabled()) { log.info("IPAddress: " + newEvents[i].get("ipAddress") + " Avg Duration: " + newEvents[i].get("avg(duration)")); } } } }); } }
protected static EPStatement compileDeploy(String epl, EPRuntime runtime) { try { CompilerArguments args = new CompilerArguments(); args.getPath().add(runtime.getRuntimePath()); EPCompiled compiled = EPCompilerProvider.getCompiler().compile(epl, args); return runtime.getDeploymentService().deploy(compiled).getStatements()[0]; } catch (Exception ex) { throw new RuntimeException(ex); } }
private static EPStatement[] createStmts(RegressionEnvironment env, String[] deploymentIds, String[] statementNames) { assertEquals(deploymentIds.length, statementNames.length); EPStatement[] statements = new EPStatement[statementNames.length]; EPCompiled compiled = env.compile("select * from SupportBean"); for (int i = 0; i < statementNames.length; i++) { final int num = i; try { EPDeployment deployed = env.deployment().deploy(compiled, new DeploymentOptions().setDeploymentId(deploymentIds[i]).setStatementNameRuntime(new StatementNameRuntimeOption() { public String getStatementName(StatementNameRuntimeContext env) { return statementNames[num]; } })); statements[i] = deployed.getStatements()[0]; } catch (EPDeployException e) { throw new RuntimeException(e); } } return statements; } }
private EPStatement compileDeploy(String epl) { try { CompilerArguments args = new CompilerArguments(); args.getPath().add(runtime.getRuntimePath()); args.getOptions().setAccessModifierEventType(env -> NameAccessModifier.PUBLIC); EPCompiled compiled = EPCompilerProvider.getCompiler().compile(epl, args); EPDeployment deployment = runtime.getDeploymentService().deploy(compiled); return deployment.getStatements()[0]; } catch (Exception ex) { throw new RuntimeException(ex); } } }
protected static EPStatement compileDeploy(String epl, EPRuntime runtime) { try { CompilerArguments args = new CompilerArguments(); args.getPath().add(runtime.getRuntimePath()); args.getOptions().setAccessModifierEventType(env -> NameAccessModifier.PUBLIC); EPCompiled compiled = EPCompilerProvider.getCompiler().compile(epl, args); EPDeployment deployment = runtime.getDeploymentService().deploy(compiled); return deployment.getStatements()[0]; } catch (Exception ex) { throw new RuntimeException(ex); } }
public RegressionEnvironment undeployModuleContaining(String statementName) { String[] deployments = runtime.getDeploymentService().getDeployments(); try { for (String deployment : deployments) { EPDeployment info = runtime.getDeploymentService().getDeployment(deployment); for (EPStatement stmt : info.getStatements()) { if (stmt.getName().equals(statementName)) { runtime.getDeploymentService().undeploy(deployment); return this; } } } } catch (EPUndeployException ex) { throw notExpected(ex); } fail("Failed to find deployment with statement '" + statementName + "'"); return this; }
private EPStatement compileDeploy(String epl, EPRuntime runtime) { try { CompilerArguments args = new CompilerArguments(); args.getPath().add(runtime.getRuntimePath()); args.getOptions().setAccessModifierNamedWindow(env -> NameAccessModifier.PUBLIC); // All named windows are visibile args.getConfiguration().getCompiler().getByteCode().setAllowSubscriber(true); // allow subscribers EPCompiled compiled = EPCompilerProvider.getCompiler().compile(epl, args); EPDeployment deployment = runtime.getDeploymentService().deploy(compiled); return deployment.getStatements()[0]; } catch (Exception ex) { throw new RuntimeException(ex); } } }
private EPStatement compileDeploy(String epl, EPRuntime runtime) { try { CompilerArguments args = new CompilerArguments(); args.getPath().add(runtime.getRuntimePath()); args.getOptions().setAccessModifierEventType(env -> NameAccessModifier.PUBLIC); args.getOptions().setAccessModifierNamedWindow(env -> NameAccessModifier.PUBLIC); args.getOptions().setBusModifierEventType(env -> EventTypeBusModifier.BUS); args.setConfiguration(runtime.getConfigurationDeepCopy()); EPCompiled compiled = EPCompilerProvider.getCompiler().compile(epl, args); EPDeployment deployment = runtime.getDeploymentService().deploy(compiled); return deployment.getStatements()[0]; } catch (Exception ex) { throw new RuntimeException(ex); } } }
public void run(RegressionEnvironment env) { EPCompiled compiled = env.readCompile("regression/test_module_9.epl"); EPDeployment result; try { result = env.runtime().getDeploymentService().deploy(compiled); } catch (EPDeployException ex) { throw new RuntimeException(ex); } assertTrue(env.runtime().getDeploymentService().isDeployed(result.getDeploymentId())); assertNotNull(result.getDeploymentId()); assertEquals(2, result.getStatements().length); assertEquals(1, env.deployment().getDeployments().length); assertEquals("@Name(\"StmtOne\")" + NEWLINE + "create schema MyEvent(id String, val1 int, val2 int)", env.statement("StmtOne").getProperty(StatementProperty.EPL)); assertEquals("@Name(\"StmtTwo\")" + NEWLINE + "select * from MyEvent", env.statement("StmtTwo").getProperty(StatementProperty.EPL)); assertEquals(0, result.getDeploymentIdDependencies().length); env.undeployAll(); assertFalse(env.runtime().getDeploymentService().isDeployed(result.getDeploymentId())); } }