public IEnumerator <EventBean> GetEnumerator() { var eventBean = _eventReference.Get(); if (eventBean != null) { yield return(eventBean); } }
public PresentedParameter PresentPopup(IParameterDescriptor param, Action updateCallback) { var factory = param.GetParameterizedObjectFactory(); var grid = new Grid(); grid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(4, GridUnitType.Star) }); grid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star), MinWidth = 110, MaxWidth = 130 }); var button = new Button { Content = "Configure →" }; grid.Children.Add(button); Grid.SetColumn(button, 1); var container = new Atomic <IParameterizedObject>(); void Setter(object obj) => container.Set((IParameterizedObject)obj); object Getter() => container.Get(); void Updater(ParameterStateType state, bool value) { if (state != ParameterStateType.Enabled) { return; } button.IsEnabled = value; } button.Click += (sender, e) => { var subParams = factory.GetParameters(param); var context = factory.Parse(param, container.Get()); var configWindow = new ParameterizedConfigWindow(param.Name ?? "Parameter", subParams, context) { Width = 400 }; if (configWindow.ShowDialog(out var @params)) { container.Set(factory.Create(param, @params)); updateCallback(); } }; return(new PresentedParameter(param, grid, Getter, Setter, null, Updater)); }
public override void AddEvent(EventBean theEvent) { if (_eventReference.Get() != null) { throw new EPException("Unique index violation, table '" + TableMetadata.TableName + "' " + "is a declared to hold a single un-keyed row"); } if (InstrumentationHelper.ENABLED) { InstrumentationHelper.Get().QTableAddEvent(theEvent); } _eventReference.Set((ObjectArrayBackedEventBean)theEvent); if (InstrumentationHelper.ENABLED) { InstrumentationHelper.Get().ATableAddEvent(); } }
public IEnumerator <EventBean> GetEnumerator() { var theEvent = _ref.Get(); if (theEvent != null) { yield return(theEvent); } }
public override void AddEvent(EventBean @event) { if (@event.EventType != table.MetaData.InternalEventType) { throw new IllegalStateException("Unexpected event type for add: " + @event.EventType.Name); } if (eventReference.Get() != null) { throw new EPException( "Unique index violation, table '" + table.MetaData.TableName + "' " + "is a declared to hold a single un-keyed row"); } agentInstanceContext.InstrumentationProvider.QTableAddEvent(@event); eventReference.Set((ObjectArrayBackedEventBean) @event); agentInstanceContext.InstrumentationProvider.ATableAddEvent(); }
public void Run(RegressionEnvironment env) { var fields = "eq,neq,sqlneq,nneq".SplitCsv(); var eplReference = new Atomic <string>(); var builder = new SupportEvalBuilder("SupportBean") .WithExpression(fields[0], "IntPrimitive=all(1,IntBoxed)") .WithExpression(fields[1], "IntPrimitive!=all(1,IntBoxed)") .WithExpression(fields[2], "IntPrimitive<>all(1,IntBoxed)") .WithExpression(fields[3], "not IntPrimitive=all(1,IntBoxed)") .WithStatementConsumer(stmt => eplReference.Set(stmt.GetProperty(StatementProperty.EPL).ToString())); // in the format IntPrimitive, IntBoxed int[][] testdata = { new[] { 1, 1 }, new[] { 1, 2 }, new[] { 2, 2 }, new[] { 2, 1 }, }; object[][] result = { new object[] { true, false, false, false }, // 1, 1 new object[] { false, false, false, true }, // 1, 2 new object[] { false, false, false, true }, // 2, 2 new object[] { false, true, true, true } // 2, 1 }; for (var i = 0; i < testdata.Length; i++) { var bean = new SupportBean("E", testdata[i][0]); bean.IntBoxed = testdata[i][1]; builder.WithAssertion(bean).Expect(fields, result[i]); } builder.Run(env); env.UndeployAll(); // test OM var epl = eplReference.Get(); var model = env.EplToModel(epl); Assert.AreEqual(epl.Replace("<>", "!="), model.ToEPL()); env.CompileDeploy(model).AddListener("s0"); for (var i = 0; i < testdata.Length; i++) { var bean = new SupportBean("E", testdata[i][0]); bean.IntBoxed = testdata[i][1]; env.SendEventBean(bean); EPAssertionUtil.AssertProps(env.Listener("s0").AssertOneGetNewAndReset(), fields, result[i]); } env.UndeployAll(); }
public void Run(RegressionEnvironment env) { var fields = "g,ge".SplitCsv(); var eplReference = new Atomic <string>(); var builder = new SupportEvalBuilder("SupportBeanArrayCollMap") .WithExpressions(fields, "LongBoxed>all({1,2},IntArr,IntCol)", "LongBoxed>=all({1,2},IntArr,IntCol)") .WithStatementConsumer(stmt => eplReference.Set(stmt.GetProperty(StatementProperty.EPL).ToString())); var arrayBean = MakeBean(); arrayBean.IntCol = Arrays.AsList(1, 2); arrayBean.LongBoxed = 3L; builder.WithAssertion(arrayBean).Expect(fields, true, true); arrayBean = MakeBean(); arrayBean.LongBoxed = 2L; env.SendEventBean(arrayBean); builder.WithAssertion(arrayBean).Expect(fields, false, true); arrayBean = new SupportBeanArrayCollMap(new[] { 1, 3 }); arrayBean.IntCol = Arrays.AsList(1, 2); arrayBean.LongBoxed = 3L; env.SendEventBean(arrayBean); builder.WithAssertion(arrayBean).Expect(fields, false, true); arrayBean = new SupportBeanArrayCollMap(new[] { 1, 2 }); arrayBean.IntCol = Arrays.AsList(1, 3); arrayBean.LongBoxed = 3L; env.SendEventBean(arrayBean); builder.WithAssertion(arrayBean).Expect(fields, false, true); builder.Run(env); env.UndeployAll(); // test OM var epl = eplReference.Get(); var model = env.EplToModel(epl); Assert.AreEqual(epl.Replace("<>", "!="), model.ToEPL()); env.CompileDeploy(model).AddListener("s0"); arrayBean = new SupportBeanArrayCollMap(new[] { 1, 2 }); arrayBean.IntCol = Arrays.AsList(1, 2); arrayBean.LongBoxed = 3L; env.SendEventBean(arrayBean); EPAssertionUtil.AssertProps(env.Listener("s0").AssertOneGetNewAndReset(), fields, true, true); env.UndeployAll(); }
public static ExprTimePeriod TimePeriodGetExprAllParams(EsperEPL2GrammarParser.TimePeriodContext ctx, IDictionary <ITree, ExprNode> astExprNodeMap, VariableService variableService, StatementSpecRaw spec, ConfigurationInformation config) { var nodes = new ExprNode[8]; for (var i = 0; i < ctx.ChildCount; i++) { var unitRoot = ctx.GetChild(i); ExprNode valueExpr; if (ASTUtil.IsTerminatedOfType(unitRoot.GetChild(0), EsperEPL2GrammarLexer.IDENT)) { var ident = unitRoot.GetChild(0).GetText(); valueExpr = ASTExprHelper.ResolvePropertyOrVariableIdentifier(ident, variableService, spec); } else { var @ref = new Atomic <ExprNode>(); ExprAction action = (exprNode, astExprNodeMapX, nodeX) => { astExprNodeMapX.Remove(nodeX); @ref.Set(exprNode); }; ASTExprHelper.RecursiveFindRemoveChildExprNode(unitRoot.GetChild(0), astExprNodeMap, action); valueExpr = @ref.Get(); } if (ASTUtil.GetRuleIndexIfProvided(unitRoot) == EsperEPL2GrammarParser.RULE_millisecondPart) { nodes[7] = valueExpr; } if (ASTUtil.GetRuleIndexIfProvided(unitRoot) == EsperEPL2GrammarParser.RULE_secondPart) { nodes[6] = valueExpr; } if (ASTUtil.GetRuleIndexIfProvided(unitRoot) == EsperEPL2GrammarParser.RULE_minutePart) { nodes[5] = valueExpr; } if (ASTUtil.GetRuleIndexIfProvided(unitRoot) == EsperEPL2GrammarParser.RULE_hourPart) { nodes[4] = valueExpr; } if (ASTUtil.GetRuleIndexIfProvided(unitRoot) == EsperEPL2GrammarParser.RULE_dayPart) { nodes[3] = valueExpr; } if (ASTUtil.GetRuleIndexIfProvided(unitRoot) == EsperEPL2GrammarParser.RULE_weekPart) { nodes[2] = valueExpr; } if (ASTUtil.GetRuleIndexIfProvided(unitRoot) == EsperEPL2GrammarParser.RULE_monthPart) { nodes[1] = valueExpr; } if (ASTUtil.GetRuleIndexIfProvided(unitRoot) == EsperEPL2GrammarParser.RULE_yearPart) { nodes[0] = valueExpr; } } ExprTimePeriod timeNode = new ExprTimePeriodImpl(config.EngineDefaults.ExpressionConfig.TimeZone, nodes[0] != null, nodes[1] != null, nodes[2] != null, nodes[3] != null, nodes[4] != null, nodes[5] != null, nodes[6] != null, nodes[7] != null); if (nodes[0] != null) { timeNode.AddChildNode(nodes[0]); } if (nodes[1] != null) { timeNode.AddChildNode(nodes[1]); } if (nodes[2] != null) { timeNode.AddChildNode(nodes[2]); } if (nodes[3] != null) { timeNode.AddChildNode(nodes[3]); } if (nodes[4] != null) { timeNode.AddChildNode(nodes[4]); } if (nodes[5] != null) { timeNode.AddChildNode(nodes[5]); } if (nodes[6] != null) { timeNode.AddChildNode(nodes[6]); } if (nodes[7] != null) { timeNode.AddChildNode(nodes[7]); } return(timeNode); }
protected ObjectArrayBackedEventBean LockTableReadAndGet(ExprEvaluatorContext context) { ExprTableEvalLockUtil.ObtainLockUnless(_lock, context); return(AggregationState.Get()); }
public IEnumerator<EventBean> GetEnumerator() { return EnumerationHelper.SingletonNullable(_eventReference.Get()); }