internal void Update(APIChannel model) { if (!IsPrivate && model.Name != null) { Name = model.Name; } if (model.Type != null) { Type = model.Type; } if (model.Position != null) { Position = model.Position.Value; } if (model.Topic != null) { Topic = model.Topic; } if (model.Recipient != null) { Recipient.Update(model.Recipient); Name = $"@{Recipient}"; } if (model.PermissionOverwrites != null) { _permissionOverwrites = model.PermissionOverwrites .Select(x => new PermissionOverwrite(PermissionTarget.FromString(x.Type), x.Id, x.Allow, x.Deny)) .ToDictionary(x => x.TargetId); UpdatePermissions(); } }
internal void Update(ChannelInfo model) { Update(model as ChannelReference); if (model.Position != null) { Position = model.Position.Value; } if (model.Topic != null) { Topic = model.Topic; } if (model.PermissionOverwrites != null) { _permissionOverwrites = model.PermissionOverwrites .Select(x => new PermissionOverwrite(PermissionTarget.FromString(x.Type), x.Id, x.Allow, x.Deny)) .ToArray(); InvalidatePermissionsCache(); } }