From e3267673a95f13691311890b29b5c3bb3167f6f9 Mon Sep 17 00:00:00 2001 From: Ning Sun Date: Wed, 3 Aug 2022 09:21:28 +0800 Subject: [PATCH] refactor: use auto generated collection build function (#128) * refactor: use auto generated collection build function * refactor: change functions of ColumeFamilyDescriptorBuilder to be owned --- src/store-api/src/storage/descriptors.rs | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/src/store-api/src/storage/descriptors.rs b/src/store-api/src/storage/descriptors.rs index 030f8c83b7..f7dbb854e9 100644 --- a/src/store-api/src/storage/descriptors.rs +++ b/src/store-api/src/storage/descriptors.rs @@ -59,7 +59,7 @@ impl From<&ColumnDescriptor> for ColumnSchema { #[derive(Debug, Clone, PartialEq, Builder)] #[builder(pattern = "owned")] pub struct RowKeyDescriptor { - #[builder(default)] + #[builder(default, setter(each(name = "push_column")))] pub columns: Vec, /// Timestamp key column. pub timestamp: ColumnDescriptor, @@ -72,13 +72,14 @@ pub struct RowKeyDescriptor { /// A [ColumnFamilyDescriptor] contains information to create a column family. #[derive(Debug, Clone, PartialEq, Builder)] +#[builder(pattern = "owned")] pub struct ColumnFamilyDescriptor { #[builder(default = "consts::DEFAULT_CF_ID")] pub cf_id: ColumnFamilyId, #[builder(default = "consts::DEFAULT_CF_NAME.to_string()", setter(into))] pub name: String, /// Descriptors of columns in this column family. - #[builder(default)] + #[builder(default, setter(each(name = "push_column")))] pub columns: Vec, } @@ -95,6 +96,7 @@ pub struct RegionDescriptor { /// Default column family. pub default_cf: ColumnFamilyDescriptor, /// Extra column families defined by user. + #[builder(default, setter(each(name = "push_extra_column_family")))] pub extra_cfs: Vec, } @@ -110,12 +112,6 @@ impl RowKeyDescriptorBuilder { self.columns = Some(Vec::with_capacity(capacity)); self } - - pub fn push_column(mut self, column: ColumnDescriptor) -> Self { - let columns = self.columns.get_or_insert_with(Vec::new); - columns.push(column); - self - } } impl ColumnFamilyDescriptorBuilder { @@ -123,12 +119,6 @@ impl ColumnFamilyDescriptorBuilder { self.columns = Some(Vec::with_capacity(capacity)); self } - - pub fn push_column(mut self, column: ColumnDescriptor) -> Self { - let columns = self.columns.get_or_insert_with(Vec::new); - columns.push(column); - self - } } #[cfg(test)]