Пример #1
0
        public async Task Update(ISettings settings, IClient client, string secret)
        {
            Saver saver = new Saver();

            if (string.IsNullOrEmpty(secret))
            {
                await saver.Save(new TransactionHandler(settings), client.Update);
            }
            else
            {
                SecretProcessor  secretProcessor  = new SecretProcessor();
                ClientCredential clientCredential = new ClientCredential(
                    client,
                    new ClientCredentialData()
                {
                    Secret = secretProcessor.Hash(secret)
                },
                    _clientCredentialDataSaver
                    )
                {
                    IsActive = true
                };
                await saver.Save(new TransactionHandler(settings), async th => await UpdateClient(th, client, clientCredential));
            }
        }
Пример #2
0
        public Task <IClient> Create(Guid accountId, string secret)
        {
            SecretProcessor secretProcessor = new SecretProcessor();
            Client          client          = new Client(
                new ClientData()
            {
                AccountId = accountId
            },
                _dataSaver,
                _clientCredentialDataFactory,
                _settingsFactory
                );

            client.ClientCredentialChange = new ClientCredential(
                client,
                new ClientCredentialData()
            {
                Secret = secretProcessor.Hash(secret)
            },
                _clientCredentialDataSaver
                )
            {
                IsActive = true
            };
            return(Task.FromResult <IClient>(client));
        }