Browse Source

Refactor RoleInfo types into separate classes

- Fixes indentation with a few files (looks like a bad copy+paste job)
- Renames RoleInfo to RoleEditInfo
- Moves RoleInfo from MemberRoleAuditLogData into its own class

All of this should improve docs.
tags/2.0
FiniteReality 7 years ago
parent
commit
4d8764e124
8 changed files with 53 additions and 51 deletions
  1. +2
    -2
      src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/ChannelUpdateAuditLogData.cs
  2. +3
    -17
      src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/MemberRoleAuditLogData.cs
  3. +16
    -0
      src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/MemberRoleEditInfo.cs
  4. +3
    -3
      src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/RoleCreateAuditLogData.cs
  5. +3
    -3
      src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/RoleDeleteAuditLogData.cs
  6. +21
    -0
      src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/RoleEditInfo.cs
  7. +0
    -21
      src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/RoleInfo.cs
  8. +5
    -5
      src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/RoleUpdateAuditLogData.cs

+ 2
- 2
src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/ChannelUpdateAuditLogData.cs View File

@@ -39,7 +39,7 @@ namespace Discord.Rest
} }


public ulong ChannelId { get; } public ulong ChannelId { get; }
public ChannelInfo Before { get; set; }
public ChannelInfo After { get; set; }
public ChannelInfo Before { get; }
public ChannelInfo After { get; }
} }
} }

+ 3
- 17
src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/MemberRoleAuditLogData.cs View File

@@ -9,7 +9,7 @@ namespace Discord.Rest
{ {
public class MemberRoleAuditLogData : IAuditLogData public class MemberRoleAuditLogData : IAuditLogData
{ {
private MemberRoleAuditLogData(IReadOnlyCollection<RoleInfo> roles, IUser target)
private MemberRoleAuditLogData(IReadOnlyCollection<MemberRoleEditInfo> roles, IUser target)
{ {
Roles = roles; Roles = roles;
Target = target; Target = target;
@@ -21,7 +21,7 @@ namespace Discord.Rest


var roleInfos = changes.SelectMany(x => x.NewValue.ToObject<API.Role[]>(), var roleInfos = changes.SelectMany(x => x.NewValue.ToObject<API.Role[]>(),
(model, role) => new { model.ChangedProperty, Role = role }) (model, role) => new { model.ChangedProperty, Role = role })
.Select(x => new RoleInfo(x.Role.Name, x.Role.Id, x.ChangedProperty == "$add"))
.Select(x => new MemberRoleEditInfo(x.Role.Name, x.Role.Id, x.ChangedProperty == "$add"))
.ToList(); .ToList();


var userInfo = log.Users.FirstOrDefault(x => x.Id == entry.TargetId); var userInfo = log.Users.FirstOrDefault(x => x.Id == entry.TargetId);
@@ -30,21 +30,7 @@ namespace Discord.Rest
return new MemberRoleAuditLogData(roleInfos.ToReadOnlyCollection(), user); return new MemberRoleAuditLogData(roleInfos.ToReadOnlyCollection(), user);
} }


public IReadOnlyCollection<RoleInfo> Roles { get; }
public IReadOnlyCollection<MemberRoleEditInfo> Roles { get; }
public IUser Target { get; } public IUser Target { get; }

public struct RoleInfo
{
internal RoleInfo(string name, ulong roleId, bool added)
{
Name = name;
RoleId = roleId;
Added = added;
}

public string Name { get; }
public ulong RoleId { get; }
public bool Added { get; }
}
} }
} }

+ 16
- 0
src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/MemberRoleEditInfo.cs View File

@@ -0,0 +1,16 @@
namespace Discord.Rest
{
public struct MemberRoleEditInfo
{
internal MemberRoleEditInfo(string name, ulong roleId, bool added)
{
Name = name;
RoleId = roleId;
Added = added;
}

public string Name { get; }
public ulong RoleId { get; }
public bool Added { get; }
}
}

+ 3
- 3
src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/RoleCreateAuditLogData.cs View File

@@ -7,7 +7,7 @@ namespace Discord.Rest
{ {
public class RoleCreateAuditLogData : IAuditLogData public class RoleCreateAuditLogData : IAuditLogData
{ {
private RoleCreateAuditLogData(ulong id, RoleInfo props)
private RoleCreateAuditLogData(ulong id, RoleEditInfo props)
{ {
RoleId = id; RoleId = id;
Properties = props; Properties = props;
@@ -38,10 +38,10 @@ namespace Discord.Rest
permissions = new GuildPermissions(permissionsRaw.Value); permissions = new GuildPermissions(permissionsRaw.Value);


return new RoleCreateAuditLogData(entry.TargetId.Value, return new RoleCreateAuditLogData(entry.TargetId.Value,
new RoleInfo(color, mentionable, hoist, name, permissions));
new RoleEditInfo(color, mentionable, hoist, name, permissions));
} }


public ulong RoleId { get; } public ulong RoleId { get; }
public RoleInfo Properties { get; }
public RoleEditInfo Properties { get; }
} }
} }

