struct MetadataObjectWriter {
file_encryptor: Option<Arc<FileEncryptor>>,
}Fields§
§file_encryptor: Option<Arc<FileEncryptor>>Implementations§
Source§impl MetadataObjectWriter
impl MetadataObjectWriter
fn write_thrift_object( object: &impl WriteThrift, sink: impl Write, ) -> Result<()>
Source§impl MetadataObjectWriter
Implementations of MetadataObjectWriter methods that rely on encryption being enabled
impl MetadataObjectWriter
Implementations of MetadataObjectWriter methods that rely on encryption being enabled
Sourcefn with_file_encryptor(self, encryptor: Option<Arc<FileEncryptor>>) -> Self
fn with_file_encryptor(self, encryptor: Option<Arc<FileEncryptor>>) -> Self
Set the file encryptor to use
Sourcefn write_file_metadata(
&self,
file_metadata: &FileMeta<'_>,
sink: impl Write,
) -> Result<()>
fn write_file_metadata( &self, file_metadata: &FileMeta<'_>, sink: impl Write, ) -> Result<()>
Write FileMetaData in Thrift format, possibly encrypting it if required
Sourcefn write_offset_index(
&self,
offset_index: &OffsetIndexMetaData,
column_chunk: &ColumnChunkMetaData,
row_group_idx: usize,
column_idx: usize,
sink: impl Write,
) -> Result<()>
fn write_offset_index( &self, offset_index: &OffsetIndexMetaData, column_chunk: &ColumnChunkMetaData, row_group_idx: usize, column_idx: usize, sink: impl Write, ) -> Result<()>
Write a column OffsetIndex in Thrift format, possibly encrypting it if required
Sourcefn write_column_index(
&self,
column_index: &ColumnIndexMetaData,
column_chunk: &ColumnChunkMetaData,
row_group_idx: usize,
column_idx: usize,
sink: impl Write,
) -> Result<bool>
fn write_column_index( &self, column_index: &ColumnIndexMetaData, column_chunk: &ColumnChunkMetaData, row_group_idx: usize, column_idx: usize, sink: impl Write, ) -> Result<bool>
Write a column ColumnIndex in Thrift format, possibly encrypting it if required
If column_index is ColumnIndexMetaData::NONE the index will not be written and
this will return false. Returns true otherwise.
Sourcefn apply_row_group_encryption(
&self,
row_groups: Vec<RowGroupMetaData>,
) -> Result<(Vec<RowGroupMetaData>, Option<Vec<RowGroupMetaData>>)>
fn apply_row_group_encryption( &self, row_groups: Vec<RowGroupMetaData>, ) -> Result<(Vec<RowGroupMetaData>, Option<Vec<RowGroupMetaData>>)>
If encryption is enabled and configured, encrypt row group metadata. Returns a tuple of the row group metadata to write, and possibly unencrypted metadata to be returned to clients if data was encrypted.
Sourcefn get_file_magic(&self) -> &[u8; 4]
fn get_file_magic(&self) -> &[u8; 4]
Get the “magic” bytes identifying the file type
fn write_thrift_object_with_encryption( object: &impl WriteThrift, sink: impl Write, file_encryptor: &FileEncryptor, column_metadata: &ColumnChunkMetaData, module_type: ModuleType, row_group_index: usize, column_index: usize, ) -> Result<()>
fn encryption_algorithm_from_encryptor( file_encryptor: &FileEncryptor, ) -> EncryptionAlgorithm
fn file_crypto_metadata( file_encryptor: &FileEncryptor, ) -> Result<FileCryptoMetaData<'_>>
fn encrypt_row_groups( row_groups: Vec<RowGroupMetaData>, file_encryptor: &Arc<FileEncryptor>, ) -> Result<Vec<RowGroupMetaData>>
Sourcefn encrypt_column_chunk(
column_chunk: ColumnChunkMetaData,
file_encryptor: &Arc<FileEncryptor>,
row_group_index: usize,
column_index: usize,
) -> Result<ColumnChunkMetaData>
fn encrypt_column_chunk( column_chunk: ColumnChunkMetaData, file_encryptor: &Arc<FileEncryptor>, row_group_index: usize, column_index: usize, ) -> Result<ColumnChunkMetaData>
Apply column encryption to column chunk metadata