Skip to content
This repository was archived by the owner on Dec 30, 2025. It is now read-only.

Commit 026ca96

Browse files
committed
fix: remove zone_id, zone_name and update functions
1 parent dd34cb6 commit 026ca96

2 files changed

Lines changed: 20 additions & 14 deletions

File tree

src/dns.rs

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -28,16 +28,20 @@ trait Info {
2828
}
2929

3030
pub trait Requests {
31-
fn update_request(
32-
&self,
31+
fn update_request<'a>(
32+
&'a self,
3333
ip: IpAddr,
34-
) -> Option<UpdateDnsRecord>;
34+
id: &'a str,
35+
) -> Option<UpdateDnsRecord<'a>>;
3536
fn create_request<'a>(
3637
ip: IpAddr,
3738
name: &'a str,
3839
id: &'a str,
3940
) -> CreateDnsRecord<'a>;
40-
fn delete_request(&self) -> DeleteDnsRecord;
41+
fn delete_request<'a>(
42+
&'a self,
43+
id: &'a str,
44+
) -> DeleteDnsRecord<'a>;
4145
}
4246
impl Clone_ for DnsRecord {
4347
fn clone(&self) -> Self {
@@ -47,14 +51,12 @@ impl Clone_ for DnsRecord {
4751
auto_added: self.meta.auto_added,
4852
},
4953
ttl: self.ttl,
50-
zone_id: self.zone_id.to_owned(),
5154
modified_on: self.modified_on,
5255
created_on: self.created_on,
5356
proxiable: self.proxiable,
5457
proxied: self.proxied,
5558
content: self.content.to_owned(),
5659
id: self.id.to_owned(),
57-
zone_name: self.zone_name.to_owned(),
5860
}
5961
}
6062
}
@@ -84,10 +86,11 @@ impl Info for DnsContent {
8486
}
8587

8688
impl Requests for DnsRecord {
87-
fn update_request(
88-
&self,
89+
fn update_request<'a>(
90+
&'a self,
8991
ip: IpAddr,
90-
) -> Option<UpdateDnsRecord> {
92+
id: &'a str,
93+
) -> Option<UpdateDnsRecord<'a>> {
9194
let current_ip = self.content.get_ip()?;
9295

9396
if ip == current_ip {
@@ -111,7 +114,7 @@ impl Requests for DnsRecord {
111114

112115
log::info!("request: {} ({} → {})\n", self.name, current_ip, ip);
113116
Some(UpdateDnsRecord {
114-
zone_identifier: &self.zone_id,
117+
zone_identifier: id,
115118
identifier: &self.id,
116119
params: UpdateDnsRecordParams {
117120
name: &self.name,
@@ -142,14 +145,17 @@ impl Requests for DnsRecord {
142145
}
143146
}
144147

145-
fn delete_request(&self) -> DeleteDnsRecord {
148+
fn delete_request<'a>(
149+
&'a self,
150+
id: &'a str,
151+
) -> DeleteDnsRecord<'a> {
146152
log::info!(
147153
"deleting {} record: {}\n",
148154
self.content.get_type(),
149155
self.name
150156
);
151157
DeleteDnsRecord {
152-
zone_identifier: &self.zone_id,
158+
zone_identifier: id,
153159
identifier: &self.id,
154160
}
155161
}

src/ip.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ impl DynDns for Option<IpAddr> {
3333
match rec.content {
3434
DnsContent::A { content: _ }
3535
| DnsContent::AAAA { content: _ } => Some(tokio::spawn(async move {
36-
if let Some(req) = rec.update_request(ip) {
36+
if let Some(req) = rec.update_request(ip, &id) {
3737
client.request(&req).await?;
3838
}
3939
Ok(())
@@ -51,7 +51,7 @@ impl DynDns for Option<IpAddr> {
5151
} else {
5252
rec.map(|rec| {
5353
tokio::spawn(async move {
54-
client.request(&rec.delete_request()).await?;
54+
client.request(&rec.delete_request(&id)).await?;
5555
Ok(())
5656
})
5757
})

0 commit comments

Comments
 (0)