| @@ -6,17 +6,17 @@ using System.Linq; | |||||
| namespace Discord.Collections | namespace Discord.Collections | ||||
| { | { | ||||
| public abstract class AsyncCollection<TValue> : IEnumerable<TValue> | |||||
| internal abstract class AsyncCollection<TValue> : IEnumerable<TValue> | |||||
| where TValue : class | where TValue : class | ||||
| { | { | ||||
| private readonly object _writerLock; | private readonly object _writerLock; | ||||
| internal class CollectionItemEventArgs : EventArgs | |||||
| public class CollectionItemEventArgs : EventArgs | |||||
| { | { | ||||
| public TValue Item { get; } | public TValue Item { get; } | ||||
| public CollectionItemEventArgs(TValue item) { Item = item; } | public CollectionItemEventArgs(TValue item) { Item = item; } | ||||
| } | } | ||||
| internal class CollectionItemRemappedEventArgs : EventArgs | |||||
| public class CollectionItemRemappedEventArgs : EventArgs | |||||
| { | { | ||||
| public TValue Item { get; } | public TValue Item { get; } | ||||
| public string OldId { get; } | public string OldId { get; } | ||||
| @@ -24,26 +24,26 @@ namespace Discord.Collections | |||||
| public CollectionItemRemappedEventArgs(TValue item, string oldId, string newId) { Item = item; OldId = oldId; NewId = newId; } | public CollectionItemRemappedEventArgs(TValue item, string oldId, string newId) { Item = item; OldId = oldId; NewId = newId; } | ||||
| } | } | ||||
| internal EventHandler<CollectionItemEventArgs> ItemCreated; | |||||
| public EventHandler<CollectionItemEventArgs> ItemCreated; | |||||
| private void RaiseItemCreated(TValue item) | private void RaiseItemCreated(TValue item) | ||||
| { | { | ||||
| if (ItemCreated != null) | if (ItemCreated != null) | ||||
| ItemCreated(this, new CollectionItemEventArgs(item)); | ItemCreated(this, new CollectionItemEventArgs(item)); | ||||
| } | } | ||||
| internal EventHandler<CollectionItemEventArgs> ItemDestroyed; | |||||
| public EventHandler<CollectionItemEventArgs> ItemDestroyed; | |||||
| private void RaiseItemDestroyed(TValue item) | private void RaiseItemDestroyed(TValue item) | ||||
| { | { | ||||
| if (ItemDestroyed != null) | if (ItemDestroyed != null) | ||||
| ItemDestroyed(this, new CollectionItemEventArgs(item)); | ItemDestroyed(this, new CollectionItemEventArgs(item)); | ||||
| } | } | ||||
| internal EventHandler<CollectionItemRemappedEventArgs> ItemRemapped; | |||||
| public EventHandler<CollectionItemRemappedEventArgs> ItemRemapped; | |||||
| private void RaiseItemRemapped(TValue item, string oldId, string newId) | private void RaiseItemRemapped(TValue item, string oldId, string newId) | ||||
| { | { | ||||
| if (ItemRemapped != null) | if (ItemRemapped != null) | ||||
| ItemRemapped(this, new CollectionItemRemappedEventArgs(item, oldId, newId)); | ItemRemapped(this, new CollectionItemRemappedEventArgs(item, oldId, newId)); | ||||
| } | } | ||||
| internal EventHandler Cleared; | |||||
| public EventHandler Cleared; | |||||
| private void RaiseCleared() | private void RaiseCleared() | ||||
| { | { | ||||
| if (Cleared != null) | if (Cleared != null) | ||||
| @@ -121,7 +121,7 @@ namespace Discord.Collections | |||||
| } | } | ||||
| return null; | return null; | ||||
| } | } | ||||
| protected internal void Clear() | |||||
| public void Clear() | |||||
| { | { | ||||
| lock (_writerLock) | lock (_writerLock) | ||||
| { | { | ||||