Example #1
0
        private static string GetValue(object obj, SubscriberMap subscriberMap, SubscriberSystem subscriberSystem = null, int group = 0)
        {
            var propname = subscriberMap.Field;

            var val = obj.GetPropValue(propname);

            if (null == val)
            {
                return($"NULL");
            }

            if (subscriberMap.Type == "Date")
            {
                DateTime vall = obj.GetPropValue <DateTime>(propname);
                return($"'{vall:yyyy MMM dd}'");
            }
            else
            {
                if (null != subscriberSystem)
                {
                    val = GetTranslation($"{subscriberMap.Name}.{subscriberMap.Field}", val.ToString(),
                                         subscriberSystem, group);
                }
            }

            return($"'{val}'");
        }
Example #2
0
        public void TestVariables()
        {
            String[]      fields = "myvar".Split(',');
            SubscriberMap subscriberCreateVariable = new SubscriberMap();
            String        stmtTextCreate           = "create variable string myvar = 'abc'";
            EPStatement   stmt = _epService.EPAdministrator.CreateEPL(stmtTextCreate);

            stmt.Subscriber = subscriberCreateVariable;

            SubscriberMap subscriberSetVariable = new SubscriberMap();
            String        stmtTextSet           = "on SupportBean set myvar = TheString";

            stmt            = _epService.EPAdministrator.CreateEPL(stmtTextSet);
            stmt.Subscriber = subscriberSetVariable;

            _epService.EPRuntime.SendEvent(new SupportBean("def", 1));
            EPAssertionUtil.AssertPropsMap(subscriberCreateVariable.GetAndResetIndicate()[0], fields, new Object[] { "def" });
            EPAssertionUtil.AssertPropsMap(subscriberSetVariable.GetAndResetIndicate()[0], fields, new Object[] { "def" });
        }
        private void TryAssertionNamedWindow(EPServiceProvider epService, EventRepresentationChoice eventRepresentationEnum)
        {
            var fields = "key,value".Split(',');
            var subscriberNamedWindow = new SubscriberMap();
            var stmtTextCreate        = eventRepresentationEnum.GetAnnotationText() + " create window MyWindow#keepall as select TheString as key, IntPrimitive as value from SupportBean";
            var stmt = epService.EPAdministrator.CreateEPL(stmtTextCreate);

            stmt.Subscriber = subscriberNamedWindow;

            var subscriberInsertInto = new SubscriberFields();
            var stmtTextInsertInto   = "insert into MyWindow select TheString as key, IntPrimitive as value from SupportBean";

            stmt            = epService.EPAdministrator.CreateEPL(stmtTextInsertInto);
            stmt.Subscriber = subscriberInsertInto;

            epService.EPRuntime.SendEvent(new SupportBean("E1", 1));
            EPAssertionUtil.AssertPropsMap(subscriberNamedWindow.GetAndResetIndicate()[0], fields, new object[] { "E1", 1 });
            EPAssertionUtil.AssertEqualsExactOrder(new object[][] { new object[] { "E1", 1 } }, subscriberInsertInto.GetAndResetIndicate());

            // test on-delete
            var subscriberDelete = new SubscriberMap();
            var stmtTextDelete   = "on SupportMarketDataBean s0 delete from MyWindow s1 where s0.symbol = s1.key";

            stmt            = epService.EPAdministrator.CreateEPL(stmtTextDelete);
            stmt.Subscriber = subscriberDelete;

            epService.EPRuntime.SendEvent(new SupportMarketDataBean("E1", 0, 1L, ""));
            EPAssertionUtil.AssertPropsMap(subscriberDelete.GetAndResetIndicate()[0], fields, new object[] { "E1", 1 });

            // test on-select
            var subscriberSelect = new SubscriberMap();
            var stmtTextSelect   = "on SupportMarketDataBean s0 select key, value from MyWindow s1";

            stmt            = epService.EPAdministrator.CreateEPL(stmtTextSelect);
            stmt.Subscriber = subscriberSelect;

            epService.EPRuntime.SendEvent(new SupportBean("E2", 2));
            epService.EPRuntime.SendEvent(new SupportMarketDataBean("M1", 0, 1L, ""));
            EPAssertionUtil.AssertPropsMap(subscriberSelect.GetAndResetIndicate()[0], fields, new object[] { "E2", 2 });

            epService.EPAdministrator.DestroyAllStatements();
        }
        private void RunAssertionVariables(EPServiceProvider epService)
        {
            var fields = "myvar".Split(',');
            var subscriberCreateVariable = new SubscriberMap();
            var stmtTextCreate           = "create variable string myvar = 'abc'";
            var stmt = epService.EPAdministrator.CreateEPL(stmtTextCreate);

            stmt.Subscriber = subscriberCreateVariable;

            var subscriberSetVariable = new SubscriberMap();
            var stmtTextSet           = "on SupportBean set myvar = TheString";

            stmt            = epService.EPAdministrator.CreateEPL(stmtTextSet);
            stmt.Subscriber = subscriberSetVariable;

            epService.EPRuntime.SendEvent(new SupportBean("def", 1));
            EPAssertionUtil.AssertPropsMap(subscriberCreateVariable.GetAndResetIndicate()[0], fields, new object[] { "def" });
            EPAssertionUtil.AssertPropsMap(subscriberSetVariable.GetAndResetIndicate()[0], fields, new object[] { "def" });

            stmt.Dispose();
        }