2020-05-03 21:34:03 +01:00
|
|
|
using System;
|
2020-05-03 00:00:35 +01:00
|
|
|
using System.Collections.Generic;
|
|
|
|
|
|
|
|
namespace SpotifyAPI.Web
|
|
|
|
{
|
|
|
|
public class PlaylistGetItemsRequest : RequestParams
|
|
|
|
{
|
2020-05-05 14:30:00 +01:00
|
|
|
public PlaylistGetItemsRequest(AdditionalTypes types = AdditionalTypes.All)
|
2020-05-03 08:06:28 +01:00
|
|
|
{
|
2020-05-05 14:30:00 +01:00
|
|
|
Ensure.ArgumentNotNull(types, nameof(types));
|
|
|
|
|
|
|
|
AdditionalTypesParam = types;
|
|
|
|
Fields = new List<string>();
|
2020-05-03 08:06:28 +01:00
|
|
|
}
|
|
|
|
|
2020-05-03 00:00:35 +01:00
|
|
|
[QueryParam("fields")]
|
2020-05-05 14:30:00 +01:00
|
|
|
public IList<string> Fields { get; }
|
2020-05-03 00:00:35 +01:00
|
|
|
|
|
|
|
[QueryParam("limit")]
|
|
|
|
public int? Limit { get; set; }
|
|
|
|
|
|
|
|
[QueryParam("offset")]
|
|
|
|
public int? Offset { get; set; }
|
|
|
|
|
|
|
|
[QueryParam("market")]
|
2020-05-25 17:00:38 +01:00
|
|
|
public string? Market { get; set; }
|
2020-05-03 00:00:35 +01:00
|
|
|
|
2020-05-03 08:06:28 +01:00
|
|
|
/// <summary>
|
|
|
|
/// This is set to `"track", "episode"` by default.
|
|
|
|
/// </summary>
|
|
|
|
/// <value></value>
|
2020-05-03 00:00:35 +01:00
|
|
|
[QueryParam("additional_types")]
|
2020-05-07 17:03:20 +01:00
|
|
|
public AdditionalTypes AdditionalTypesParam { get; }
|
2020-05-03 21:34:03 +01:00
|
|
|
|
|
|
|
[Flags]
|
2020-05-05 14:30:00 +01:00
|
|
|
public enum AdditionalTypes
|
2020-05-03 21:34:03 +01:00
|
|
|
{
|
|
|
|
[String("track")]
|
2020-05-05 14:30:00 +01:00
|
|
|
Track = 1,
|
2020-05-03 21:34:03 +01:00
|
|
|
[String("episode")]
|
2020-05-05 14:30:00 +01:00
|
|
|
Episode = 2,
|
2020-05-03 21:34:03 +01:00
|
|
|
All = Track | Episode
|
|
|
|
}
|
2020-05-03 00:00:35 +01:00
|
|
|
}
|
|
|
|
}
|
2020-05-25 17:00:38 +01:00
|
|
|
|