public void TestFieldExist()
        {
            EventType mySchema = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean));

            Assert.AreEqual(null, PropertyCheckHelper.Exists(mySchema, "LongPrimitive"));
            Assert.IsTrue(PropertyCheckHelper.Exists(mySchema, "dummy") != null);
        }
        public EventBean MakeEvent()
        {
            var theEvent = SupportEventBeanFactory.CreateObject(
                SupportEventTypeFactory.GetInstance(_container), new SupportBean());

            return(theEvent);
        }
Beispiel #3
0
        private static IContainer CreateContainer()
        {
            var baseDirectory = AppDomain.CurrentDomain.BaseDirectory;

            var container = ContainerExtensions.CreateDefaultContainer(false);

            container.Register <IResourceManager>(
                xx => new DefaultResourceManager(
                    true,
                    Path.GetFullPath(Path.Combine(baseDirectory, "..", "..", "..", "etc")),
                    Path.GetFullPath(Path.Combine(baseDirectory, "..", "..", "..", "..", "etc")),
                    Path.GetFullPath(Path.Combine(baseDirectory, "..", "..", "..", "..", "..", "etc"))),
                Lifespan.Singleton);

            SupportEventTypeFactory.RegisterSingleton(container);
            SupportExprNodeFactory.RegisterSingleton(container);
            SupportDatabaseService.RegisterSingleton(container);
            SupportJoinResultNodeFactory.RegisterSingleton(container);

            container
            .InitializeDefaultServices()
            .InitializeDatabaseDrivers()
            .RegisterDatabaseDriver(typeof(DbDriverPgSQL));

            return(container);
        }
Beispiel #4
0
        public void SetUp()
        {
            var schema = new Dictionary <String, Object>();

            schema["STDDEV"] = typeof(double?);
            _parentEventType = SupportEventTypeFactory.CreateMapType(schema);

            var addProps = new Dictionary <String, Object>();

            addProps["Symbol"] = typeof(string);

            var mergeEventType = SupportEventAdapterService.Service.CreateAnonymousWrapperType(
                "test", _parentEventType, addProps);

            // Set up length window view and a test child view
            _myView = new AddPropertyValueOptionalView(
                SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext(),
                new String[] { "Symbol" }, "IBM", mergeEventType);

            _parentView = new SupportMapView(schema);
            _parentView.AddView(_myView);

            _childView = new SupportSchemaNeutralView();
            _myView.AddView(_childView);
        }
Beispiel #5
0
 public void TestCanReuse()
 {
     _factory.SetViewParameters(_viewFactoryContext, TestViewSupport.ToExprListMD(new Object[] { "Symbol", "Feed" }));
     _factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportMarketDataBean)), SupportStatementContextFactory.MakeContext(), null, _parents);
     Assert.IsFalse(_factory.CanReuse(new FirstElementView(null)));
     Assert.IsFalse(_factory.CanReuse(new MergeView(SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext(), SupportExprNodeFactory.MakeIdentNodesMD("Symbol"), null, true)));
     Assert.IsTrue(_factory.CanReuse(new MergeView(SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext(), SupportExprNodeFactory.MakeIdentNodesMD("Symbol", "Feed"), null, true)));
 }
        public void TestCanReuse()
        {
            AgentInstanceContext agentInstanceContext = SupportStatementContextFactory.MakeAgentInstanceContext();

            _factory.SetViewParameters(null, TestViewSupport.ToExprListBean(new Object[] { "IntPrimitive" }));
            _factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportBean)), SupportStatementContextFactory.MakeContext(), null, null);
            Assert.IsFalse(_factory.CanReuse(new FirstElementView(null), agentInstanceContext));
        }
Beispiel #7
0
        public static void Validate1StreamBean(ExprNode topNode)
        {
            var supportContainer = SupportContainer.Instance;
            var eventType        = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean));
            StreamTypeService streamTypeService = new StreamTypeServiceImpl(eventType, "s0", false, "uri");

            ExprNodeUtility.GetValidatedSubtree(ExprNodeOrigin.SELECT, topNode, SupportExprValidationContextFactory.Make(supportContainer, streamTypeService));
        }
        private void TryParameter(Object[] @params, String fieldName)
        {
            _factory.SetViewParameters(_viewFactoryContext, TestViewSupport.ToExprListMD(@params));
            _factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportMarketDataBean)), SupportStatementContextFactory.MakeContext(), null, null);
            UnivariateStatisticsView view = (UnivariateStatisticsView)_factory.MakeView(SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext());

            Assert.AreEqual(fieldName, view.FieldExpression.ToExpressionStringMinPrecedenceSafe());
        }
