/// <summary> /// Raises the <see cref="FeedMessageReceived"/> event /// </summary> /// <param name="message">A <see cref="FeedMessage"/> instance used to construct the event args</param> /// <param name="rawMessage">A raw message received from the broker</param> private void RaiseMessageReceived(FeedMessage message, byte[] rawMessage) { Guard.Argument(message, nameof(message)).NotNull(); //no need to add interest, it is later used from session interest FeedMessageReceived?.Invoke(this, new FeedMessageReceivedEventArgs(message, null, rawMessage)); }
/// <summary> /// Processes and dispatches the provided <see cref="FeedMessage"/> instance /// </summary> /// <param name="message">A <see cref="FeedMessage"/> instance to be processed</param> /// <param name="interest">A <see cref="MessageInterest"/> specifying the interest of the associated session</param> /// <param name="rawMessage">A raw message received from the feed</param> public void ProcessMessage(FeedMessage message, MessageInterest interest, byte[] rawMessage) { var alive = message as alive; if (alive != null) { AliveReceived?.Invoke(this, new AliveEventArgs(_feedMessageMapper, alive, rawMessage)); } var snap = message as snapshot_complete; if (snap != null) { SnapshotCompleteReceived?.Invoke(this, new SnapshotCompleteEventArgs(_feedMessageMapper, snap, interest, rawMessage)); } FeedMessageReceived?.Invoke(this, new FeedMessageReceivedEventArgs(message, interest, rawMessage)); RaiseOnMessageProcessedEvent(new FeedMessageReceivedEventArgs(message, interest, rawMessage)); }
/// <summary> /// Raises the <see cref="FeedMessageReceived"/> event /// </summary> /// <param name="message">A <see cref="FeedMessage"/> instance used to construct the event args</param> /// <param name="rawMessage">A raw message received from the broker</param> private void RaiseMessageReceived(FeedMessage message, byte[] rawMessage) { Guard.Argument(message, nameof(message)).NotNull(); FeedMessageReceived?.Invoke(this, new FeedMessageReceivedEventArgs(message, null, rawMessage)); }
/// <summary> /// Raises the <see cref="FeedMessageReceived"/> event /// </summary> /// <param name="message">A <see cref="FeedMessage"/> instance used to construct the event args</param> /// <param name="rawMessage">A raw message received from the broker</param> private void RaiseMessageReceived(FeedMessage message, byte[] rawMessage) { Contract.Requires(message != null); FeedMessageReceived?.Invoke(this, new FeedMessageReceivedEventArgs(message, null, rawMessage)); }
public void ProcessMessage(FeedMessage message, MessageInterest interest, byte[] rawMessage) { FeedMessageReceived?.Invoke(this, new FeedMessageReceivedEventArgs(message, interest, rawMessage)); }