write method
Future<void>
write(
- String key,
- Uint8List bytes, [
- WriteOptions options = const WriteOptions()
override
Write bytes. Convenience wrapper over writeStream.
Implementation
@override
Future<void> write(
String key,
Uint8List bytes, [
WriteOptions options = const WriteOptions(),
]) async {
checkNotDisposed();
final shouldEncrypt = options.encrypt ?? encryptByDefault;
if (!shouldEncrypt) {
return _inner.write(key, bytes, options);
}
final encKey = await _resolveKey(key, options);
final encrypted = await _encryptor.encryptBytes(bytes, encKey);
final encOptions = WriteOptions(
contentType: options.contentType,
metadata: {
...options.metadata,
_metaEncrypted: 'true',
_metaOriginalSize: bytes.length.toString(),
},
);
return _inner.write(key, encrypted, encOptions);
}