/// <summary> /// Sends a ChannelDataChange message to a consumer. /// </summary> /// <param name="channelId">The channel identifier.</param> /// <param name="startIndex">The start index.</param> /// <param name="endIndex">The end index.</param> /// <param name="dataItems">The data items.</param> /// <returns>The sent message on success; <c>null</c> otherwise.</returns> public virtual EtpMessage <ChannelDataChange> ChannelDataChange(long channelId, long startIndex, long endIndex, IList <DataItem> dataItems) { var body = new ChannelDataChange() { ChannelId = channelId, StartIndex = startIndex, EndIndex = endIndex, Data = dataItems ?? new List <DataItem>(), }; return(SendNotification(body)); }
/// <summary> /// Sends a ChannelDataChange message to a consumer. /// </summary> /// <param name="channelId">The channel identifier.</param> /// <param name="startIndex">The start index.</param> /// <param name="endIndex">The end index.</param> /// <param name="dataItems">The data items.</param> /// <returns>The message identifier.</returns> public virtual long ChannelDataChange(long channelId, long startIndex, long endIndex, IList <DataItem> dataItems) { var header = CreateMessageHeader(Protocols.ChannelStreaming, MessageTypes.ChannelStreaming.ChannelDataChange); var channelDataChange = new ChannelDataChange() { ChannelId = channelId, StartIndex = startIndex, EndIndex = endIndex, Data = dataItems }; return(Session.SendMessage(header, channelDataChange)); }
/// <summary> /// Handles the ChannelDataChange message from a producer. /// </summary> /// <param name="header">The message header.</param> /// <param name="channelDataChange">The ChannelDataChange message.</param> protected virtual void HandleChannelDataChange(IMessageHeader header, ChannelDataChange channelDataChange) { Notify(OnChannelDataChange, header, channelDataChange); }