Changed MessageUpdated to use Cacheable as well, after discussion with Volt.
This commit is contained in:
@@ -65,12 +65,12 @@ namespace Discord.WebSocket
|
|||||||
remove { _messageDeletedEvent.Remove(value); }
|
remove { _messageDeletedEvent.Remove(value); }
|
||||||
}
|
}
|
||||||
private readonly AsyncEvent<Func<Cacheable<SocketMessage, ulong>, ISocketMessageChannel, Task>> _messageDeletedEvent = new AsyncEvent<Func<Cacheable<SocketMessage, ulong>, ISocketMessageChannel, Task>>();
|
private readonly AsyncEvent<Func<Cacheable<SocketMessage, ulong>, ISocketMessageChannel, Task>> _messageDeletedEvent = new AsyncEvent<Func<Cacheable<SocketMessage, ulong>, ISocketMessageChannel, Task>>();
|
||||||
public event Func<Optional<SocketMessage>, SocketMessage, ISocketMessageChannel, Task> MessageUpdated
|
public event Func<Cacheable<SocketMessage, ulong>, SocketMessage, ISocketMessageChannel, Task> MessageUpdated
|
||||||
{
|
{
|
||||||
add { _messageUpdatedEvent.Add(value); }
|
add { _messageUpdatedEvent.Add(value); }
|
||||||
remove { _messageUpdatedEvent.Remove(value); }
|
remove { _messageUpdatedEvent.Remove(value); }
|
||||||
}
|
}
|
||||||
private readonly AsyncEvent<Func<Optional<SocketMessage>, SocketMessage, ISocketMessageChannel, Task>> _messageUpdatedEvent = new AsyncEvent<Func<Optional<SocketMessage>, SocketMessage, ISocketMessageChannel, Task>>();
|
private readonly AsyncEvent<Func<Cacheable<SocketMessage, ulong>, SocketMessage, ISocketMessageChannel, Task>> _messageUpdatedEvent = new AsyncEvent<Func<Cacheable<SocketMessage, ulong>, SocketMessage, ISocketMessageChannel, Task>>();
|
||||||
public event Func<Cacheable<SocketUserMessage, ulong>, ISocketMessageChannel, SocketReaction, Task> ReactionAdded
|
public event Func<Cacheable<SocketUserMessage, ulong>, ISocketMessageChannel, SocketReaction, Task> ReactionAdded
|
||||||
{
|
{
|
||||||
add { _reactionAddedEvent.Add(value); }
|
add { _reactionAddedEvent.Add(value); }
|
||||||
|
|||||||
@@ -1291,10 +1291,9 @@ namespace Discord.WebSocket
|
|||||||
|
|
||||||
after = SocketMessage.Create(this, State, author, channel, data);
|
after = SocketMessage.Create(this, State, author, channel, data);
|
||||||
}
|
}
|
||||||
if (before != null)
|
var cacheableBefore = new Cacheable<SocketMessage, ulong>(before, data.Id, async () => await channel.GetMessageAsync(data.Id) as SocketMessage);
|
||||||
await _messageUpdatedEvent.InvokeAsync(before, after, channel).ConfigureAwait(false);
|
|
||||||
else
|
await _messageUpdatedEvent.InvokeAsync(cacheableBefore, after, channel).ConfigureAwait(false);
|
||||||
await _messageUpdatedEvent.InvokeAsync(Optional.Create<SocketMessage>(), after, channel).ConfigureAwait(false);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user