Beispiel #9
0
        public void SetUp()
        {
            _container = SupportContainer.Reset();

            _lockFactory     = new FilterServiceGranularLockFactoryReentrant(_container.RWLockManager());
            _eventType       = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean));
            _topNode         = new FilterHandleSetNode(_container.RWLockManager().CreateDefaultLock());
            _filterCallbacks = new List <FilterHandle>();
            _pathsAddedTo    = new List <ArrayDeque <EventTypeIndexBuilderIndexLookupablePair> >();

            _testFilterSpecs = new List <FilterSpecCompiled>();
            _matchedEvents   = new List <EventBean>();
            _unmatchedEvents = new List <EventBean>();

            // Any int and double value specified here must match only the current filter spec not any other filter spec
            _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.GREATER_OR_EQUAL, 100000 }));
            _matchedEvents.Add(MakeEvent(9999999, -1));
            _unmatchedEvents.Add(MakeEvent(0, -1));

            _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.GREATER_OR_EQUAL, 10,
                                                         "DoublePrimitive", FilterOperator.EQUAL, 0.5 }));
            _matchedEvents.Add(MakeEvent(10, 0.5));
            _unmatchedEvents.Add(MakeEvent(0, 0.5));

            _testFilterSpecs.Add(MakeSpec(new Object[] { "DoublePrimitive", FilterOperator.EQUAL, 0.8 }));
            _matchedEvents.Add(MakeEvent(-1, 0.8));
            _unmatchedEvents.Add(MakeEvent(-1, 0.1));

            _testFilterSpecs.Add(MakeSpec(new Object[] { "DoublePrimitive", FilterOperator.EQUAL, 99.99,
                                                         "IntPrimitive", FilterOperator.LESS, 1 }));
            _matchedEvents.Add(MakeEvent(0, 99.99));
            _unmatchedEvents.Add(MakeEvent(2, 0.5));

            _testFilterSpecs.Add(MakeSpec(new Object[] { "DoublePrimitive", FilterOperator.GREATER, .99,
                                                         "IntPrimitive", FilterOperator.EQUAL, 5001 }));
            _matchedEvents.Add(MakeEvent(5001, 1.1));
            _unmatchedEvents.Add(MakeEvent(5002, 0.98));

            _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.LESS, -99000 }));
            _matchedEvents.Add(MakeEvent(-99001, -1));
            _unmatchedEvents.Add(MakeEvent(-98999, -1));

            _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.GREATER_OR_EQUAL, 11,
                                                         "DoublePrimitive", FilterOperator.GREATER, 888.0 }));
            _matchedEvents.Add(MakeEvent(11, 888.001));
            _unmatchedEvents.Add(MakeEvent(10, 888));

            _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.EQUAL, 973,
                                                         "DoublePrimitive", FilterOperator.EQUAL, 709.0 }));
            _matchedEvents.Add(MakeEvent(973, 709));
            _unmatchedEvents.Add(MakeEvent(0, 0.5));

            _testFilterSpecs.Add(MakeSpec(new Object[] { "IntPrimitive", FilterOperator.EQUAL, 973,
                                                         "DoublePrimitive", FilterOperator.EQUAL, 655.0 }));
            _matchedEvents.Add(MakeEvent(973, 655));
            _unmatchedEvents.Add(MakeEvent(33838, 655.5));
        }
        private void TryParameter(Object[] @params, String fieldNameX, String fieldNameY)
        {
            _factory.SetViewParameters(_viewFactoryContext, TestViewSupport.ToExprListMD(@params));
            _factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportMarketDataBean)), SupportStatementContextFactory.MakeContext(_container), null, null);
            RegressionLinestView view = (RegressionLinestView)_factory.MakeView(SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext(_container));

            Assert.AreEqual(fieldNameX, view.ExpressionX.ToExpressionStringMinPrecedenceSafe());
            Assert.AreEqual(fieldNameY, view.ExpressionY.ToExpressionStringMinPrecedenceSafe());
        }
Beispiel #11
0
 public void TestGetGetter()
 {
     var supportEventTypeFactory = SupportEventTypeFactory.GetInstance(container);
     var bean = SupportEventBeanFactory.CreateObject(supportEventTypeFactory, new SupportBeanPropertyNames());
     var property = typeof(SupportBeanPropertyNames).GetProperty("A");
     var getter = PropertyHelper.GetGetter(property, EventBeanTypedEventFactoryCompileTime.INSTANCE,
         supportEventTypeFactory.BEAN_EVENT_TYPE_FACTORY);
     Assert.AreEqual("", getter.Get(bean));
 }
Beispiel #12
0
        public void SetUp()
        {
            lockFactory = new FilterServiceGranularLockFactoryReentrant(
                container.RWLockManager());

            eventType = SupportEventTypeFactory
                        .GetInstance(container)
                        .CreateBeanType(typeof(SupportBean));
        }
        private static EventPropertyGetter[] MakeGetters()
        {
            EventType eventType = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean));
            var       getters   = new EventPropertyGetter[2];

            getters[0] = eventType.GetGetter("TheString");
            getters[1] = eventType.GetGetter("IntPrimitive");
            return(getters);
        }
