public void Add(IInterceptor interceptor, string name, InterceptorRulesBuilder rulesBuilder = null) { Check.NotNull(interceptor, nameof(interceptor)); Check.NotEmpty(name, nameof(name)); if (Interceptors.ContainsKey(name)) { throw new InterceptionException($"Интерсептор '{name}' уже зарегистрирован."); } var info = new InterceptorInfo { Name = name, Interceptor = interceptor, Rules = rulesBuilder?.GetRules() }; _interceptors.Add(name, info); }
public static void Add(this Interception @this, string interceptionName, Action action, InterceptorRulesBuilder rules = null) { Check.NotNull(action, nameof(action)); @this.Add(interceptionName, new[] { action }, rules); }
public static void Add(this Interception @this, string interceptionName, Action[] actions, InterceptorRulesBuilder rules = null) { Check.NotNull(actions, nameof(actions)); @this.Add(new Interceptor(actions), interceptionName, rules); }
public void Add(IInterceptor interceptor, InterceptorRulesBuilder rulesBuilder = null) { Add(interceptor, GetName(interceptor), rulesBuilder); }