public void Provide(Type type, ComponentData data) { var attr = Attribute.GetCustomAttributes(type) .OfType <EventAttribute>() .SingleOrDefault(); if (attr != null) { data.IsEvent(true); data.SetEventBindToEntity(attr.bindToEntity); data.SetEventType(attr.eventType); data.SetEventPriority(attr.priority); } else { data.IsEvent(false); } }