Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a7caf829d3 | ||
|
|
add7f08215 |
@@ -35,7 +35,7 @@ public class AuthStorage
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Внутренние данные авторизации (CSRF, track_id и т.д.).
|
/// Внутренние данные авторизации (CSRF, track_id и т.д.).
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal YAuthToken AuthToken { get; set; } = new();
|
public YAuthToken AuthToken { get; set; } = new();
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Устанавливает флаг авторизации и сохраняет информацию об аккаунте.
|
/// Устанавливает флаг авторизации и сохраняет информацию об аккаунте.
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using System.Text.Json.Serialization;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Converters;
|
namespace YandexMusic.API.Converters;
|
||||||
|
|
||||||
public class IntToStringConverter : JsonConverter<string>
|
internal class IntToStringConverter : JsonConverter<string>
|
||||||
{
|
{
|
||||||
public override string Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
|
public override string Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using System.Text.Json.Serialization;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Converters;
|
namespace YandexMusic.API.Converters;
|
||||||
|
|
||||||
public class StringToIntConverter : JsonConverter<int>
|
internal class StringToIntConverter : JsonConverter<int>
|
||||||
{
|
{
|
||||||
public override int Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
|
public override int Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Account;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetAuthAppPasswordBuilder : YAuthRequestBuilder<YAuthBase?, string>
|
internal class YGetAuthAppPasswordBuilder : YAuthRequestBuilder<YAuthBase?, string>
|
||||||
{
|
{
|
||||||
public YGetAuthAppPasswordBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAuthAppPasswordBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Account;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetAuthCaptchaBuilder : YAuthRequestBuilder<YAuthCaptcha?, object>
|
internal class YGetAuthCaptchaBuilder : YAuthRequestBuilder<YAuthCaptcha?, object>
|
||||||
{
|
{
|
||||||
public YGetAuthCaptchaBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAuthCaptchaBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using YandexMusic.API.Requests.Common;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetAuthCookiesBuilder : YAuthRequestBuilder<YAccessToken?, object>
|
internal class YGetAuthCookiesBuilder : YAuthRequestBuilder<YAccessToken?, object>
|
||||||
{
|
{
|
||||||
public YGetAuthCookiesBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAuthCookiesBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Account;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetAuthInfoBuilder : YMusicRequestBuilder<YAccountResult?, object>
|
internal class YGetAuthInfoBuilder : YMusicRequestBuilder<YAccountResult?, object>
|
||||||
{
|
{
|
||||||
public YGetAuthInfoBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAuthInfoBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Account;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetAuthLetterBuilder : YAuthRequestBuilder<YAuthLetter?, object>
|
internal class YGetAuthLetterBuilder : YAuthRequestBuilder<YAuthLetter?, object>
|
||||||
{
|
{
|
||||||
public YGetAuthLetterBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAuthLetterBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Account;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetAuthLoginCaptchaBuilder : YAuthRequestBuilder<YAuthBase?, string>
|
internal class YGetAuthLoginCaptchaBuilder : YAuthRequestBuilder<YAuthBase?, string>
|
||||||
{
|
{
|
||||||
public YGetAuthLoginCaptchaBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAuthLoginCaptchaBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Account;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetAuthLoginLetterBuilder : YAuthRequestBuilder<YAuthLetterStatus?, object>
|
internal class YGetAuthLoginLetterBuilder : YAuthRequestBuilder<YAuthLetterStatus?, object>
|
||||||
{
|
{
|
||||||
public YGetAuthLoginLetterBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAuthLoginLetterBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Account;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetAuthLoginUserBuilder : YAuthRequestBuilder<YAuthTypes?, (string token, string login)>
|
internal class YGetAuthLoginUserBuilder : YAuthRequestBuilder<YAuthTypes?, (string token, string login)>
|
||||||
{
|
{
|
||||||
public YGetAuthLoginUserBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAuthLoginUserBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Requests.Common;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetAuthMethodsBuilder : YRequestBuilder<object>
|
internal class YGetAuthMethodsBuilder : YRequestBuilder<object>
|
||||||
{
|
{
|
||||||
public YGetAuthMethodsBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAuthMethodsBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using YandexMusic.API.Models.Account;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetAuthQRBuilder : YAuthRequestBuilder<YAuthQR?, object>
|
internal class YGetAuthQRBuilder : YAuthRequestBuilder<YAuthQR?, object>
|
||||||
{
|
{
|
||||||
public YGetAuthQRBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAuthQRBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -1,10 +1,9 @@
|
|||||||
using System.Net;
|
using System.Net;
|
||||||
using YandexMusic.API.Models.Account;
|
using YandexMusic.API.Models.Account;
|
||||||
using YandexMusic.API.Requests.Common;
|
|
||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetLoginInfoBuilder : YAuthRequestBuilder<YLoginInfo?, object>
|
internal class YGetLoginInfoBuilder : YAuthRequestBuilder<YLoginInfo?, object>
|
||||||
{
|
{
|
||||||
public YGetLoginInfoBuilder(YandexMusicApi api) : base(api) { }
|
public YGetLoginInfoBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ using YandexMusic.API.Requests.Common;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetMusicTokenBuilder : YAuthRequestBuilder<YAccessToken?, object>
|
internal class YGetMusicTokenBuilder : YAuthRequestBuilder<YAccessToken?, object>
|
||||||
{
|
{
|
||||||
public YGetMusicTokenBuilder(YandexMusicApi api) : base(api) { }
|
public YGetMusicTokenBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ using YandexMusic.API.Models.Account;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YGetShortAccountInfoBuilder : YAuthRequestBuilder<YShortAccountInfo?, object>
|
internal class YGetShortAccountInfoBuilder : YAuthRequestBuilder<YShortAccountInfo?, object>
|
||||||
{
|
{
|
||||||
public YGetShortAccountInfoBuilder(YandexMusicApi api) : base(api) { }
|
public YGetShortAccountInfoBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using YandexMusic.API.Models.Account;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Account;
|
namespace YandexMusic.API.Requests.Account;
|
||||||
|
|
||||||
public class YPostAuthStats : YAuthRequestBuilder<YAuthEmpty?, object>
|
internal class YPostAuthStats : YAuthRequestBuilder<YAuthEmpty?, object>
|
||||||
{
|
{
|
||||||
public YPostAuthStats(YandexMusicApi api) : base(api) { }
|
public YPostAuthStats(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Album;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Album;
|
namespace YandexMusic.API.Requests.Album;
|
||||||
|
|
||||||
public class YGetAlbumBuilder : YMusicRequestBuilder<YAlbum?, string>
|
internal class YGetAlbumBuilder : YMusicRequestBuilder<YAlbum?, string>
|
||||||
{
|
{
|
||||||
public YGetAlbumBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAlbumBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Album;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Album;
|
namespace YandexMusic.API.Requests.Album;
|
||||||
|
|
||||||
public class YGetAlbumsBuilder : YMusicRequestBuilder<List<YAlbum>?, IEnumerable<string>>
|
internal class YGetAlbumsBuilder : YMusicRequestBuilder<List<YAlbum>?, IEnumerable<string>>
|
||||||
{
|
{
|
||||||
public YGetAlbumsBuilder(YandexMusicApi api) : base(api) { }
|
public YGetAlbumsBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Artist;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Artist;
|
namespace YandexMusic.API.Requests.Artist;
|
||||||
|
|
||||||
public class YGetArtistBuilder : YMusicRequestBuilder<YArtistBriefInfo?, string>
|
internal class YGetArtistBuilder : YMusicRequestBuilder<YArtistBriefInfo?, string>
|
||||||
{
|
{
|
||||||
public YGetArtistBuilder(YandexMusicApi api) : base(api) { }
|
public YGetArtistBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using YandexMusic.API.Models.Artist;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Artist;
|
namespace YandexMusic.API.Requests.Artist;
|
||||||
|
|
||||||
public class YGetArtistTrackBuilder : YMusicRequestBuilder<YTracksPage?, (string id, int page, int pageSize)>
|
internal class YGetArtistTrackBuilder : YMusicRequestBuilder<YTracksPage?, (string id, int page, int pageSize)>
|
||||||
{
|
{
|
||||||
public YGetArtistTrackBuilder(YandexMusicApi api) : base(api) { }
|
public YGetArtistTrackBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Artist;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Artist;
|
namespace YandexMusic.API.Requests.Artist;
|
||||||
|
|
||||||
public class YGetArtistsBuilder : YMusicRequestBuilder<List<YArtist>?, IEnumerable<string>>
|
internal class YGetArtistsBuilder : YMusicRequestBuilder<List<YArtist>?, IEnumerable<string>>
|
||||||
{
|
{
|
||||||
public YGetArtistsBuilder(YandexMusicApi api) : base(api) { }
|
public YGetArtistsBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using YandexMusic.API.Requests.Common;
|
|||||||
namespace YandexMusic.API.Requests;
|
namespace YandexMusic.API.Requests;
|
||||||
|
|
||||||
/// <summary>Базовый класс для запросов к Passport (passport.yandex.ru).</summary>
|
/// <summary>Базовый класс для запросов к Passport (passport.yandex.ru).</summary>
|
||||||
public abstract class YAuthRequestBuilder<TResponse, TParams> : YJsonRequestBuilder<TResponse, TParams>
|
internal abstract class YAuthRequestBuilder<TResponse, TParams> : YJsonRequestBuilder<TResponse, TParams>
|
||||||
{
|
{
|
||||||
protected override string BaseUrl => YConstants.Endpoints.PassportUrl;
|
protected override string BaseUrl => YConstants.Endpoints.PassportUrl;
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ namespace YandexMusic.API.Requests.Common;
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Строитель запросов с десериализацией JSON-ответа в TResponse.
|
/// Строитель запросов с десериализацией JSON-ответа в TResponse.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract class YJsonRequestBuilder<TResponse, TParams> : YRequestBuilder<TParams>
|
internal abstract class YJsonRequestBuilder<TResponse, TParams> : YRequestBuilder<TParams>
|
||||||
{
|
{
|
||||||
protected YJsonRequestBuilder(YandexMusicApi api) : base(api) { }
|
protected YJsonRequestBuilder(YandexMusicApi api) : base(api) { }
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ using YandexMusic.API.Requests.Common;
|
|||||||
namespace YandexMusic.API.Requests;
|
namespace YandexMusic.API.Requests;
|
||||||
|
|
||||||
/// <summary>Базовый класс для запросов к API Яндекс Музыки (api.music.yandex.net).</summary>
|
/// <summary>Базовый класс для запросов к API Яндекс Музыки (api.music.yandex.net).</summary>
|
||||||
public abstract class YMusicRequestBuilder<TResponse, TParams> : YJsonRequestBuilder<TResponse, TParams>
|
internal abstract class YMusicRequestBuilder<TResponse, TParams> : YJsonRequestBuilder<TResponse, TParams>
|
||||||
{
|
{
|
||||||
protected override string BaseUrl => YConstants.Endpoints.MusicUrl;
|
protected override string BaseUrl => YConstants.Endpoints.MusicUrl;
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ namespace YandexMusic.API.Requests.Common;
|
|||||||
|
|
||||||
/// <summary>Базовый строитель HTTP-запросов.</summary>
|
/// <summary>Базовый строитель HTTP-запросов.</summary>
|
||||||
/// <typeparam name="TParams">Тип параметров запроса.</typeparam>
|
/// <typeparam name="TParams">Тип параметров запроса.</typeparam>
|
||||||
public abstract class YRequestBuilder<TParams>
|
internal abstract class YRequestBuilder<TParams>
|
||||||
{
|
{
|
||||||
/// <summary>HTTP-метод (GET, POST и т.д.).</summary>
|
/// <summary>HTTP-метод (GET, POST и т.д.).</summary>
|
||||||
protected abstract string Method { get; }
|
protected abstract string Method { get; }
|
||||||
|
|||||||
@@ -1,10 +1,9 @@
|
|||||||
using System.Net;
|
using System.Net;
|
||||||
using YandexMusic.API.Models.Feed;
|
using YandexMusic.API.Models.Feed;
|
||||||
using YandexMusic.API.Requests.Common;
|
|
||||||
|
|
||||||
namespace YandexMusic.API.Requests.Feed;
|
namespace YandexMusic.API.Requests.Feed;
|
||||||
|
|
||||||
public class YGetFeedBuilder : YMusicRequestBuilder<YFeed?, object>
|
internal class YGetFeedBuilder : YMusicRequestBuilder<YFeed?, object>
|
||||||
{
|
{
|
||||||
public YGetFeedBuilder(YandexMusicApi api) : base(api) { }
|
public YGetFeedBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ using YandexMusic.API.Models.Label;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Label;
|
namespace YandexMusic.API.Requests.Label;
|
||||||
|
|
||||||
public class YGetLabelAlbumsBuilder : YMusicRequestBuilder<YLabelAlbums?, (YLabel label, int pageNumber)>
|
internal class YGetLabelAlbumsBuilder : YMusicRequestBuilder<YLabelAlbums?, (YLabel label, int pageNumber)>
|
||||||
{
|
{
|
||||||
public YGetLabelAlbumsBuilder(YandexMusicApi api) : base(api) { }
|
public YGetLabelAlbumsBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ using YandexMusic.API.Models.Label;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Label;
|
namespace YandexMusic.API.Requests.Label;
|
||||||
|
|
||||||
public class YGetLabelArtistsBuilder : YMusicRequestBuilder<YLabelArtists?, (YLabel label, int pageNumber)>
|
internal class YGetLabelArtistsBuilder : YMusicRequestBuilder<YLabelArtists?, (YLabel label, int pageNumber)>
|
||||||
{
|
{
|
||||||
public YGetLabelArtistsBuilder(YandexMusicApi api) : base(api) { }
|
public YGetLabelArtistsBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -1,10 +1,9 @@
|
|||||||
using System.Net;
|
using System.Net;
|
||||||
using YandexMusic.API.Models.Landing;
|
using YandexMusic.API.Models.Landing;
|
||||||
using YandexMusic.API.Requests.Common;
|
|
||||||
|
|
||||||
namespace YandexMusic.API.Requests.Landing;
|
namespace YandexMusic.API.Requests.Landing;
|
||||||
|
|
||||||
public class YGetChildrenLandingBuilder : YMusicRequestBuilder<YChildrenLanding?, object>
|
internal class YGetChildrenLandingBuilder : YMusicRequestBuilder<YChildrenLanding?, object>
|
||||||
{
|
{
|
||||||
public YGetChildrenLandingBuilder(YandexMusicApi api) : base(api) { }
|
public YGetChildrenLandingBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using YandexMusic.API.Models.Landing;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Landing;
|
namespace YandexMusic.API.Requests.Landing;
|
||||||
|
|
||||||
public class YGetLandingBuilder : YMusicRequestBuilder<YLanding?, YLandingBlockType[]>
|
internal class YGetLandingBuilder : YMusicRequestBuilder<YLanding?, YLandingBlockType[]>
|
||||||
{
|
{
|
||||||
public YGetLandingBuilder(YandexMusicApi api) : base(api) { }
|
public YGetLandingBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ using YandexMusic.API.Models.Library;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Library;
|
namespace YandexMusic.API.Requests.Library;
|
||||||
|
|
||||||
public class YGetLibraryRecentlyListenedBuilder : YMusicRequestBuilder<YRecentlyListenedContext?, (IEnumerable<YPlayContextType> contextTypes, int trackCount, int contextCount)>
|
internal class YGetLibraryRecentlyListenedBuilder : YMusicRequestBuilder<YRecentlyListenedContext?, (IEnumerable<YPlayContextType> contextTypes, int trackCount, int contextCount)>
|
||||||
{
|
{
|
||||||
public YGetLibraryRecentlyListenedBuilder(YandexMusicApi api) : base(api) { }
|
public YGetLibraryRecentlyListenedBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Library;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Library;
|
namespace YandexMusic.API.Requests.Library;
|
||||||
|
|
||||||
public class YGetLibrarySectionBuilder<T> : YMusicRequestBuilder<T?, (YLibrarySection section, YLibrarySectionType type)>
|
internal class YGetLibrarySectionBuilder<T> : YMusicRequestBuilder<T?, (YLibrarySection section, YLibrarySectionType type)>
|
||||||
{
|
{
|
||||||
public YGetLibrarySectionBuilder(YandexMusicApi api) : base(api) { }
|
public YGetLibrarySectionBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Library;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Library;
|
namespace YandexMusic.API.Requests.Library;
|
||||||
|
|
||||||
public class YLibraryAddBuilder<T> : YMusicRequestBuilder<T?, (string id, YLibrarySection section, YLibrarySectionType type)>
|
internal class YLibraryAddBuilder<T> : YMusicRequestBuilder<T?, (string id, YLibrarySection section, YLibrarySectionType type)>
|
||||||
{
|
{
|
||||||
public YLibraryAddBuilder(YandexMusicApi api) : base(api) { }
|
public YLibraryAddBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Library;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Library;
|
namespace YandexMusic.API.Requests.Library;
|
||||||
|
|
||||||
public class YLibraryRemoveBuilder<T> : YMusicRequestBuilder<T?, (string id, YLibrarySection section, YLibrarySectionType type)>
|
internal class YLibraryRemoveBuilder<T> : YMusicRequestBuilder<T?, (string id, YLibrarySection section, YLibrarySectionType type)>
|
||||||
{
|
{
|
||||||
public YLibraryRemoveBuilder(YandexMusicApi api) : base(api) { }
|
public YLibraryRemoveBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -1,10 +1,9 @@
|
|||||||
using System.Net;
|
using System.Net;
|
||||||
using YandexMusic.API.Models.Pins;
|
using YandexMusic.API.Models.Pins;
|
||||||
using YandexMusic.API.Requests.Common;
|
|
||||||
|
|
||||||
namespace YandexMusic.API.Requests.Pins;
|
namespace YandexMusic.API.Requests.Pins;
|
||||||
|
|
||||||
public class YGetPinsBuilder : YMusicRequestBuilder<YPins?, object>
|
internal class YGetPinsBuilder : YMusicRequestBuilder<YPins?, object>
|
||||||
{
|
{
|
||||||
public YGetPinsBuilder(YandexMusicApi api) : base(api) { }
|
public YGetPinsBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Playlist;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Playlist;
|
namespace YandexMusic.API.Requests.Playlist;
|
||||||
|
|
||||||
public class YGetPlaylistBuilder : YMusicRequestBuilder<YPlaylist?, (string user, string kind)>
|
internal class YGetPlaylistBuilder : YMusicRequestBuilder<YPlaylist?, (string user, string kind)>
|
||||||
{
|
{
|
||||||
public YGetPlaylistBuilder(YandexMusicApi api) : base(api) { }
|
public YGetPlaylistBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Playlist;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Playlist;
|
namespace YandexMusic.API.Requests.Playlist;
|
||||||
|
|
||||||
public class YGetPlaylistByUuidBuilder : YMusicRequestBuilder<YPlaylist?, string>
|
internal class YGetPlaylistByUuidBuilder : YMusicRequestBuilder<YPlaylist?, string>
|
||||||
{
|
{
|
||||||
public YGetPlaylistByUuidBuilder(YandexMusicApi api) : base(api) { }
|
public YGetPlaylistByUuidBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Playlist;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Playlist;
|
namespace YandexMusic.API.Requests.Playlist;
|
||||||
|
|
||||||
public class YGetPlaylistFavoritesBuilder : YMusicRequestBuilder<List<YPlaylist>?, object>
|
internal class YGetPlaylistFavoritesBuilder : YMusicRequestBuilder<List<YPlaylist>?, object>
|
||||||
{
|
{
|
||||||
public YGetPlaylistFavoritesBuilder(YandexMusicApi api) : base(api) { }
|
public YGetPlaylistFavoritesBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Playlist;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Playlist;
|
namespace YandexMusic.API.Requests.Playlist;
|
||||||
|
|
||||||
public class YGetPlaylistsBuilder : YMusicRequestBuilder<List<YPlaylist>?, IEnumerable<(string User, string Kind)>>
|
internal class YGetPlaylistsBuilder : YMusicRequestBuilder<List<YPlaylist>?, IEnumerable<(string User, string Kind)>>
|
||||||
{
|
{
|
||||||
public YGetPlaylistsBuilder(YandexMusicApi api) : base(api) { }
|
public YGetPlaylistsBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Playlist;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Playlist;
|
namespace YandexMusic.API.Requests.Playlist;
|
||||||
|
|
||||||
public class YPlaylistChangeBuilder : YMusicRequestBuilder<YPlaylist?, (YPlaylist playlist, IEnumerable<YPlaylistChange> changes)>
|
internal class YPlaylistChangeBuilder : YMusicRequestBuilder<YPlaylist?, (YPlaylist playlist, IEnumerable<YPlaylistChange> changes)>
|
||||||
{
|
{
|
||||||
public YPlaylistChangeBuilder(YandexMusicApi api) : base(api) { }
|
public YPlaylistChangeBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Playlist;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Playlist;
|
namespace YandexMusic.API.Requests.Playlist;
|
||||||
|
|
||||||
public class YPlaylistCreateBuilder : YMusicRequestBuilder<YPlaylist?, string>
|
internal class YPlaylistCreateBuilder : YMusicRequestBuilder<YPlaylist?, string>
|
||||||
{
|
{
|
||||||
public YPlaylistCreateBuilder(YandexMusicApi api) : base(api) { }
|
public YPlaylistCreateBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Playlist;
|
namespace YandexMusic.API.Requests.Playlist;
|
||||||
|
|
||||||
public class YPlaylistRemoveBuilder : YMusicRequestBuilder<HttpResponseMessage, string>
|
internal class YPlaylistRemoveBuilder : YMusicRequestBuilder<HttpResponseMessage, string>
|
||||||
{
|
{
|
||||||
public YPlaylistRemoveBuilder(YandexMusicApi api) : base(api) { }
|
public YPlaylistRemoveBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Playlist;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Playlist;
|
namespace YandexMusic.API.Requests.Playlist;
|
||||||
|
|
||||||
public class YPlaylistRenameBuilder : YMusicRequestBuilder<YPlaylist?, (string kind, string name)>
|
internal class YPlaylistRenameBuilder : YMusicRequestBuilder<YPlaylist?, (string kind, string name)>
|
||||||
{
|
{
|
||||||
public YPlaylistRenameBuilder(YandexMusicApi api) : base(api) { }
|
public YPlaylistRenameBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Queue;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Queue;
|
namespace YandexMusic.API.Requests.Queue;
|
||||||
|
|
||||||
public class YGetQueueBuilder : YMusicRequestBuilder<YQueue?, string>
|
internal class YGetQueueBuilder : YMusicRequestBuilder<YQueue?, string>
|
||||||
{
|
{
|
||||||
public YGetQueueBuilder(YandexMusicApi api) : base(api) { }
|
public YGetQueueBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ using YandexMusic.API.Models.Queue;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Queue;
|
namespace YandexMusic.API.Requests.Queue;
|
||||||
|
|
||||||
public class YQueueCreateBuilder : YMusicRequestBuilder<YNewQueue?, YQueue>
|
internal class YQueueCreateBuilder : YMusicRequestBuilder<YNewQueue?, YQueue>
|
||||||
{
|
{
|
||||||
private string? _device;
|
private string? _device;
|
||||||
public YQueueCreateBuilder(YandexMusicApi api, string? device = null) : base(api) => _device = device;
|
public YQueueCreateBuilder(YandexMusicApi api, string? device = null) : base(api) => _device = device;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ using YandexMusic.API.Models.Queue;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Queue;
|
namespace YandexMusic.API.Requests.Queue;
|
||||||
|
|
||||||
public class YQueueUpdatePositionBuilder : YMusicRequestBuilder<YUpdatedQueue?, (string queueId, int currentIndex, bool isInteractive)>
|
internal class YQueueUpdatePositionBuilder : YMusicRequestBuilder<YUpdatedQueue?, (string queueId, int currentIndex, bool isInteractive)>
|
||||||
{
|
{
|
||||||
private string? _device;
|
private string? _device;
|
||||||
public YQueueUpdatePositionBuilder(YandexMusicApi api, string? device = null) : base(api) => _device = device;
|
public YQueueUpdatePositionBuilder(YandexMusicApi api, string? device = null) : base(api) => _device = device;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using YandexMusic.API.Models.Queue;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Queue;
|
namespace YandexMusic.API.Requests.Queue;
|
||||||
|
|
||||||
public class YQueuesListBuilder : YMusicRequestBuilder<YQueueItemsContainer?, string?>
|
internal class YQueuesListBuilder : YMusicRequestBuilder<YQueueItemsContainer?, string?>
|
||||||
{
|
{
|
||||||
private string? _device;
|
private string? _device;
|
||||||
public YQueuesListBuilder(YandexMusicApi api, string? device = null) : base(api) => _device = device;
|
public YQueuesListBuilder(YandexMusicApi api, string? device = null) : base(api) => _device = device;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Radio;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Radio;
|
namespace YandexMusic.API.Requests.Radio;
|
||||||
|
|
||||||
public class YGetStationBuilder : YMusicRequestBuilder<List<YStation>?, (string type, string tag)>
|
internal class YGetStationBuilder : YMusicRequestBuilder<List<YStation>?, (string type, string tag)>
|
||||||
{
|
{
|
||||||
public YGetStationBuilder(YandexMusicApi api) : base(api) { }
|
public YGetStationBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using YandexMusic.API.Models.Radio;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Radio;
|
namespace YandexMusic.API.Requests.Radio;
|
||||||
|
|
||||||
public class YGetStationTracksBuilder : YMusicRequestBuilder<YStationSequence?, (YStationDescription station, string prevTrackId)>
|
internal class YGetStationTracksBuilder : YMusicRequestBuilder<YStationSequence?, (YStationDescription station, string prevTrackId)>
|
||||||
{
|
{
|
||||||
public YGetStationTracksBuilder(YandexMusicApi api) : base(api) { }
|
public YGetStationTracksBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -1,10 +1,9 @@
|
|||||||
using System.Net;
|
using System.Net;
|
||||||
using YandexMusic.API.Models.Radio;
|
using YandexMusic.API.Models.Radio;
|
||||||
using YandexMusic.API.Requests.Common;
|
|
||||||
|
|
||||||
namespace YandexMusic.API.Requests.Radio;
|
namespace YandexMusic.API.Requests.Radio;
|
||||||
|
|
||||||
public class YGetStationsBuilder : YMusicRequestBuilder<List<YStation>?, object>
|
internal class YGetStationsBuilder : YMusicRequestBuilder<List<YStation>?, object>
|
||||||
{
|
{
|
||||||
public YGetStationsBuilder(YandexMusicApi api) : base(api) { }
|
public YGetStationsBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -1,10 +1,9 @@
|
|||||||
using System.Net;
|
using System.Net;
|
||||||
using YandexMusic.API.Models.Radio;
|
using YandexMusic.API.Models.Radio;
|
||||||
using YandexMusic.API.Requests.Common;
|
|
||||||
|
|
||||||
namespace YandexMusic.API.Requests.Radio;
|
namespace YandexMusic.API.Requests.Radio;
|
||||||
|
|
||||||
public class YGetStationsDashboardBuilder : YMusicRequestBuilder<YStationsDashboard?, object>
|
internal class YGetStationsDashboardBuilder : YMusicRequestBuilder<YStationsDashboard?, object>
|
||||||
{
|
{
|
||||||
public YGetStationsDashboardBuilder(YandexMusicApi api) : base(api) { }
|
public YGetStationsDashboardBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ using YandexMusic.API.Models.Radio;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Radio;
|
namespace YandexMusic.API.Requests.Radio;
|
||||||
|
|
||||||
public class YSetSettings2Builder : YMusicRequestBuilder<string?, (YStationDescription station, YStationSettings2 settings2)>
|
internal class YSetSettings2Builder : YMusicRequestBuilder<string?, (YStationDescription station, YStationSettings2 settings2)>
|
||||||
{
|
{
|
||||||
public YSetSettings2Builder(YandexMusicApi api) : base(api) { }
|
public YSetSettings2Builder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ using YandexMusic.API.Models.Track;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Radio;
|
namespace YandexMusic.API.Requests.Radio;
|
||||||
|
|
||||||
public class YSetStationFeedbackBuilder : YMusicRequestBuilder<string?, (YStationFeedbackType type, YStation station, YTrack? track, string batchId, double totalPlayedSeconds)>
|
internal class YSetStationFeedbackBuilder : YMusicRequestBuilder<string?, (YStationFeedbackType type, YStation station, YTrack? track, string batchId, double totalPlayedSeconds)>
|
||||||
{
|
{
|
||||||
public YSetStationFeedbackBuilder(YandexMusicApi api) : base(api) { }
|
public YSetStationFeedbackBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ using YandexMusic.API.Models.Search;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Search;
|
namespace YandexMusic.API.Requests.Search;
|
||||||
|
|
||||||
public class YSearchBuilder : YMusicRequestBuilder<YSearch?, (string searchText, YSearchType searchType, int page, int pageSize)>
|
internal class YSearchBuilder : YMusicRequestBuilder<YSearch?, (string searchText, YSearchType searchType, int page, int pageSize)>
|
||||||
{
|
{
|
||||||
public YSearchBuilder(YandexMusicApi api) : base(api) { }
|
public YSearchBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using YandexMusic.API.Models.Search;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Search;
|
namespace YandexMusic.API.Requests.Search;
|
||||||
|
|
||||||
public class YSearchSuggestBuilder : YMusicRequestBuilder<YSearchSuggest?, string>
|
internal class YSearchSuggestBuilder : YMusicRequestBuilder<YSearchSuggest?, string>
|
||||||
{
|
{
|
||||||
public YSearchSuggestBuilder(YandexMusicApi api) : base(api) { }
|
public YSearchSuggestBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Track;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Track;
|
namespace YandexMusic.API.Requests.Track;
|
||||||
|
|
||||||
public class YGetTrackSimilarBuilder : YMusicRequestBuilder<YTrackSimilar?, string>
|
internal class YGetTrackSimilarBuilder : YMusicRequestBuilder<YTrackSimilar?, string>
|
||||||
{
|
{
|
||||||
public YGetTrackSimilarBuilder(YandexMusicApi api) : base(api) { }
|
public YGetTrackSimilarBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Track;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Track;
|
namespace YandexMusic.API.Requests.Track;
|
||||||
|
|
||||||
public class YGetTrackSupplementBuilder : YMusicRequestBuilder<YTrackSupplement?, string>
|
internal class YGetTrackSupplementBuilder : YMusicRequestBuilder<YTrackSupplement?, string>
|
||||||
{
|
{
|
||||||
public YGetTrackSupplementBuilder(YandexMusicApi api) : base(api) { }
|
public YGetTrackSupplementBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ using YandexMusic.API.Models.Track;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Track;
|
namespace YandexMusic.API.Requests.Track;
|
||||||
|
|
||||||
public class YGetTracksBuilder : YMusicRequestBuilder<List<YTrack>?, IEnumerable<string>>
|
internal class YGetTracksBuilder : YMusicRequestBuilder<List<YTrack>?, IEnumerable<string>>
|
||||||
{
|
{
|
||||||
public YGetTracksBuilder(YandexMusicApi api) : base(api) { }
|
public YGetTracksBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using YandexMusic.API.Models.Track;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Track;
|
namespace YandexMusic.API.Requests.Track;
|
||||||
|
|
||||||
public class YSendTrackInfoBuilder : YMusicRequestBuilder<string?, (YTrack track, string from, bool fromCache, string playId, string playlistId, double totalPlayedSeconds, double endPositionSeconds)>
|
internal class YSendTrackInfoBuilder : YMusicRequestBuilder<string?, (YTrack track, string from, bool fromCache, string playId, string playlistId, double totalPlayedSeconds, double endPositionSeconds)>
|
||||||
{
|
{
|
||||||
public YSendTrackInfoBuilder(YandexMusicApi api) : base(api) { }
|
public YSendTrackInfoBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Post;
|
protected override string Method => WebRequestMethods.Http.Post;
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ using YandexMusic.API.Requests.Common;
|
|||||||
namespace YandexMusic.API.Requests.Track;
|
namespace YandexMusic.API.Requests.Track;
|
||||||
|
|
||||||
/// <summary>Особый запрос – не к api.music.yandex.net, а к произвольному URL.</summary>
|
/// <summary>Особый запрос – не к api.music.yandex.net, а к произвольному URL.</summary>
|
||||||
public class YStorageDownloadFileBuilder : YJsonRequestBuilder<YStorageDownloadFile?, string>
|
internal class YStorageDownloadFileBuilder : YJsonRequestBuilder<YStorageDownloadFile?, string>
|
||||||
{
|
{
|
||||||
public YStorageDownloadFileBuilder(YandexMusicApi api) : base(api) { }
|
public YStorageDownloadFileBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string BaseUrl => ""; // не используется, т.к. URL берётся из параметра
|
protected override string BaseUrl => ""; // не используется, т.к. URL берётся из параметра
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ using YandexMusic.API.Models.Common;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Track;
|
namespace YandexMusic.API.Requests.Track;
|
||||||
|
|
||||||
public class YTrackDownloadInfoBuilder : YMusicRequestBuilder<List<YTrackDownloadInfo>?, (string trackKey, bool direct)>
|
internal class YTrackDownloadInfoBuilder : YMusicRequestBuilder<List<YTrackDownloadInfo>?, (string trackKey, bool direct)>
|
||||||
{
|
{
|
||||||
public YTrackDownloadInfoBuilder(YandexMusicApi api) : base(api) { }
|
public YTrackDownloadInfoBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string Method => WebRequestMethods.Http.Get;
|
protected override string Method => WebRequestMethods.Http.Get;
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ using YandexMusic.API.Models.Ugc;
|
|||||||
|
|
||||||
namespace YandexMusic.API.Requests.Ugc;
|
namespace YandexMusic.API.Requests.Ugc;
|
||||||
|
|
||||||
public class YUgcGetUploadLinkBuilder : YMusicRequestBuilder<YUgcUpload?, (YPlaylist playlist, string fileName)>
|
internal class YUgcGetUploadLinkBuilder : YMusicRequestBuilder<YUgcUpload?, (YPlaylist playlist, string fileName)>
|
||||||
{
|
{
|
||||||
private static readonly Random _random = new();
|
private static readonly Random _random = new();
|
||||||
public YUgcGetUploadLinkBuilder(YandexMusicApi api) : base(api) { }
|
public YUgcGetUploadLinkBuilder(YandexMusicApi api) : base(api) { }
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ using YandexMusic.API.Requests.Common;
|
|||||||
namespace YandexMusic.API.Requests.Ugc;
|
namespace YandexMusic.API.Requests.Ugc;
|
||||||
|
|
||||||
/// <summary>Загрузка трека – специальный запрос на произвольный URL.</summary>
|
/// <summary>Загрузка трека – специальный запрос на произвольный URL.</summary>
|
||||||
public class YUgcUploadBuilder : YJsonRequestBuilder<YResponse<string>?, (string postTargetLink, byte[] fileBytes)>
|
internal class YUgcUploadBuilder : YJsonRequestBuilder<YResponse<string>?, (string postTargetLink, byte[] fileBytes)>
|
||||||
{
|
{
|
||||||
public YUgcUploadBuilder(YandexMusicApi api) : base(api) { }
|
public YUgcUploadBuilder(YandexMusicApi api) : base(api) { }
|
||||||
protected override string BaseUrl => "";
|
protected override string BaseUrl => "";
|
||||||
|
|||||||
@@ -26,6 +26,9 @@ public class YandexMusicClient : IDisposable
|
|||||||
private readonly bool _ownsHttpClient;
|
private readonly bool _ownsHttpClient;
|
||||||
private YnisonPlayer? _player;
|
private YnisonPlayer? _player;
|
||||||
|
|
||||||
|
/// <summary>Хранилище авторизации.</summary>
|
||||||
|
public AuthStorage AuthStorage => _storage;
|
||||||
|
|
||||||
/// <summary>Информация об аккаунте (после авторизации).</summary>
|
/// <summary>Информация об аккаунте (после авторизации).</summary>
|
||||||
public YAccount Account => _storage.User;
|
public YAccount Account => _storage.User;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user