25 lines
1.1 KiB
C#
25 lines
1.1 KiB
C#
namespace YandexMusic.API.Common.Providers
|
||
{
|
||
/// <summary>
|
||
/// Интерфейс для провайдеров обработки запросов
|
||
/// </summary>
|
||
public interface IRequestProvider
|
||
{
|
||
/// <summary>
|
||
/// Функция получения ответа
|
||
/// </summary>
|
||
/// <param name="message">Запрос</param>
|
||
/// <param name="completionOption">Опция завершения запроса</param>
|
||
/// <returns></returns>
|
||
Task<HttpResponseMessage> GetWebResponseAsync(HttpRequestMessage message, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead);
|
||
|
||
/// <summary>
|
||
/// Функция формирования ответа
|
||
/// </summary>
|
||
/// <typeparam name="T">Тип объекта с ответом</typeparam>
|
||
/// <param name="api">API</param>
|
||
/// <param name="response">Ответ</param>
|
||
/// <returns></returns>
|
||
Task<T> GetDataFromResponseAsync<T>(YandexMusicApi api, HttpResponseMessage response);
|
||
}
|
||
} |