using System; using System.Threading.Tasks; namespace MtApi { static class ExtensionMethods { #region Event Methods public static Task FireEventAsync(this MtApiQuoteHandler evenHandler, object sender, string symbol, double bid, double ask) { return Task.Factory.StartNew(() => { evenHandler?.Invoke(sender, symbol, bid, ask); }); } public static Task FireEventAsync(this EventHandler eventHandler, object sender) { return Task.Factory.StartNew(() => { eventHandler?.Invoke(sender, EventArgs.Empty); }); } public static Task FireEventAsync(this EventHandler eventHandler, object sender, T e) where T : EventArgs { return Task.Factory.StartNew(() => { eventHandler?.Invoke(sender, e); }); } #endregion } }