Mercurial > pub > bltoolkit
diff Source/Aspects/Interceptor.cs @ 0:f990fcb411a9
Копия текущей версии из github
author | cin |
---|---|
date | Thu, 27 Mar 2014 21:46:09 +0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Source/Aspects/Interceptor.cs Thu Mar 27 21:46:09 2014 +0400 @@ -0,0 +1,26 @@ +namespace BLToolkit.Aspects +{ + [System.Diagnostics.DebuggerStepThrough] + public abstract class Interceptor : IInterceptor + { + public virtual void Init(CallMethodInfo info, string configString) + { + } + + public virtual void Intercept(InterceptCallInfo info) + { + switch (info.InterceptType) + { + case InterceptType.BeforeCall: BeforeCall(info); break; + case InterceptType.AfterCall: AfterCall (info); break; + case InterceptType.OnCatch: OnCatch (info); break; + case InterceptType.OnFinally: OnFinally (info); break; + } + } + + protected virtual void BeforeCall(InterceptCallInfo info) {} + protected virtual void AfterCall (InterceptCallInfo info) {} + protected virtual void OnCatch (InterceptCallInfo info) {} + protected virtual void OnFinally (InterceptCallInfo info) {} + } +}