/// <summary> /// Fires the GenuineChannelsGlobalEvent event with specified parameters. /// </summary> /// <param name="sender">The source object.</param> /// <param name="e">Event arguments.</param> public static void FireGlobalEvent(object sender, GenuineEventArgs e) { GenuineChannelsGlobalEventHandler clonedEvent = null; lock (_genuineChannelsGlobalEventObject) { if (_genuineChannelsGlobalEvent == null) { return; } clonedEvent = (GenuineChannelsGlobalEventHandler)_genuineChannelsGlobalEvent.Clone(); } clonedEvent(sender, e); }
/// <summary> /// Fires the event. /// </summary> /// <param name="genuineEventArgsAsObject">Event parameters.</param> public void PerformEventSending(object genuineEventArgsAsObject) { GenuineEventArgs genuineEventArgs = (GenuineEventArgs)genuineEventArgsAsObject; GenuineChannelsGlobalEventHandler clonedEvent = null; lock (_genuineChannelsEventLock) { if (_genuineChannelsEvent == null) { return; } clonedEvent = (GenuineChannelsGlobalEventHandler)_genuineChannelsEvent.Clone(); } clonedEvent(this, genuineEventArgs); }
/// <summary> /// Fires the GenuineChannelsGlobalEvent event with the specified parameters. /// </summary> /// <param name="e">Event arguments.</param> public void FireGenuineEvent(GenuineEventArgs e) { // LOG: BinaryLogWriter binaryLogWriter = this.ITransportContext.BinaryLogWriter; if (binaryLogWriter != null && binaryLogWriter[LogCategory.ChannelEvent] > 0) { binaryLogWriter.WriteEvent(LogCategory.ChannelEvent, "BasicChannelWithSecurity.FireGenuineEvent", LogMessageType.ChannelEvent, e.SourceException, null, e.HostInformation, null, GenuineUtility.CurrentThreadId, Thread.CurrentThread.Name, null, null, -1, (int)e.EventType, 0, 0, null, null, null, null, "The channel event is raised."); } if (e.EventType == GenuineEventType.GTcpConnectionAccepted || e.EventType == GenuineEventType.GHttpConnectionAccepted) { this.PerformEventSending(e); } else { GenuineThreadPool.QueueUserWorkItem(new WaitCallback(this.PerformEventSending), e, false); } }
/// <summary> /// Genuine Event handler. /// </summary> /// <param name="genuineEventArgs">The event arguments.</param> public void OnGenuineEvent(GenuineEventArgs genuineEventArgs) { this.FireGenuineEvent(genuineEventArgs); }