public static void Route <TEvent>(this IContext context, Action <TEvent> router, Func <TEvent, bool> condition) where TEvent : class, IEvent { context.AttachRouter(new DelegateRouter <TEvent>(router, condition)); }