public void TestInvalidConfig() { ConfigurationCommonVariantStream config = new ConfigurationCommonVariantStream(); TryInvalidVarstream(config, "Failed compiler startup: Invalid variant stream configuration, no event type name has been added and default type variance requires at least one type, for name 'ABC'"); config.AddEventTypeName("dummy"); TryInvalidVarstream(config, "Failed compiler startup: Event type by name 'dummy' could not be found for use in variant stream configuration by name 'ABC'"); }
private static void Configure(Configuration configuration) { foreach (var clazz in new[] { typeof(SupportBean), typeof(SupportBeanVariantStream), typeof(SupportBeanVariantOne), typeof(SupportBeanVariantTwo), typeof(SupportBean_A), typeof(SupportBean_B), typeof(SupportBean_S0), typeof(SupportMarketDataBean) }) { configuration.Common.AddEventType(clazz); } IDictionary<string, object> types = new Dictionary<string, object>(); types.Put("someprop", typeof(string)); configuration.Common.AddEventType("MyEvent", types); configuration.Common.AddEventType("MySecondEvent", types); var myVariantTwoTypedSB = new ConfigurationCommonVariantStream(); myVariantTwoTypedSB.AddEventTypeName("SupportBean"); myVariantTwoTypedSB.AddEventTypeName("SupportBeanVariantStream"); configuration.Common.AddVariantStream("MyVariantTwoTypedSB", myVariantTwoTypedSB); var myVariantAnyTyped = new ConfigurationCommonVariantStream(); myVariantAnyTyped.TypeVariance = TypeVariance.ANY; configuration.Common.AddVariantStream("MyVariantAnyTyped", myVariantAnyTyped); Assert.IsTrue(configuration.Common.IsVariantStreamExists("MyVariantAnyTyped")); var myVariantTwoTyped = new ConfigurationCommonVariantStream(); myVariantTwoTyped.AddEventTypeName("MyEvent"); myVariantTwoTyped.AddEventTypeName("MySecondEvent"); configuration.Common.AddVariantStream("MyVariantTwoTyped", myVariantTwoTyped); var myVariantTwoTypedSBVariant = new ConfigurationCommonVariantStream(); myVariantTwoTypedSBVariant.AddEventTypeName("SupportBeanVariantStream"); myVariantTwoTypedSBVariant.AddEventTypeName("SupportBean"); configuration.Common.AddVariantStream("MyVariantTwoTypedSBVariant", myVariantTwoTypedSBVariant); var myVariantStreamTwo = new ConfigurationCommonVariantStream(); myVariantStreamTwo.AddEventTypeName("SupportBeanVariantOne"); myVariantStreamTwo.AddEventTypeName("SupportBeanVariantTwo"); configuration.Common.AddVariantStream("MyVariantStreamTwo", myVariantStreamTwo); var myVariantStreamFour = new ConfigurationCommonVariantStream(); myVariantStreamFour.AddEventTypeName("SupportBeanVariantStream"); myVariantStreamFour.AddEventTypeName("SupportBean"); configuration.Common.AddVariantStream("MyVariantStreamFour", myVariantStreamFour); var myVariantStreamFive = new ConfigurationCommonVariantStream(); myVariantStreamFive.AddEventTypeName("SupportBean"); myVariantStreamFive.AddEventTypeName("SupportBeanVariantStream"); configuration.Common.AddVariantStream("MyVariantStreamFive", myVariantStreamFive); var varStreamABPredefined = new ConfigurationCommonVariantStream(); varStreamABPredefined.AddEventTypeName("SupportBean_A"); varStreamABPredefined.AddEventTypeName("SupportBean_B"); configuration.Common.AddVariantStream("VarStreamABPredefined", varStreamABPredefined); var varStreamAny = new ConfigurationCommonVariantStream(); varStreamAny.TypeVariance = TypeVariance.ANY; configuration.Common.AddVariantStream("VarStreamAny", varStreamAny); // test insert into staggered with map var configVariantStream = new ConfigurationCommonVariantStream(); configVariantStream.TypeVariance = TypeVariance.ANY; configuration.Common.AddEventType("SupportBean", typeof(SupportBean)); configuration.Common.AddEventType("SupportMarketDataBean", typeof(SupportMarketDataBean)); configuration.Common.AddVariantStream("VarStreamMD", configVariantStream); configuration.Common.AddImportType(typeof(EventVariantStream)); }
private static void Configure(Configuration configuration) { foreach (var clazz in new[] { typeof(SupportBean), typeof(OrderBean), typeof(OrderWithItems), typeof(SupportBeanAtoFBase), typeof(SupportBean_A), typeof(SupportMarketDataBean), typeof(SupportSimpleBeanTwo), typeof(SupportSimpleBeanOne), typeof(SupportVariableSetEvent), typeof(SupportBean_S0), typeof(SupportBean_S1), typeof(SupportBeanRange), typeof(SupportBean_B), typeof(SupportOverrideOneA), typeof(SupportOverrideOne), typeof(SupportOverrideBase), typeof(SupportQueueEnter), typeof(SupportQueueLeave), typeof(SupportBeanAtoFBase), typeof(SupportBeanAbstractSub), typeof(SupportBean_ST0), typeof(SupportBeanTwo), typeof(SupportCountAccessEvent), typeof(BookDesc), typeof(SupportBean_Container), typeof(SupportEventWithManyArray), typeof(SupportEventWithIntArray) }) { configuration.Common.AddEventType(clazz); } IDictionary<string, object> outerMapInnerType = new Dictionary<string, object>(); outerMapInnerType.Put("key", typeof(string)); configuration.Common.AddEventType("InnerMap", outerMapInnerType); IDictionary<string, object> outerMap = new Dictionary<string, object>(); outerMap.Put("innermap", "InnerMap"); configuration.Common.AddEventType("OuterMap", outerMap); IDictionary<string, object> typesSimpleKeyValue = new Dictionary<string, object>(); typesSimpleKeyValue.Put("key", typeof(string)); typesSimpleKeyValue.Put("value", typeof(long)); configuration.Common.AddEventType("MySimpleKeyValueMap", typesSimpleKeyValue); IDictionary<string, object> innerTypeOne = new Dictionary<string, object>(); innerTypeOne.Put("i1", typeof(int)); IDictionary<string, object> innerTypeTwo = new Dictionary<string, object>(); innerTypeTwo.Put("i2", typeof(int)); IDictionary<string, object> outerType = new Dictionary<string, object>(); outerType.Put("one", "T1"); outerType.Put("two", "T2"); configuration.Common.AddEventType("T1", innerTypeOne); configuration.Common.AddEventType("T2", innerTypeTwo); configuration.Common.AddEventType("OuterType", outerType); IDictionary<string, object> types = new Dictionary<string, object>(); types.Put("key", typeof(string)); types.Put("primitive", typeof(long)); types.Put("boxed", typeof(long?)); configuration.Common.AddEventType("MyMapWithKeyPrimitiveBoxed", types); var dataType = BuildMap( new object[][] { new object[] {"a", typeof(string)}, new object[] {"b", typeof(int)} }); configuration.Common.AddEventType("MyMapAB", dataType); var legacy = new ConfigurationCommonEventTypeBean(); legacy.CopyMethod = "MyCopyMethod"; configuration.Common.AddEventType("SupportBeanCopyMethod", typeof(SupportBeanCopyMethod), legacy); configuration.Common.AddEventType("SimpleEventWithId", new string[]{"id"}, new object[]{ typeof(string) }); configuration.Compiler.AddPlugInSingleRowFunction( "setBeanLongPrimitive999", typeof(InfraNamedWindowOnUpdate), "SetBeanLongPrimitive999"); configuration.Compiler.AddPlugInSingleRowFunction( "increaseIntCopyDouble", typeof(InfraNamedWindowOnMerge), "IncreaseIntCopyDouble"); var config = new ConfigurationCommonVariantStream(); config.AddEventTypeName("SupportBean_A"); config.AddEventTypeName("SupportBean_B"); configuration.Common.AddVariantStream("VarStream", config); configuration.Common.Logging.IsEnableQueryPlan = true; }