コード例 #1
0
        public void OfferInvestmentOnSecondaryMarketOk()
        {
            var request = new SecondaryMarketOfferSell()
            {
                InvestmentId       = 15822,
                RemainingPrincipal = 199.66M,
                FeeAmount          = 21.98M
            };

            _zonkyApi.OfferInvestmentOnSecondaryMarketAsync(request, _tokenProvider.GetToken(), CancellationToken.None).GetAwaiter().GetResult();
        }
コード例 #2
0
        /// <summary>
        /// Offer investment on secondary market to sell
        /// </summary>
        /// <param name="secondaryMarketOfferSell">Secondary market offer to sell</param>
        /// <param name="authorizationToken"></param>
        /// <param name="ct"></param>
        /// <returns></returns>
        public async Task OfferInvestmentOnSecondaryMarketAsync(SecondaryMarketOfferSell secondaryMarketOfferSell, AuthorizationToken authorizationToken, CancellationToken ct = default)
        {
            CheckAuthorizationToken(authorizationToken);

            using (var request = PrepareAuthorizedRequest($"/users/me/traded-investments", HttpMethod.Post, authorizationToken).AddJsonContent(secondaryMarketOfferSell, Settings))
                using (var response = await _httpClient.SendAsync(request, HttpCompletionOption.ResponseContentRead, ct).ConfigureAwait(false))
                {
                    await _resolverFactory.Create(Settings, true)
                    .ConfigureStatusResponce(HttpStatusCode.OK, (message) => { })
                    .ConfigureStatusResponce(HttpStatusCode.NoContent, (message) => { })
                    .ConfigureStatusResponce <SecondaryMarketOfferSellError>(HttpStatusCode.BadRequest, (error, message) => throw new OfferInvestmentSecondaryMarketException(secondaryMarketOfferSell, error))
                    .ConfigureDefaultResponce((message) => throw new ServerErrorException(message))
                    .ExtractDataAsync(response);
                }
        }
 public OfferInvestmentSecondaryMarketException(SecondaryMarketOfferSell secondaryMarketOfferSell, SecondaryMarketOfferSellError secondaryMarketOfferSellError) : base($"Offer investment on secondary market {secondaryMarketOfferSell.ToString()} failed with {secondaryMarketOfferSellError.ToString()}")
 {
 }
コード例 #4
0
        /// <summary>
        /// Offer investment on secondary market to sell
        /// </summary>
        /// <param name="secondaryMarketOfferSell">Secondary market offer to sell</param>
        /// <param name="ct"></param>
        /// <returns></returns>
        public async Task OfferInvestmentOnSecondaryMarketAsync(SecondaryMarketOfferSell secondaryMarketOfferSell, CancellationToken ct = default)
        {
            CheckTradingPrerequisites();

            await HandleAuthorizedRequestAsync(() => ZonkyApi.OfferInvestmentOnSecondaryMarketAsync(secondaryMarketOfferSell, AuthorizationToken, ct), ct).ConfigureAwait(false);
        }