예제 #1
0
        /// <summary>
        /// Returns swift credentials by regulation and asset.
        /// </summary>
        /// <param name="regulationId">The regulation id.</param>
        /// <param name="assetId">The asset id.</param>
        /// <returns>The <see cref="SwiftCredentialsModel"/>.</returns>
        /// <exception cref="ErrorResponseException">Thrown if an error response received from service.</exception>
        /// <exception cref="InvalidOperationException">Thrown if an unexpected response received.</exception>
        public async Task <SwiftCredentialsModel> GetAsync(string regulationId, string assetId)
        {
            object result = await _service.SwiftCredentialsGetAsync(regulationId, assetId);

            if (result is AutorestClient.Models.SwiftCredentialsModel regulationModel)
            {
                return(regulationModel.Map());
            }

            if (result is AutorestClient.Models.ErrorResponse errorResponse)
            {
                throw new ErrorResponseException(errorResponse.ErrorMessage);
            }

            throw new InvalidOperationException($"Unexpected response type: {result?.GetType()}");
        }