This is an automated email from the ASF dual-hosted git repository.

gxd pushed a commit to branch refactor_etcd
in repository https://gitbox.apache.org/repos/asf/incubator-opendal.git

commit 77114873df909639df68c470e948cbb10fd22084
Author: G-XD <[email protected]>
AuthorDate: Fri Dec 1 19:03:38 2023 +0800

    refactor(service/etcd): use EtcdConfig in from_map
---
 core/src/services/etcd/backend.rs | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/core/src/services/etcd/backend.rs 
b/core/src/services/etcd/backend.rs
index faeeb273b..79f64caf5 100644
--- a/core/src/services/etcd/backend.rs
+++ b/core/src/services/etcd/backend.rs
@@ -195,17 +195,10 @@ impl Builder for EtcdBuilder {
     type Accessor = EtcdBackend;
 
     fn from_map(map: HashMap<String, String>) -> Self {
-        let mut builder = EtcdBuilder::default();
-
-        map.get("root").map(|v| builder.root(v));
-        map.get("endpoints").map(|v| builder.endpoints(v));
-        map.get("username").map(|v| builder.username(v));
-        map.get("password").map(|v| builder.password(v));
-        map.get("ca_path").map(|v| builder.ca_path(v));
-        map.get("cert_path").map(|v| builder.cert_path(v));
-        map.get("key_path").map(|v| builder.key_path(v));
-
-        builder
+        EtcdBuilder {
+            config: EtcdConfig::deserialize(ConfigDeserializer::new(map))
+                .expect("config deserialize must succeed"),
+        }
     }
 
     fn build(&mut self) -> Result<Self::Accessor> {

Reply via email to