Skip to content

Commit

Permalink
Merge pull request #49 from Zastai/drop-recent-listens
Browse files Browse the repository at this point in the history
Drop recent listens
  • Loading branch information
Zastai authored Dec 22, 2023
2 parents ad737dd + b53f223 commit 4fd5515
Show file tree
Hide file tree
Showing 7 changed files with 0 additions and 271 deletions.
19 changes: 0 additions & 19 deletions MetaBrainz.ListenBrainz/Interfaces/IRecentListens.cs

This file was deleted.

1 change: 0 additions & 1 deletion MetaBrainz.ListenBrainz/Json/Converters.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ public static IEnumerable<JsonConverter> Readers {
yield return LatestImportReader.Instance;
yield return ListenCountReader.Instance;
yield return PlayingNowReader.Instance;
yield return RecentListensReader.Instance;
yield return SiteArtistStatisticsReader.Instance;
yield return TokenValidationResultReader.Instance;
yield return UserArtistMapReader.Instance;
Expand Down
54 changes: 0 additions & 54 deletions MetaBrainz.ListenBrainz/Json/Readers/RecentListensReader.cs

This file was deleted.

103 changes: 0 additions & 103 deletions MetaBrainz.ListenBrainz/ListenBrainz.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
using System.Collections.Generic;
using System.Diagnostics;
using System.Globalization;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Net.Http.Headers;
Expand Down Expand Up @@ -1441,108 +1440,6 @@ public Task<IPlayingNow> GetPlayingNowAsync(string user, CancellationToken cance

#endregion

#region /1/users/xxx/recent-listens

private static string FormatUserList(IEnumerable<string> userList) => string.Join(",", userList.Select(Uri.EscapeDataString));

private static Dictionary<string, string> OptionsForRecentListens(int limit)
=> new() { ["limit"] = limit.ToString(CultureInfo.InvariantCulture) };

/// <summary>Gets recent listen(s) for a set of users.</summary>
/// <param name="users">The MusicBrainz IDs of the users whose data is needed.</param>
/// <returns>The requested listens.</returns>
/// <exception cref="HttpRequestException">When there was a problem sending the web service request.</exception>
/// <exception cref="HttpError">When the web service sends a response indicating an error.</exception>
public IRecentListens GetRecentListens(IEnumerable<string> users) => AsyncUtils.ResultOf(this.GetRecentListensAsync(users));

/// <summary>Gets recent listen(s) for a set of users.</summary>
/// <param name="users">The MusicBrainz IDs of the users whose data is needed.</param>
/// <returns>The requested listens.</returns>
/// <exception cref="HttpRequestException">When there was a problem sending the web service request.</exception>
/// <exception cref="HttpError">When the web service sends a response indicating an error.</exception>
public IRecentListens GetRecentListens(params string[] users) => AsyncUtils.ResultOf(this.GetRecentListensAsync(users));

/// <summary>Gets recent listen(s) for a set of users.</summary>
/// <param name="limit">The maximum number of listens to return.</param>
/// <param name="users">The MusicBrainz IDs of the users whose data is needed.</param>
/// <returns>The requested listens.</returns>
/// <exception cref="HttpRequestException">When there was a problem sending the web service request.</exception>
/// <exception cref="HttpError">When the web service sends a response indicating an error.</exception>
public IRecentListens GetRecentListens(int limit, IEnumerable<string> users)
=> AsyncUtils.ResultOf(this.GetRecentListensAsync(limit, users));

/// <summary>Gets recent listen(s) for a set of users.</summary>
/// <param name="limit">The maximum number of listens to return.</param>
/// <param name="users">The MusicBrainz IDs of the users whose data is needed.</param>
/// <returns>The requested listens.</returns>
/// <exception cref="HttpRequestException">When there was a problem sending the web service request.</exception>
/// <exception cref="HttpError">When the web service sends a response indicating an error.</exception>
public IRecentListens GetRecentListens(int limit, params string[] users)
=> AsyncUtils.ResultOf(this.GetRecentListensAsync(limit, users));

/// <summary>Gets recent listen(s) for a set of users.</summary>
/// <param name="cancellationToken">The cancellation token to cancel the operation.</param>
/// <param name="users">The MusicBrainz IDs of the users whose data is needed.</param>
/// <returns>The requested listens.</returns>
/// <exception cref="HttpRequestException">When there was a problem sending the web service request.</exception>
/// <exception cref="HttpError">When the web service sends a response indicating an error.</exception>
public Task<IRecentListens> GetRecentListensAsync(CancellationToken cancellationToken, params string[] users)
=> this.GetRecentListensAsync(users, cancellationToken);

/// <summary>Gets recent listen(s) for a set of users.</summary>
/// <param name="cancellationToken">The cancellation token to cancel the operation.</param>
/// <param name="users">The MusicBrainz IDs of the users whose data is needed.</param>
/// <returns>The requested listens.</returns>
/// <exception cref="HttpRequestException">When there was a problem sending the web service request.</exception>
/// <exception cref="HttpError">When the web service sends a response indicating an error.</exception>
public Task<IRecentListens> GetRecentListensAsync(IEnumerable<string> users, CancellationToken cancellationToken = default) {
var address = $"users/{ListenBrainz.FormatUserList(users)}/recent-listens";
return this.GetAsync<IRecentListens, RecentListens>(address, null, cancellationToken);
}

/// <summary>Gets recent listen(s) for a set of users.</summary>
/// <param name="limit">The maximum number of listens to return.</param>
/// <param name="cancellationToken">The cancellation token to cancel the operation.</param>
/// <param name="users">The MusicBrainz IDs of the users whose data is needed.</param>
/// <returns>The requested listens.</returns>
/// <exception cref="HttpRequestException">When there was a problem sending the web service request.</exception>
/// <exception cref="HttpError">When the web service sends a response indicating an error.</exception>
public Task<IRecentListens> GetRecentListensAsync(int limit, CancellationToken cancellationToken, params string[] users)
=> this.GetRecentListensAsync(limit, users, cancellationToken);

/// <summary>Gets recent listen(s) for a set of users.</summary>
/// <param name="limit">The maximum number of listens to return.</param>
/// <param name="users">The MusicBrainz IDs of the users whose data is needed.</param>
/// <param name="cancellationToken">The cancellation token to cancel the operation.</param>
/// <returns>The requested listens.</returns>
/// <exception cref="HttpRequestException">When there was a problem sending the web service request.</exception>
/// <exception cref="HttpError">When the web service sends a response indicating an error.</exception>
public Task<IRecentListens> GetRecentListensAsync(int limit, IEnumerable<string> users,
CancellationToken cancellationToken = default) {
var requestUri = $"users/{ListenBrainz.FormatUserList(users)}/recent-listens";
var options = ListenBrainz.OptionsForRecentListens(limit);
return this.GetAsync<IRecentListens, RecentListens>(requestUri, options, cancellationToken);
}

/// <summary>Gets recent listen(s) for a set of users.</summary>
/// <param name="limit">The maximum number of listens to return.</param>
/// <param name="users">The MusicBrainz IDs of the users whose data is needed.</param>
/// <returns>The requested listens.</returns>
/// <exception cref="HttpRequestException">When there was a problem sending the web service request.</exception>
/// <exception cref="HttpError">When the web service sends a response indicating an error.</exception>
public Task<IRecentListens> GetRecentListensAsync(int limit, params string[] users)
=> this.GetRecentListensAsync(limit, (IEnumerable<string>) users);

/// <summary>Gets recent listen(s) for a set of users.</summary>
/// <param name="users">The MusicBrainz IDs of the users whose data is needed.</param>
/// <returns>The requested listens.</returns>
/// <exception cref="HttpRequestException">When there was a problem sending the web service request.</exception>
/// <exception cref="HttpError">When the web service sends a response indicating an error.</exception>
public Task<IRecentListens> GetRecentListensAsync(params string[] users)
=> this.GetAsync<IRecentListens, RecentListens>($"users/{ListenBrainz.FormatUserList(users)}/recent-listens", null);

#endregion

#region /1/validate-token

private static Dictionary<string, string> OptionsForTokenValidation(string token) => new() { ["token"] = token };
Expand Down
22 changes: 0 additions & 22 deletions MetaBrainz.ListenBrainz/Objects/RecentListens.cs

This file was deleted.

36 changes: 0 additions & 36 deletions public-api/MetaBrainz.ListenBrainz.net6.0.cs.md
Original file line number Diff line number Diff line change
Expand Up @@ -190,26 +190,6 @@ public sealed class ListenBrainz : System.IDisposable {

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IPlayingNow> GetPlayingNowAsync(string user, System.Threading.CancellationToken cancellationToken = default);

public MetaBrainz.ListenBrainz.Interfaces.IRecentListens GetRecentListens(System.Collections.Generic.IEnumerable<string> users);

public MetaBrainz.ListenBrainz.Interfaces.IRecentListens GetRecentListens(int limit, System.Collections.Generic.IEnumerable<string> users);

public MetaBrainz.ListenBrainz.Interfaces.IRecentListens GetRecentListens(int limit, params string[] users);

public MetaBrainz.ListenBrainz.Interfaces.IRecentListens GetRecentListens(params string[] users);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(System.Collections.Generic.IEnumerable<string> users, System.Threading.CancellationToken cancellationToken = default);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(System.Threading.CancellationToken cancellationToken, params string[] users);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(int limit, System.Collections.Generic.IEnumerable<string> users, System.Threading.CancellationToken cancellationToken = default);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(int limit, System.Threading.CancellationToken cancellationToken, params string[] users);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(int limit, params string[] users);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(params string[] users);

public MetaBrainz.ListenBrainz.Interfaces.IUserRecordingStatistics? GetRecordingStatistics(string user, int? count = default, int? offset = default, StatisticsRange? range = default);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IUserRecordingStatistics?> GetRecordingStatisticsAsync(string user, int? count = default, int? offset = default, StatisticsRange? range = default, System.Threading.CancellationToken cancellationToken = default);
Expand Down Expand Up @@ -697,22 +677,6 @@ public interface IPlayingTrack : MetaBrainz.Common.Json.IJsonBasedObject {
}
```

### Type: IRecentListens

```cs
public interface IRecentListens : MetaBrainz.Common.Json.IJsonBasedObject {

System.Collections.Generic.IReadOnlyList<IListen> Listens {
public abstract get;
}

string UserList {
public abstract get;
}

}
```

### Type: IRecordingInfo

```cs
Expand Down
36 changes: 0 additions & 36 deletions public-api/MetaBrainz.ListenBrainz.net8.0.cs.md
Original file line number Diff line number Diff line change
Expand Up @@ -190,26 +190,6 @@ public sealed class ListenBrainz : System.IDisposable {

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IPlayingNow> GetPlayingNowAsync(string user, System.Threading.CancellationToken cancellationToken = default);

public MetaBrainz.ListenBrainz.Interfaces.IRecentListens GetRecentListens(System.Collections.Generic.IEnumerable<string> users);

public MetaBrainz.ListenBrainz.Interfaces.IRecentListens GetRecentListens(int limit, System.Collections.Generic.IEnumerable<string> users);

public MetaBrainz.ListenBrainz.Interfaces.IRecentListens GetRecentListens(int limit, params string[] users);

public MetaBrainz.ListenBrainz.Interfaces.IRecentListens GetRecentListens(params string[] users);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(System.Collections.Generic.IEnumerable<string> users, System.Threading.CancellationToken cancellationToken = default);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(System.Threading.CancellationToken cancellationToken, params string[] users);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(int limit, System.Collections.Generic.IEnumerable<string> users, System.Threading.CancellationToken cancellationToken = default);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(int limit, System.Threading.CancellationToken cancellationToken, params string[] users);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(int limit, params string[] users);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IRecentListens> GetRecentListensAsync(params string[] users);

public MetaBrainz.ListenBrainz.Interfaces.IUserRecordingStatistics? GetRecordingStatistics(string user, int? count = default, int? offset = default, StatisticsRange? range = default);

public System.Threading.Tasks.Task<MetaBrainz.ListenBrainz.Interfaces.IUserRecordingStatistics?> GetRecordingStatisticsAsync(string user, int? count = default, int? offset = default, StatisticsRange? range = default, System.Threading.CancellationToken cancellationToken = default);
Expand Down Expand Up @@ -697,22 +677,6 @@ public interface IPlayingTrack : MetaBrainz.Common.Json.IJsonBasedObject {
}
```

### Type: IRecentListens

```cs
public interface IRecentListens : MetaBrainz.Common.Json.IJsonBasedObject {

System.Collections.Generic.IReadOnlyList<IListen> Listens {
public abstract get;
}

string UserList {
public abstract get;
}

}
```

### Type: IRecordingInfo

```cs
Expand Down

0 comments on commit 4fd5515

Please sign in to comment.