replaceRecord method
replaceRecord()
- Replaces a single record in the DNS Table
- Returns
true
if successful
- Returns
false
if the record does not exist
Required : DNSRecord
Implementation
Future<bool> replaceRecord(DNSRecord record) async {
// Fetch Data
final data = await refresh();
final oldRecord = data.records.firstWhere(
(r) => r.equalsName(r.host),
orElse: () => DNSRecord.blank(),
);
// Remove Old Record
final hasDeletedOldRecord = await deleteRecords([oldRecord]);
if (!hasDeletedOldRecord) {
return false;
}
// Perform Add Request
final hasAddedNewRecord = await addRecords([record]);
if (!hasAddedNewRecord) {
return false;
}
return true;
}