internal override object Invoke(ProxyMethodCall methodCall) { object ret; InstanceProvider.GetInstance <Persistence>().BeginTransaction(); try { ret = Next(methodCall); } catch (Exception) { InstanceProvider.GetInstance <Persistence>().RollbackTransaction(); throw; } InstanceProvider.GetInstance <Persistence>().CommitTransaction(); return(ret); }
internal override object Invoke(ProxyMethodCall methodCall) { object ret; InstanceProvider.GetInstance<Persistence>().BeginTransaction(); try { ret = Next(methodCall); } catch (Exception) { InstanceProvider.GetInstance<Persistence>().RollbackTransaction(); throw; } InstanceProvider.GetInstance<Persistence>().CommitTransaction(); return ret; }
internal override object Invoke(ProxyMethodCall methodCall) { object ret; var sw = new Stopwatch(); sw.Start(); MethodCallLogger.LogInvokation(methodCall.Method, methodCall.Parameters); try { ret = Next(methodCall); } catch (Exception exception) { MethodCallLogger.LogException(methodCall.Method, exception, sw.ElapsedMilliseconds); throw; } MethodCallLogger.LogReturn(methodCall.Method, ret, sw.ElapsedMilliseconds); return ret; }
internal override object Invoke(ProxyMethodCall methodCall) { object ret; var sw = new Stopwatch(); sw.Start(); MethodCallLogger.LogInvokation(methodCall.Method, methodCall.Parameters); try { ret = Next(methodCall); } catch (Exception exception) { MethodCallLogger.LogException(methodCall.Method, exception, sw.ElapsedMilliseconds); throw; } MethodCallLogger.LogReturn(methodCall.Method, ret, sw.ElapsedMilliseconds); return(ret); }
internal override object Invoke(ProxyMethodCall methodCall) { ThreadContext.GetCurrent().Initialize(); return Next(methodCall); }
internal abstract object Invoke(ProxyMethodCall methodCall);
protected object Next(ProxyMethodCall methodCall) { return(_successor != null?_successor.Invoke(methodCall) : methodCall.Invoke()); }
internal override object Invoke(ProxyMethodCall methodCall) { ThreadContext.GetCurrent().Initialize(); return(Next(methodCall)); }
protected object Next(ProxyMethodCall methodCall) { return _successor != null ? _successor.Invoke(methodCall) : methodCall.Invoke(); }