namespace Renci.SshNet.Messages.Connection
{
    /// 
    /// Represents SSH_MSG_CHANNEL_DATA message.
    /// 
    [Message("SSH_MSG_CHANNEL_DATA", 94)]
    public class ChannelDataMessage : ChannelMessage
    {
        /// 
        /// Gets or sets message data.
        /// 
        /// 
        /// The data.
        /// 
        public byte[] Data { get; protected set; }
        /// 
        /// Initializes a new instance of the  class.
        /// 
        public ChannelDataMessage()
        {
        }
        /// 
        /// Initializes a new instance of the  class.
        /// 
        /// The local channel number.
        /// Message data.
        public ChannelDataMessage(uint localChannelNumber, byte[] data)
        {
            this.LocalChannelNumber = localChannelNumber;
            this.Data = data;
        }
        /// 
        /// Loads the data.
        /// 
        protected override void LoadData()
        {
            base.LoadData();
            this.Data = this.ReadBinaryString();
        }
        /// 
        /// Saves the data.
        /// 
        protected override void SaveData()
        {
            base.SaveData();
            this.WriteBinaryString(this.Data);
        }
    }
}