Exemplo n.º 1
0
 protected override LockTransactionResult DoExecuteLockTransaction(LockSession session, LockTransaction transaction)
 {
     return(App.GetServiceClientHub().CallWithRetry <Contracts.ILockerClient, LockTransactionResult>
            (
                (locker) => locker.ExecuteLockTransaction(session.Data, transaction),
                session.ServerHosts
            ));
 }
Exemplo n.º 2
0
 protected override bool DoEndLockSession(LockSession session)
 {
     return(App.GetServiceClientHub().CallWithRetry <Contracts.ILockerClient, bool>
            (
                (locker) => locker.EndLockSession(session.Data.ID),
                session.ServerHosts
            ));
 }
Exemplo n.º 3
0
        public virtual LockSession MakeSession(string path, object shardingID, string description = null, int?maxAgeSec = null)
        {
            var session = new LockSession(this, path, shardingID, description, maxAgeSec);

            m_Sessions[session.ID] = session;

            return(session);
        }
Exemplo n.º 4
0
 protected override Task <bool> DoEndLockSessionAsync(LockSession session)
 {
     return(App.GetServiceClientHub().CallWithRetryAsync <Contracts.ILockerClient, bool>
            (
                (locker) => locker.Async_EndLockSession(session.Data.ID).AsTaskReturning <bool>(),
                session.ServerHosts
            ));
 }
Exemplo n.º 5
0
        private void checkSessionExists(LockSession session)
        {
            var s = this[session.ID];

            if (s == null)
            {
                throw new LockingException(StringConsts.LOCK_SESSION_NOT_ACTIVE_ERROR.Args(session.ID, session.Description));
            }
        }
Exemplo n.º 6
0
        public Task <bool> EndLockSessionAsync(LockSession session)
        {
            if (!Running)
            {
                return(Task.FromResult(false));
            }

            if (session == null)
            {
                throw new LockingException(StringConsts.ARGUMENT_ERROR + GetType().Name + ".EndLockSessionAsync(session==null)");
            }

            checkSessionExists(session);

            LockSession d;

            m_Sessions.TryRemove(session.ID, out d);

            return(DoEndLockSessionAsync(session));
        }
Exemplo n.º 7
0
        public LockTransactionResult ExecuteLockTransaction(LockSession session, LockTransaction transaction)
        {
            if (!Running)
            {
                return(LockTransactionResult.CallFailed);
            }

            if (session == null || transaction == null)
            {
                throw new LockingException(StringConsts.ARGUMENT_ERROR + GetType().Name + ".ExecuteLockTransaction(session|tran==null)");
            }

            checkSessionExists(session);

            if (m_InstrumentationEnabled)
            {
                m_Stats.IncrementLong(session.Path);
            }

            return(DoExecuteLockTransaction(session, transaction));
        }
Exemplo n.º 8
0
        public bool EndLockSession(LockSession session)
        {
            if (!Running)
            {
                return(false);
            }

            if (session == null)
            {
                throw new LockingException(StringConsts.ARGUMENT_ERROR + GetType().Name + ".EndLockSession(session==null)");
            }

            checkSessionExists(session);

            var ended = DoEndLockSession(session);

            LockSession d;

            m_Sessions.TryRemove(session.ID, out d);

            return(ended);
        }
Exemplo n.º 9
0
 protected abstract LockTransactionResult DoExecuteLockTransaction(LockSession session, LockTransaction transaction);
Exemplo n.º 10
0
 public Task <LockTransactionResult> ExecuteLockTransactionAsync(LockSession session, LockTransaction transaction)
 {
     return(Task.FromResult(ExecuteLockTransaction(session, transaction)));
 }
Exemplo n.º 11
0
 protected abstract Task <LockTransactionResult> DoExecuteLockTransactionAsync(LockSession session, LockTransaction transaction);
Exemplo n.º 12
0
 protected override Task <LockTransactionResult> DoExecuteLockTransactionAsync(LockSession session, LockTransaction transaction)
 {
     return(App.GetServiceClientHub().CallWithRetryAsync <Contracts.ILockerClient, LockTransactionResult>
            (
                (locker) => locker.Async_ExecuteLockTransaction(session.Data, transaction).AsTaskReturning <LockTransactionResult>(),
                session.ServerHosts
            ));
 }
Exemplo n.º 13
0
 protected override bool DoEndLockSession(LockSession session)
 {
     return(m_Server.EndLockSession(session.ID));
 }
Exemplo n.º 14
0
 protected override Task <bool> DoEndLockSessionAsync(LockSession session)
 {
     return(TaskUtils.AsCompletedTask(() => m_Server.EndLockSession(session.ID)));
 }
Exemplo n.º 15
0
 protected override LockTransactionResult DoExecuteLockTransaction(LockSession session, LockTransaction transaction)
 {
     return(m_Server.ExecuteLockTransaction(session.Data, transaction));
 }
Exemplo n.º 16
0
 protected override Task <LockTransactionResult> DoExecuteLockTransactionAsync(LockSession session, LockTransaction transaction)
 {
     return(TaskUtils.AsCompletedTask(() => m_Server.ExecuteLockTransaction(session.Data, transaction)));
 }
Exemplo n.º 17
0
 public Task <bool> EndLockSessionAsync(LockSession session)
 {
     return(Task.FromResult(EndLockSession(session)));
 }
Exemplo n.º 18
0
 public bool EndLockSession(LockSession session)
 {
     return(true);
 }
Exemplo n.º 19
0
 protected abstract bool DoEndLockSession(LockSession session);
Exemplo n.º 20
0
 public LockTransactionResult ExecuteLockTransaction(LockSession session, LockTransaction transaction)
 {
     return(new LockTransactionResult(Guid.Empty, null, LockStatus.TransactionOK, LockErrorCause.Unspecified, null, 0, 0d, null));
 }
Exemplo n.º 21
0
 protected abstract Task <bool> DoEndLockSessionAsync(LockSession session);