public static void Validate(this DynamicEvent @event, IEventValidator validator)
        {
            if (String.IsNullOrWhiteSpace(@event.EventType))
            {
                return;
            }

            var type = EventTypeCache.GetType(@event.EventType);

            if (type == null)
            {
                throw new IgnoredEventException();
            }

            var item = EventDescriptorExtensions.ForceConvertToStrongEventType(@event.EventType, @event, ValidationSerializerSettings.Instance);

            validator.DynamicInvokeValidate(type, item);
        }
예제 #2
0
 public EventDescriptor(DynamicEvent eventData, string eventType, EventHeader header)
     : this()
 {
     EventData = new EventData(eventType, eventData);
     Header    = header;
 }
예제 #3
0
        public static IEvent ForceConvertToStrongEventType(string eventType, DynamicEvent dynamicEvent, JsonSerializerSettings settings)
        {
            var type = Type.GetType(eventType);

            return((IEvent)JsonConvert.DeserializeObject(dynamicEvent.Json, type, settings));
        }
 public static IEvent ForceConvertToStrongEventType(string eventType, DynamicEvent dynamicEvent, JsonSerializerSettings settings)
 {
     var type = Type.GetType(eventType);
     return (IEvent)JsonConvert.DeserializeObject(dynamicEvent.Json, type, settings);
 }
예제 #5
0
 public EventDescriptor(DynamicEvent eventData, string eventType, EventHeader header)
     : this()
 {
     EventData = new EventData(eventType, eventData);
     Header = header;
 }