private void InitializeReading()
{
FailIfWriteOnlyBody();
if(this.dataIn == null)
{
byte[] data = base.Content;
if(base.Content == null)
{
data = new byte[0];
}
Stream target = new MemoryStream(data, false);
if(this.Connection != null && this.Compressed == true)
{
EndianBinaryReader reader = new EndianBinaryReader(target);
this.length = reader.ReadInt32();
target = this.Connection.CompressionPolicy.CreateDecompressionStream(target);
}
else
{
this.length = data.Length;
}
this.dataIn = new EndianBinaryReader(target);
}
}