+ 3
- 3
src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/RoleDeleteAuditLogData.cs View File

@@ -7,7 +7,7 @@ namespace Discord.Rest
{ {
public class RoleDeleteAuditLogData : IAuditLogData public class RoleDeleteAuditLogData : IAuditLogData
{ {
private RoleDeleteAuditLogData(ulong id, RoleInfo props)
private RoleDeleteAuditLogData(ulong id, RoleEditInfo props)
{ {
RoleId = id; RoleId = id;
Properties = props; Properties = props;
@@ -38,10 +38,10 @@ namespace Discord.Rest
permissions = new GuildPermissions(permissionsRaw.Value); permissions = new GuildPermissions(permissionsRaw.Value);


return new RoleDeleteAuditLogData(entry.TargetId.Value, return new RoleDeleteAuditLogData(entry.TargetId.Value,
new RoleInfo(color, mentionable, hoist, name, permissions));
new RoleEditInfo(color, mentionable, hoist, name, permissions));
} }


public ulong RoleId { get; } public ulong RoleId { get; }
public RoleInfo Properties { get; }
public RoleEditInfo Properties { get; }
} }
} }

+ 21
- 0
src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/RoleEditInfo.cs View File

@@ -0,0 +1,21 @@
namespace Discord.Rest
{
public struct RoleEditInfo
{
internal RoleEditInfo(Color? color, bool? mentionable, bool? hoist, string name,
GuildPermissions? permissions)
{
Color = color;
Mentionable = mentionable;
Hoist = hoist;
Name = name;
Permissions = permissions;
}

public Color? Color { get; }
public bool? Mentionable { get; }
public bool? Hoist { get; }
public string Name { get; }
public GuildPermissions? Permissions { get; }
}
}

+ 0
- 21
src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/RoleInfo.cs View File

@@ -1,21 +0,0 @@
namespace Discord.Rest
{
public struct RoleInfo
{
internal RoleInfo(Color? color, bool? mentionable, bool? hoist, string name,
GuildPermissions? permissions)
{
Color = color;
Mentionable = mentionable;
Hoist = hoist;
Name = name;
Permissions = permissions;
}

public Color? Color { get; }
public bool? Mentionable { get; }
public bool? Hoist { get; }
public string Name { get; }
public GuildPermissions? Permissions { get; }
}
}

+ 5
- 5
src/Discord.Net.Rest/Entities/AuditLogs/DataTypes/RoleUpdateAuditLogData.cs View File

@@ -7,7 +7,7 @@ namespace Discord.Rest
{ {
public class RoleUpdateAuditLogData : IAuditLogData public class RoleUpdateAuditLogData : IAuditLogData
{ {
private RoleUpdateAuditLogData(ulong id, RoleInfo oldProps, RoleInfo newProps)
private RoleUpdateAuditLogData(ulong id, RoleEditInfo oldProps, RoleEditInfo newProps)
{ {
RoleId = id; RoleId = id;
Before = oldProps; Before = oldProps;
@@ -49,14 +49,14 @@ namespace Discord.Rest
if (newPermissionsRaw.HasValue) if (newPermissionsRaw.HasValue)
newPermissions = new GuildPermissions(newPermissionsRaw.Value); newPermissions = new GuildPermissions(newPermissionsRaw.Value);


var oldProps = new RoleInfo(oldColor, oldMentionable, oldHoist, oldName, oldPermissions);
var newProps = new RoleInfo(newColor, newMentionable, newHoist, newName, newPermissions);
var oldProps = new RoleEditInfo(oldColor, oldMentionable, oldHoist, oldName, oldPermissions);
var newProps = new RoleEditInfo(newColor, newMentionable, newHoist, newName, newPermissions);


return new RoleUpdateAuditLogData(entry.TargetId.Value, oldProps, newProps); return new RoleUpdateAuditLogData(entry.TargetId.Value, oldProps, newProps);
} }


public ulong RoleId { get; } public ulong RoleId { get; }
public RoleInfo Before { get; }
public RoleInfo After { get; }
public RoleEditInfo Before { get; }
public RoleEditInfo After { get; }
} }
} }

Loading…
Cancel
Save