Пример #1
0
        /// <summary>
        /// Writes all messages to the given stream
        /// </summary>
        /// <param name="stream"></param>
        public void Write(NetBufferStream stream)
        {
            if (stream == null)
            {
                throw new ArgumentNullException(nameof(stream));
            }

            InternalWrite(stream);
        }
Пример #2
0
        /// <summary>
        /// Writes all messages to the given message
        /// </summary>
        /// <param name="message"></param>
        public void Write(NetOutgoingMessage message)
        {
            if (message == null)
            {
                throw new ArgumentNullException(nameof(message));
            }

            using (var stream = new NetBufferStream(message))
            {
                InternalWrite(stream);
            }
        }
Пример #3
0
        private void InternalWrite(NetBufferStream stream)
        {
            _list.WriteDelimitedTo(stream);

            if (_data.Length > int.MaxValue)
            {
                throw new ArgumentOutOfRangeException("Message data is too large to send");
            }

            stream.Write(_data.GetBuffer(), 0, (int)_data.Length);

            Clear();
        }