<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Sod.Shared.Api.Client</name>
    </assembly>
    <members>
        <member name="P:Sod.Shared.Api.Client.ApiSettings.Timeout">
            <summary>
                Timeout в секундах
            </summary>
        </member>
        <member name="T:Sod.Shared.Api.Client.Attributes.HttpHeaderNameAttribute">
            <summary>
                Атрибут, добавляющий возможность указывать названиие Header, содержащие спец. символы.
            </summary>
        </member>
        <member name="P:Sod.Shared.Api.Client.Attributes.HttpHeaderNameAttribute.HttpHeaderName">
            <summary>
                Название хедера.
            </summary>
        </member>
        <member name="T:Sod.Shared.Api.Client.Attributes.IgnoreQueryParameterAttribute">
            <summary>
            Игнорирует проперти в HttpQueryParameters
            </summary>
        </member>
        <member name="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">
            <summary>
                Тип ошибки для клиентов с дополнительной информацией
            </summary>
        </member>
        <member name="T:Sod.Shared.Api.Client.Extensions.HttpResponseMessageExtensions">
            <summary>
                Расширения для типа <see cref="T:System.Net.Http.HttpResponseMessage"/>
            </summary>
        </member>
        <member name="M:Sod.Shared.Api.Client.Extensions.HttpResponseMessageExtensions.EnsureSuccess(System.Net.Http.HttpResponseMessage)">
            <summary>
                Валидирует успешность ответа от сервера
            </summary>
            <param name="response">Ответ сервера</param>
            <exception cref="T:System.Net.Http.HttpRequestException">Для кодов 4** выбрасывает исключение с описанием ошибки от сервера</exception>
            <exception cref="T:System.Net.Http.HttpRequestException">Для остальных неуспешных кодов выбрасывает стандартную ошибку</exception>
        </member>
        <member name="T:Sod.Shared.Api.Client.HttpServiceClient">
            <summary>
                Базовый класс для клиента REST API
            </summary>
        </member>
        <member name="F:Sod.Shared.Api.Client.HttpServiceClient.JsonMediaType">
            <summary>
                MIME тип для JSON
            </summary>
        </member>
        <member name="F:Sod.Shared.Api.Client.HttpServiceClient.BaseAddress">
            <summary>
                Базовый адресс REST API эндпоинта
            </summary>
        </member>
        <member name="F:Sod.Shared.Api.Client.HttpServiceClient.Client">
            <summary>
                Клиент для отправки HTTP запросов
            </summary>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.#ctor(System.Net.Http.HttpClient,Microsoft.Extensions.Options.IOptions{Sod.Shared.Api.Client.ApiSettings})">
            <summary>
                Ctor
            </summary>
            <param name="client">Http клиент</param>
            <param name="apiSettings">Настройки доступа к API</param>
            <exception cref="T:System.ArgumentException">Настройки доступа к API пустые</exception>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.GetAsync``1(System.String,Sod.Shared.Api.Client.Utils.HttpQueryParameters,Sod.Shared.Api.Client.Utils.HttpQueryHeaders,System.Threading.CancellationToken)">
            <summary>
                Выполняет GET запрос в REST API
            </summary>
            <typeparam name="TResult">Тип результата</typeparam>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="args">Аргументы адресной строки запроса </param>
            <param name="headers">Хэдеры запроса</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
            <returns>
                Возвращает десериализованное тело ответа, если код ответа успешный
            </returns>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.PostAsync``2(System.String,``0,Sod.Shared.Api.Client.Utils.HttpQueryHeaders,System.Threading.CancellationToken)">
            <summary>
                Выполняет POST запрос в REST API
            </summary>
            <typeparam name="TContent">Тип контента, которые сериализуется в тела запроса</typeparam>
            <typeparam name="TResult">Тип, в который десериализуется тело ответа</typeparam>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="content">Тело запроса</param>
            <param name="headers">Хэдеры запроса</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
            <returns>
                Возвращает десериализованное тело ответа, если код ответа успешный
            </returns>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.PutAsync``1(System.String,``0,Sod.Shared.Api.Client.Utils.HttpQueryHeaders,System.Threading.CancellationToken)">
            <summary>
                Выполняет PUT запрос в REST API
            </summary>
            <typeparam name="TContent">Тип контента, которые сериализуется в тела запроса</typeparam>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="content">Тело запроса</param>
            <param name="headers">Хэдеры запроса</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.PatchAsync``1(System.String,``0,Sod.Shared.Api.Client.Utils.HttpQueryHeaders,System.Threading.CancellationToken)">
            <summary>
                Выполняет PATCH запрос в REST API
            </summary>
            <typeparam name="TContent">Тип контента, которые сериализуется в тела запроса</typeparam>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="content">Тело запроса</param>
            <param name="headers">Хэдеры запроса</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.DeleteAsync(System.String,Sod.Shared.Api.Client.Utils.HttpQueryHeaders,System.Threading.CancellationToken)">
            <summary>
                Выполняет DELETE запрос в REST API
            </summary>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="headers">Хэдеры запроса</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.DownloadStreamAsync(System.String,Sod.Shared.Api.Client.Utils.HttpQueryHeaders,System.Threading.CancellationToken)">
            <summary>
                Выполняет GET запрос, возвращаюший поток данных (Stream).
            </summary>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="headers">Хэдеры запроса</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
            <returns>
                Возвращает поток данных.
            </returns>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.UploadStreamAsync(System.String,System.IO.Stream,System.Int64,System.Threading.CancellationToken)">
            <summary>
                Выполняет POST запрос в REST API.
                Передаёт файл и дополнительные данные.
            </summary>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="stream">Поток данных файла.</param>
            <param name="contentLength">Длина потока данных.</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
            <returns>
                Возвращает десериализованное тело ответа, если код ответа успешный.
            </returns>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.UploadStreamAsync``1(System.String,System.IO.Stream,System.Nullable{System.Int64},System.Threading.CancellationToken)">
            <summary>
                Выполняет POST запрос в REST API.
                Передаёт файл и дополнительные данные.
            </summary>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="stream">Поток данных файла.</param>
            <param name="contentLength">Длина потока данных.</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
            <returns>
                Возвращает десериализованное тело ответа, если код ответа успешный.
            </returns>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.UploadFileAsync``1(System.String,System.IO.Stream,System.String,System.Int64,System.Int32,System.Threading.CancellationToken)">
            <summary>
                Выполняет POST запрос в REST API.
                Передаёт файл c именем как <see cref="T:System.Net.Http.MultipartFormDataContent"/>.
            </summary>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="stream">Поток данных файла</param>
            <param name="fileName">Имя файла</param>
            <param name="contentLength">Длина файла в байтах</param>
            <param name="bufferSize">Размер буффера при передаче файла</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
            <remarks>
                Для корректной работы метод контроллера должен быть помечен атрибутом DisableFormValueModelBindingAttribute из Sod.Share.Api
                Или аналогичным: https://stackoverflow.com/questions/49867343/unexpected-end-of-stream-the-content-may-have-already-been-read-by-another-comp
            </remarks>
            <returns>
                Возвращает десериализованное тело ответа, если код ответа успешный.
            </returns>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.UploadFileAsync``1(System.Net.Http.HttpMethod,System.String,System.IO.Stream,System.String,System.Int64,System.Int32,System.Threading.CancellationToken)">
            <summary>
                Выполняет запрос в REST API.
                Передаёт файл c именем как <see cref="T:System.Net.Http.MultipartFormDataContent"/>.
            </summary>
            <param name="httpMethod">Метод REST API для загрузки файлов</param>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="stream">Поток данных файла</param>
            <param name="fileName">Имя файла</param>
            <param name="contentLength">Длина файла в байтах</param>
            <param name="bufferSize">Размер буффера при передаче файла</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
            <remarks>
                Для корректной работы метод контроллера должен быть помечен атрибутом DisableFormValueModelBindingAttribute из Sod.Share.Api
                Или аналогичным: https://stackoverflow.com/questions/49867343/unexpected-end-of-stream-the-content-may-have-already-been-read-by-another-comp
            </remarks>
            <returns>
                Возвращает десериализованное тело ответа, если код ответа успешный.
            </returns>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.UploadFileAsync``1(System.Net.Http.HttpMethod,System.String,Sod.Shared.Api.Client.Utils.HttpQueryParameters,System.IO.Stream,System.String,System.Int64,System.Int32,System.Threading.CancellationToken)">
            <summary>
                Выполняет запрос в REST API.
                Передаёт файл c именем как <see cref="T:System.Net.Http.MultipartFormDataContent"/>.
            </summary>
            <param name="httpMethod">Метод REST API для загрузки файлов</param>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="args">Аргументы адресной строки запроса </param>
            <param name="stream">Поток данных файла</param>
            <param name="fileName">Имя файла</param>
            <param name="contentLength">Длина файла в байтах</param>
            <param name="bufferSize">Размер буффера при передаче файла</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
            <remarks>
                Для корректной работы метод контроллера должен быть помечен атрибутом DisableFormValueModelBindingAttribute из Sod.Share.Api
                Или аналогичным: https://stackoverflow.com/questions/49867343/unexpected-end-of-stream-the-content-may-have-already-been-read-by-another-comp
            </remarks>
            <returns>
                Возвращает десериализованное тело ответа, если код ответа успешный.
            </returns>
        </member>
        <member name="M:Sod.Shared.Api.Client.HttpServiceClient.UploadFilesAsync``1(System.Net.Http.HttpMethod,System.String,Sod.Shared.Api.Client.Utils.HttpQueryParameters,System.Collections.Generic.IEnumerable{System.ValueTuple{System.String,System.IO.Stream,System.Int64}},System.Int32,System.Threading.CancellationToken)">
            <summary>
                Выполняет запрос в REST API.
                Передаёт файл c именем как <see cref="T:System.Net.Http.MultipartFormDataContent"/>.
            </summary>
            <param name="httpMethod">Метод REST API для загрузки файлов</param>
            <param name="url">Адрес метода относительно базового адреса API</param>
            <param name="args">Аргументы адресной строки запроса </param>
            <param name="files">Список файлов на отправку</param>
            <param name="bufferSize">Размер буффера при передаче файла</param>
            <param name="cancellationToken">Токен отмены операции</param>
            <exception cref="T:Sod.Shared.Api.Client.Exceptions.HttpServiceClientException">Ошибка в случае, если код ответа неуспешный</exception>
            <remarks>
                Для корректной работы метод контроллера должен быть помечен атрибутом DisableFormValueModelBindingAttribute из Sod.Share.Api
                Или аналогичным: https://stackoverflow.com/questions/49867343/unexpected-end-of-stream-the-content-may-have-already-been-read-by-another-comp
            </remarks>
            <returns>
                Возвращает десериализованное тело ответа, если код ответа успешный.
            </returns>
        </member>
        <member name="T:Sod.Shared.Api.Client.Utils.FileExtensionContentTypeProvider">
            <summary>
                Provides a mapping between file extensions and MIME types.
            </summary>
            <remarks>
                TODO: заюзать этот класс из Microsoft.AspNetCore.StaticFiles 2.2.0, когда его добавят в нексус 
            </remarks>
        </member>
        <member name="M:Sod.Shared.Api.Client.Utils.FileExtensionContentTypeProvider.#ctor">
            <summary>
            Creates a new provider with a set of default mappings.
            </summary>
        </member>
        <member name="M:Sod.Shared.Api.Client.Utils.FileExtensionContentTypeProvider.#ctor(System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Creates a lookup engine using the provided mapping.
            It is recommended that the IDictionary instance use StringComparer.OrdinalIgnoreCase.
            </summary>
            <param name="mapping"></param>
        </member>
        <member name="P:Sod.Shared.Api.Client.Utils.FileExtensionContentTypeProvider.Mappings">
            <summary>
            The cross reference table of file extensions and content-types.
            </summary>
        </member>
        <member name="M:Sod.Shared.Api.Client.Utils.FileExtensionContentTypeProvider.TryGetContentType(System.String,System.String@)">
            <summary>
            Given a file path, determine the MIME type
            </summary>
            <param name="subpath">A file path</param>
            <param name="contentType">The resulting MIME type</param>
            <returns>True if MIME type could be determined</returns>
        </member>
        <member name="T:Sod.Shared.Api.Client.Utils.HttpQueryHeaders">
            <summary>
                Базовый класс для DTO передачи хедеров в HTTP запрос для наследников <see cref="T:Sod.Shared.Api.Client.HttpServiceClient"/>
            </summary>
            TODO переписать на дерево выражения
        </member>
        <member name="M:Sod.Shared.Api.Client.Utils.HttpQueryHeaders.ToHeadersCollection">
            <summary>
                Возвращает коллекцию ключ значение с хэдерами
            </summary>
        </member>
        <member name="T:Sod.Shared.Api.Client.Utils.HttpQueryParameters">
            <summary>
                Базовый класс для DTO с параметрами в адресную строку HTTP запроса для наследников <see cref="T:Sod.Shared.Api.Client.HttpServiceClient"/>
            </summary>
        </member>
        <member name="M:Sod.Shared.Api.Client.Utils.HttpQueryParameters.ToQueryString">
            <summary>
                Вовзращает параметры для добавления в адресную строку запроса
            </summary>
        </member>
        <member name="T:Sod.Shared.Api.Client.Utils.HttpRequestHeadersExtensions">
            <summary>
                Расширения к класс <see cref="T:System.Net.Http.Headers.HttpRequestHeaders"/> 
            </summary>
        </member>
        <member name="M:Sod.Shared.Api.Client.Utils.HttpRequestHeadersExtensions.Add(System.Net.Http.Headers.HttpRequestHeaders,Sod.Shared.Api.Client.Utils.HttpQueryHeaders)">
            <summary>
                Добавляет хедереы коллекцией
            </summary>
        </member>
    </members>
</doc>
