Browse Source

Reuse GetMany

pull/1526/head
Paulo 5 years ago
parent
commit
97ef7d0163
1 changed files with 2 additions and 20 deletions
  1. +2
    -20
      src/Discord.Net.WebSocket/Entities/Messages/MessageCache.cs

+ 2
- 20
src/Discord.Net.WebSocket/Entities/Messages/MessageCache.cs View File

@@ -63,26 +63,8 @@ namespace Discord.WebSocket
if (!_messages.TryGetValue(fromMessageId.Value, out SocketMessage msg))
return ImmutableArray<SocketMessage>.Empty;
int around = limit / 2;
var before = _orderedMessages
.Where(x => x < fromMessageId.Value)
.Select(x =>
{
if (_messages.TryGetValue(x, out SocketMessage msg))
return msg;
return null;
})
.Where(x => x != null)
.Take(around);
var after = _orderedMessages
.Where(x => x > fromMessageId.Value)
.Select(x =>
{
if (_messages.TryGetValue(x, out SocketMessage msg))
return msg;
return null;
})
.Where(x => x != null)
.Take(around);
var before = GetMany(fromMessageId, Direction.Before, around);
var after = GetMany(fromMessageId, Direction.After, around);

return before.Concat(new SocketMessage[] { msg }).Concat(after).ToImmutableArray();
}


Loading…
Cancel
Save