protected override async Task <Result> Execute(CreateRefreshTokenCommand command)
        {
            await VerifyNotExisting(command.TicketId);

            var token = new RefreshToken
            {
                Id         = Guid.NewGuid(),
                TicketId   = command.TicketId,
                ClientId   = command.ClientId,
                UserId     = command.UserId,
                IpAddress  = command.IpAddress,
                ExpiresUtc = command.ExpiresUtc,
                IssuedUtc  = command.IssuedUtc
            };

            Session.Store(token);

            return(Result.Success);
        }
        protected override Task <Result> Execute(CreateRefreshTokenCommand command)
        {
            var hash = Hasher.ComputeSHA256(command.RefreshToken);

            VerifyNotExisting(hash);

            var token = new RefreshToken
            {
                Id         = Guid.NewGuid(),
                Hash       = hash,
                ClientId   = command.ClientId,
                UserId     = command.UserId,
                IpAddress  = command.IpAddress,
                ExpiresUtc = command.ExpiresUtc,
                IssuedUtc  = command.IssuedUtc
            };

            Session.Store(token);

            return(Task.FromResult(Result.Success));
        }