Пример #1
0
        /// <summary>
        /// Sends a ChannelRangeRequest message to a producer.
        /// </summary>
        /// <param name="channelRangeInfos">The list of <see cref="ChannelRangeInfo" /> objects.</param>
        /// <returns>The sent message on success; <c>null</c> otherwise.</returns>
        public virtual EtpMessage <ChannelRangeRequest> ChannelRangeRequest(IList <ChannelRangeInfo> channelRangeInfos)
        {
            var body = new ChannelRangeRequest()
            {
                ChannelRanges = channelRangeInfos ?? new List <ChannelRangeInfo>()
            };

            return(SendRequest(body));
        }
        /// <summary>
        /// Sends a ChannelRangeRequest message to a producer.
        /// </summary>
        /// <param name="channelRangeInfos">The list of <see cref="ChannelRangeInfo" /> objects.</param>
        /// <returns>The message identifier.</returns>
        public virtual long ChannelRangeRequest(IList <ChannelRangeInfo> channelRangeInfos)
        {
            var header = CreateMessageHeader(Protocols.ChannelStreaming, MessageTypes.ChannelStreaming.ChannelRangeRequest);

            var channelRangeRequest = new ChannelRangeRequest()
            {
                ChannelRanges = channelRangeInfos
            };

            return(Session.SendMessage(header, channelRangeRequest));
        }
 /// <summary>
 /// Handles the ChannelRangeRequest message from a consumer.
 /// </summary>
 /// <param name="header">The message header.</param>
 /// <param name="channelRangeRequest">The ChannelRangeRequest message.</param>
 protected virtual void HandleChannelRangeRequest(IMessageHeader header, ChannelRangeRequest channelRangeRequest)
 {
     Notify(OnChannelRangeRequest, header, channelRangeRequest);
 }