Exemplo n.º 1
0
        /// <summary>
        /// Constructor takes a class as an argument.
        /// </summary>
        /// <param name="metadata">event type metadata</param>
        /// <param name="eventTypeId">The event type id.</param>
        /// <param name="clazz">is the class of an object</param>
        /// <param name="eventAdapterService">factory for event beans and event types</param>
        /// <param name="optionalLegacyDef">optional configuration supplying legacy event type information</param>
        public BeanEventType(EventTypeMetadata metadata,
                             int eventTypeId,
                             Type clazz,
                             EventAdapterService eventAdapterService,
                             ConfigurationEventTypeLegacy optionalLegacyDef)
        {
            Metadata             = metadata;
            UnderlyingType       = clazz;
            _eventAdapterService = eventAdapterService;
            OptionalLegacyDef    = optionalLegacyDef;
            EventTypeId          = eventTypeId;
            if (optionalLegacyDef != null)
            {
                FactoryMethodName       = optionalLegacyDef.FactoryMethod;
                _copyMethodName         = optionalLegacyDef.CopyMethod;
                PropertyResolutionStyle = optionalLegacyDef.PropertyResolutionStyle;
            }
            else
            {
                PropertyResolutionStyle = eventAdapterService.BeanEventTypeFactory.DefaultPropertyResolutionStyle;
            }
            _propertyGetterCache = new Dictionary <String, EventPropertyGetter>();

            Initialize(false);

            EventTypeUtility.TimestampPropertyDesc desc = EventTypeUtility.ValidatedDetermineTimestampProps(
                this,
                optionalLegacyDef == null ? null : optionalLegacyDef.StartTimestampPropertyName,
                optionalLegacyDef == null ? null : optionalLegacyDef.EndTimestampPropertyName,
                SuperTypes);
            StartTimestampPropertyName = desc.Start;
            EndTimestampPropertyName   = desc.End;
        }
Exemplo n.º 2
0
        public AvroEventType(
            EventTypeMetadata metadata,
            string eventTypeName,
            int typeId,
            EventAdapterService eventAdapterService,
            RecordSchema avroSchema,
            string startTimestampPropertyName,
            string endTimestampPropertyName,
            EventType[] optionalSuperTypes,
            ICollection<EventType> deepSupertypes)
        {
            _metadata = metadata;
            _typeId = typeId;
            _eventAdapterService = eventAdapterService;
            _avroSchema = avroSchema;
            _optionalSuperTypes = optionalSuperTypes;
            _deepSupertypes = deepSupertypes ?? Collections.GetEmptySet<EventType>();
            _propertyItems = new LinkedHashMap<string, PropertySetDescriptorItem>();

            Init();

            EventTypeUtility.TimestampPropertyDesc desc = EventTypeUtility.ValidatedDetermineTimestampProps(
                this, startTimestampPropertyName, endTimestampPropertyName, optionalSuperTypes);
            _startTimestampPropertyName = desc.Start;
            _endTimestampPropertyName = desc.End;
        }