public void RegisterVariant( EventTypeMetadata metadata, EventType[] variants, bool any) { var spec = new VariantSpec( variants, any ? TypeVariance.ANY : TypeVariance.PREDEFINED); EventType eventType = _eventTypeFactory.CreateVariant(metadata, spec); HandleRegister(eventType); }
private static void AddVariantStream( string name, ConfigurationCommonVariantStream config, EventTypeRepositoryImpl repo, EventTypeFactory eventTypeFactory) { var variantSpec = ValidateVariantStream(name, config, repo); var metadata = new EventTypeMetadata( name, null, EventTypeTypeClass.VARIANT, EventTypeApplicationType.VARIANT, NameAccessModifier.PRECONFIGURED, EventTypeBusModifier.BUS, false, new EventTypeIdPair(CRC32Util.ComputeCRC32(name), -1)); var variantEventType = eventTypeFactory.CreateVariant(metadata, variantSpec); repo.AddType(variantEventType); }