[pdm-devel] [PATCH datacenter-manager 02/21] api types: RemoteType: put default port info to the type

Dominik Csapak d.csapak at proxmox.com
Fri May 16 15:35:52 CEST 2025


so we can access that info from a central point instead of having to
duplicate it

Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
 lib/pdm-api-types/src/remotes.rs | 9 +++++++++
 server/src/connection.rs         | 8 ++++----
 2 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/lib/pdm-api-types/src/remotes.rs b/lib/pdm-api-types/src/remotes.rs
index 65d1081..dca2fa0 100644
--- a/lib/pdm-api-types/src/remotes.rs
+++ b/lib/pdm-api-types/src/remotes.rs
@@ -48,6 +48,15 @@ pub enum RemoteType {
     Pbs,
 }
 
+impl RemoteType {
+    pub fn default_port(&self) -> u16 {
+        match self {
+            RemoteType::Pve => 8006,
+            RemoteType::Pbs => 8007,
+        }
+    }
+}
+
 serde_plain::derive_display_from_serialize!(RemoteType);
 serde_plain::derive_fromstr_from_deserialize!(RemoteType);
 
diff --git a/server/src/connection.rs b/server/src/connection.rs
index 201d65b..0be9033 100644
--- a/server/src/connection.rs
+++ b/server/src/connection.rs
@@ -36,16 +36,16 @@ struct ConnectInfo {
 
 impl ConnectInfo {
     fn for_remote(remote: &Remote) -> Self {
-        let (default_port, prefix, perl_compat, pve_compat) = match remote.ty {
-            RemoteType::Pve => (8006, "PVEAPIToken".to_string(), true, true),
-            RemoteType::Pbs => (8007, "PBSAPIToken".to_string(), false, false),
+        let (prefix, perl_compat, pve_compat) = match remote.ty {
+            RemoteType::Pve => ("PVEAPIToken".to_string(), true, true),
+            RemoteType::Pbs => ("PBSAPIToken".to_string(), false, false),
         };
 
         ConnectInfo {
             prefix,
             perl_compat,
             pve_compat,
-            default_port,
+            default_port: remote.ty.default_port(),
         }
     }
 }
-- 
2.39.5





More information about the pdm-devel mailing list