/// <summary>Initializes a new instance of the BlobReadStream class.</summary> /// <param name="blob">The blob used for downloads. </param> /// <param name="options">Modifiers to be applied to the blob. After first request, the ETag is always applied. </param> /// <param name="readAheadInBytes">The number of bytes to read ahead. </param> /// <param name="verifyBlocks">Controls whether block's signatures are verified. </param> internal BlobReadStream(CloudBlob blob, BlobRequestOptions options, long readAheadInBytes, bool verifyBlocks) { CommonUtils.AssertNotNull("blob", blob); CommonUtils.AssertNotNull("options", options); CommonUtils.AssertInBounds("readAheadInBytes", readAheadInBytes, 0, Constants.MaxBlobSize); this.Blob = blob; this.IntegrityControlVerificationEnabled = verifyBlocks; this.options = options; this.ReadAheadSize = readAheadInBytes; this.downloadedBlocksList = new DownloadedBlockCollection(); }
/// <summary> /// Initializes a new instance of the BlobReadStream class. /// </summary> /// <param name="blob">The blob used for downloads.</param> /// <param name="options">Modifiers to be applied to the blob. After first request, the ETag is always applied.</param> /// <param name="readAheadInBytes">The number of bytes to read ahead.</param> /// <param name="verifyBlocks">Controls whether block's signatures are verified.</param> internal BlobReadStream(CloudBlob blob, BlobRequestOptions options, long readAheadInBytes, bool verifyBlocks) { CommonUtils.AssertNotNull("blob", blob); CommonUtils.AssertNotNull("options", options); CommonUtils.AssertInBounds("readAheadInBytes", readAheadInBytes, 0, Protocol.Constants.MaxBlobSize); this.Blob = blob; this.IntegrityControlVerificationEnabled = verifyBlocks; this.options = options; this.ReadAheadSize = readAheadInBytes; this.downloadedBlocksList = new DownloadedBlockCollection(); }