Beispiel #14
0
        public void TestAttaches()
        {
            // Should attach to anything as long as the fields exists
            EventType parentType = SupportEventTypeFactory.CreateBeanType(
                typeof(SupportBean));

            _factory.SetViewParameters(_viewFactoryContext, TestViewSupport.ToExprListBean(new Object[] { "IntBoxed" }));
            _factory.Attach(parentType, SupportStatementContextFactory.MakeContext(_container), null, null);
        }
        private void TryParameter(Object param, String fieldName)
        {
            UniqueByPropertyViewFactory factory = new UniqueByPropertyViewFactory();

            factory.SetViewParameters(null, TestViewSupport.ToExprListBean(new Object[] { param }));
            factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportBean)), SupportStatementContextFactory.MakeContext(), null, null);
            UniqueByPropertyView view = (UniqueByPropertyView)factory.MakeView(SupportStatementContextFactory.MakeAgentInstanceViewFactoryContext());

            Assert.AreEqual(fieldName, view.CriteriaExpressions[0].ToExpressionStringMinPrecedenceSafe());
        }
Beispiel #16
0
        public void SetUp()
        {
            _supportFilterService = new SupportFilterServiceImpl();
            _streamFactoryService = new StreamFactorySvcImpl("default", true);
            var eventType = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean));

            _filterSpecs    = new FilterSpecCompiled[3];
            _filterSpecs[0] = SupportFilterSpecBuilder.Build(eventType, new Object[] { "string", FilterOperator.EQUAL, "a" });
            _filterSpecs[1] = SupportFilterSpecBuilder.Build(eventType, new Object[] { "string", FilterOperator.EQUAL, "a" });
            _filterSpecs[2] = SupportFilterSpecBuilder.Build(eventType, new Object[] { "string", FilterOperator.EQUAL, "b" });
        }
Beispiel #17
0
        public void SetUp()
        {
            _eventType = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean));

            PropertyIndexedEventTableFactory factory = new PropertyIndexedEventTableFactory(0, _eventType, new String[] { "TheString", "IntPrimitive" }, false, null);

            _propertyMapEventIndex = (PropertyIndexedEventTable)factory.MakeEventTables(null)[0];
            _lookupStrategy        = new IndexedTableLookupStrategy(_eventType, new String[] { "TheString", "IntPrimitive" }, _propertyMapEventIndex);

            _propertyMapEventIndex.Add(new EventBean[] { SupportEventBeanFactory.CreateObject(new SupportBean("a", 1)) });
        }
        public void TestCheckLong()
        {
            EventType mySchema = SupportEventTypeFactory.CreateBeanType(typeof(SupportBean));

            Assert.AreEqual(null, PropertyCheckHelper.CheckLong(mySchema, "LongPrimitive"));
            Assert.AreEqual(null, PropertyCheckHelper.CheckLong(mySchema, "LongBoxed"));
            Assert.AreEqual(null, PropertyCheckHelper.CheckLong(mySchema, "LongBoxed"));
            Assert.IsTrue(PropertyCheckHelper.CheckLong(mySchema, "dummy") != null);
            Assert.IsTrue(PropertyCheckHelper.CheckLong(mySchema, "IntPrimitive") != null);
            Assert.IsTrue(PropertyCheckHelper.CheckLong(mySchema, "DoubleBoxed") != null);
        }
Beispiel #19
0
        public void TestCanReuse()
        {
            factory.SetViewParameters(new ViewFactoryContext(null, 1, 1, null, null), TestViewSupport.ToExprListMD(new object[] { "Price", "Volume" }));
            factory.Attach(SupportEventTypeFactory.CreateBeanType(typeof(SupportMarketDataBean)), SupportStatementContextFactory.MakeContext(), null, null);
            Assert.IsFalse(factory.CanReuse(new FirstElementView(null)));
            EventType type = CorrelationView.CreateEventType(SupportStatementContextFactory.MakeContext(), null, 1);

            Assert.IsFalse(factory.CanReuse(new CorrelationView(null, SupportStatementContextFactory.MakeAgentInstanceContext(), SupportExprNodeFactory.MakeIdentNodeMD("Volume"), SupportExprNodeFactory.MakeIdentNodeMD("Price"), type, null)));
            Assert.IsFalse(factory.CanReuse(new CorrelationView(null, SupportStatementContextFactory.MakeAgentInstanceContext(), SupportExprNodeFactory.MakeIdentNodeMD("Feed"), SupportExprNodeFactory.MakeIdentNodeMD("Volume"), type, null)));
            Assert.IsTrue(factory.CanReuse(new CorrelationView(null, SupportStatementContextFactory.MakeAgentInstanceContext(), SupportExprNodeFactory.MakeIdentNodeMD("Price"), SupportExprNodeFactory.MakeIdentNodeMD("Volume"), type, null)));
        }