public Chunk(ChunkConfiguration configuration, TBody body) { if (configuration == null) { throw new ArgumentNullException("configuration"); } if (body == null) { throw new ArgumentNullException("body"); } _configuration = configuration; _body = body; }
private Stream BuildTransformationStream(Stream input, ChunkConfiguration configuration) { var streamChain = new InputStreamChainBuilder(); if (configuration.IsCompressed) { streamChain.Add(_compressionFactory.GetAlgorithm(configuration.CompressionOptions.Algorithm).CreateDecompressor()); } if (configuration.IsEncrypted) { streamChain.Add(_encryptionFactory.GetAlgorithm(configuration.EncryptionOptions, _configuration.Password)); } return(streamChain.CreateInputStream(input, true)); }