|
- using System.Collections.Generic;
- using System.Collections.Immutable;
- using System.Diagnostics;
- using Model = Discord.API.Connection;
-
- namespace Discord.Rest
- {
- [DebuggerDisplay(@"{DebuggerDisplay,nq}")]
- public class RestConnection : IConnection
- {
- /// <inheritdoc />
- public string Id { get; }
- /// <inheritdoc />
- public string Type { get; }
- /// <inheritdoc />
- public string Name { get; }
- /// <inheritdoc />
- public bool IsRevoked { get; }
- /// <inheritdoc />
- public IReadOnlyCollection<ulong> IntegrationIds { get; }
-
- internal RestConnection(string id, string type, string name, bool isRevoked, IReadOnlyCollection<ulong> integrationIds)
- {
- Id = id;
- Type = type;
- Name = name;
- IsRevoked = isRevoked;
-
- IntegrationIds = integrationIds;
- }
- internal static RestConnection Create(Model model)
- {
- return new RestConnection(model.Id, model.Type, model.Name, model.Revoked, model.Integrations.ToImmutableArray());
- }
-
- /// <summary>
- /// Gets the name of the connection.
- /// </summary>
- /// <returns>
- /// Name of the connection.
- /// </returns>
- public override string ToString() => Name;
- private string DebuggerDisplay => $"{Name} ({Id}, {Type}{(IsRevoked ? ", Revoked" : "")})";
- }
- }
|