public BalancesController(AssetRepository assets, DepositWalletRepository depositWallets, IBlockchainApi api, IChaosKitty chaosKitty = null) { _assets = assets; _depositWallets = depositWallets; _api = api; _chaosKitty = chaosKitty; }
/// <param name="timeout">Timeout affects all request. Leave it null if you do not want timeout.</param> private void InitBlockchainApiClient(ILog log, string hostUrl, int retriesCount = 5, TimeSpan?timeout = null, HttpMessageHandler messageHandler = null) { HostUrl = hostUrl ?? throw new ArgumentNullException(nameof(hostUrl)); _httpClient = new HttpClient(new HttpErrorLoggingHandler(log, messageHandler)) { BaseAddress = new Uri(hostUrl), DefaultRequestHeaders = { { "User-Agent", $"{PlatformServices.Default.Application.ApplicationName}/{PlatformServices.Default.Application.ApplicationVersion}" } } }; if (timeout.HasValue) { _httpClient.Timeout = timeout.Value; } _api = RestService.For <IBlockchainApi>(_httpClient); _runner = new ApiRunner(retriesCount); }
public UserController(IBlockchainApi blockChainApi, IUserService userService, IToastNotification toastNotification) { _blockChainApi = blockChainApi; _userService = userService; _toastNotification = toastNotification; }
public ApplicationController(IUserService userService, IBlockchainApi blockChainApi, IOptions <AppConfiguration> appConfiguration) { _userService = userService; _blockChainApi = blockChainApi; _appConfiguration = appConfiguration; }
public AdminController(IUserService userService, IBlockchainApi blockChainApi, IOptions <AppConfiguration> appConfiguration, IToastNotification toastNotification) { _userService = userService; _blockChainApi = blockChainApi; _appConfiguration = appConfiguration; _toastNotification = toastNotification; }
public TransactionsController( IBlockchainApi api, OperationRepository operations, AssetRepository assets, DepositWalletRepository depositWallets, IChaosKitty chaosKitty = null) { _api = api; _operations = operations; _assets = assets; _depositWallets = depositWallets; _chaosKitty = chaosKitty; }
public static Task <string> ForceBroadcast( this IBlockchainTransaction tx, IBlockchainApi blockchainApi, Swap swap, TimeSpan interval, Action <Swap, string, CancellationToken> completionHandler = null, CancellationToken cancellationToken = default) { return(Task.Run(async() => { try { while (!cancellationToken.IsCancellationRequested) { var broadcastResult = await blockchainApi .TryBroadcastAsync(tx, cancellationToken: cancellationToken) .ConfigureAwait(false); if (!broadcastResult.HasError) { if (broadcastResult.Value != null) { completionHandler?.Invoke(swap, broadcastResult.Value, cancellationToken); return broadcastResult.Value; } } else { Log.Error("Error while broadcast {@currency} tx with. Code: {@code}. Description: {@desc}", tx.Currency, broadcastResult.Error.Code, broadcastResult.Error.Description); } await Task.Delay(interval, cancellationToken) .ConfigureAwait(false); } } catch (OperationCanceledException) { Log.Debug("ForceBroadcast canceled."); } catch (Exception e) { Log.Error(e, "Error while broadcast {@currency} tx.", tx.Currency); } return null; }, cancellationToken)); }
public BlockchainApiClient(string hostUrl, int retriesCount = 5) { HostUrl = hostUrl ?? throw new ArgumentNullException(nameof(hostUrl)); _httpClient = new HttpClient { BaseAddress = new Uri(hostUrl), DefaultRequestHeaders = { { "User-Agent", $"{PlatformServices.Default.Application.ApplicationName}/{PlatformServices.Default.Application.ApplicationVersion}" } } }; _api = RestService.For <IBlockchainApi>(_httpClient); _runner = new ApiRunner(retriesCount); }
public TestingController(IBlockchainApi api, AssetRepository assets) { _api = api; _assets = assets; }
public CapabilitiesResponse Get([FromServices] IBlockchainApi api) => api.GetCapabilities();
public DashboardController(IBlockchainApi blockChainApi, IUserService userService) { _blockChainApi = blockChainApi; _userService = userService; }
public ConstantsResponse Get([FromServices] IBlockchainApi api) => api.GetConstants();
public AddressesController(IBlockchainApi api) => _api = api;