Beispiel #1
0
        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());
 }
Beispiel #8
0
 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();
 }
 internal abstract object Invoke(ProxyMethodCall methodCall);