public async Task <int> PullCard(IExternalAccount card) { var accountCard = await _accountCards.Queryable() .Include(x => x.StripeCard).Where(x => x.Id == card.Id).FirstOrDefaultAsync(); if (accountCard == null) { accountCard = new AccountCard() { Id = card.Id, ObjectState = ObjectState.Added, StripeCard = new StripeCard() { Id = card.Id, ObjectState = ObjectState.Added } }; } else { accountCard.ObjectState = ObjectState.Modified; accountCard.StripeCard.ObjectState = ObjectState.Modified; } accountCard.Id = card.Id; accountCard.AccountId = card.AccountId; accountCard.StripeCard.InjectFrom(card); return(_accountCards.InsertOrUpdateGraph(accountCard, true)); }
/// <summary> /// The old API for access to external accounts. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='clientProjectIds'> /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <object> PostGetExternalAccountListAsync(this IExternalAccount operations, ClientProjectIds clientProjectIds, CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.PostGetExternalAccountListWithHttpMessagesAsync(clientProjectIds, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <summary> /// The old API for access to external accounts. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='registrationRequest'> /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <object> PostRegisterAsync(this IExternalAccount operations, ExternalAccountRegistrationRequest registrationRequest, CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.PostRegisterWithHttpMessagesAsync(registrationRequest, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <summary> /// The old API for access to external accounts. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='loginRequest'> /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <LoginResponse> PostExternalAccountLoginAsync(this IExternalAccount operations, PinLoginRequest loginRequest, CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.PostExternalAccountLoginWithHttpMessagesAsync(loginRequest, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <summary> /// Fills parameters /// </summary> /// <param name="account"></param> /// <param name="data"></param> /// <param name="macKey"></param> protected virtual void OnCreateParams(IExternalAccount account, object data, byte[] macKey) { account.Key = Base64Url.Encode(macKey); account.Account = data; account.Status = Protocol.ExternalAccountStatus.Pending; if (Options.ExternalAccountOptions.ExpiresMinutes != 0) { account.Expires = DateTime.UtcNow.AddMinutes(Options.ExternalAccountOptions.ExpiresMinutes); } }
public void HandlesUnknownObjectWithoutId() { var json = "{\"object\": \"bar\"}"; var value = JObject.Parse(json); string id = null; IExternalAccount account = null; StringOrObject <IExternalAccount> .Map(value, s => id = s, o => account = o); Assert.Null(id); Assert.Null(account); }
public void HandlesUnknownObjectWithId() { var json = "{\"id\": \"foo_123\", \"object\": \"foo\"}"; var value = JObject.Parse(json); string id = null; IExternalAccount account = null; StringOrObject <IExternalAccount> .Map(value, s => id = s, o => account = o); Assert.Equal("foo_123", id); Assert.Null(account); }
/// <summary> /// The old API for access to external accounts. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='accountRequest'> /// </param> public static object PostGetExternalAccountDetailsById(this IExternalAccount operations, ExternalAccountDetailsByIdRequest accountRequest) { return(operations.PostGetExternalAccountDetailsByIdAsync(accountRequest).GetAwaiter().GetResult()); }
/// <summary> /// The old API for access to external accounts. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='clientProjectIds'> /// </param> public static object PostGetExternalAccountList(this IExternalAccount operations, ClientProjectIds clientProjectIds) { return(operations.PostGetExternalAccountListAsync(clientProjectIds).GetAwaiter().GetResult()); }
/// <summary> /// The old API for access to external accounts. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='registrationRequest'> /// </param> public static object PostRegister(this IExternalAccount operations, ExternalAccountRegistrationRequest registrationRequest) { return(operations.PostRegisterAsync(registrationRequest).GetAwaiter().GetResult()); }
/// <summary> /// The old API for access to external accounts. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='loginRequest'> /// </param> public static LoginResponse PostExternalAccountLogin(this IExternalAccount operations, PinLoginRequest loginRequest) { return(operations.PostExternalAccountLoginAsync(loginRequest).GetAwaiter().GetResult()); }
public AccountAdapter(IExternalAccount externalAccount) { _externalAccount = externalAccount; }
public IExternalAccount Update(IExternalAccount item) { throw new NotImplementedException(); }
public void Remove(IExternalAccount item) { throw new NotImplementedException(); }