From 46967bbe6b1c79ef8b9e1f44b49a0e57e7f43259 Mon Sep 17 00:00:00 2001 From: dalbodeule <11470513+dalbodeule@users.noreply.github.com> Date: Thu, 6 Jun 2024 23:27:32 +0900 Subject: [PATCH] fix pdns api clients. --- src/main/kotlin/space/mori/dnsapi/PowerDNSAPIClient.kt | 6 +++--- .../kotlin/space/mori/dnsapi/service/DomainService.kt | 9 +++++---- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/main/kotlin/space/mori/dnsapi/PowerDNSAPIClient.kt b/src/main/kotlin/space/mori/dnsapi/PowerDNSAPIClient.kt index 2282f55..d982656 100644 --- a/src/main/kotlin/space/mori/dnsapi/PowerDNSAPIClient.kt +++ b/src/main/kotlin/space/mori/dnsapi/PowerDNSAPIClient.kt @@ -26,7 +26,7 @@ class PowerDNSApiClient { } fun createDomain(name: String): ResponseEntity { - val url = "$apiUrl/servers/localhost/zones" + val url = "$apiUrl/api/v1/servers/localhost/zones" val headers = createHeaders() val domainRequest = DomainRequest("$name.", "Master", arrayOf(), arrayOf()) val body = gson.toJson(domainRequest) @@ -35,7 +35,7 @@ class PowerDNSApiClient { } fun createRecord(domainName: String, recordRequest: RecordRequestDTO): ResponseEntity { - val url = "$apiUrl/servers/localhost/zones/$domainName." + val url = "$apiUrl/api/v1/servers/localhost/zones/$domainName." val headers = createHeaders() val record = RecordRequest( name = "${recordRequest.name}.$domainName.", @@ -50,7 +50,7 @@ class PowerDNSApiClient { } fun deleteDomain(name: String): ResponseEntity { - val url = "$apiUrl/servers/localhost/zones/$name." + val url = "$apiUrl/api/v1/servers/localhost/zones/$name." val headers = createHeaders() val entity = HttpEntity(headers) return restTemplate.exchange(url, HttpMethod.DELETE, entity, String::class.java) diff --git a/src/main/kotlin/space/mori/dnsapi/service/DomainService.kt b/src/main/kotlin/space/mori/dnsapi/service/DomainService.kt index 0727f9f..57cd015 100644 --- a/src/main/kotlin/space/mori/dnsapi/service/DomainService.kt +++ b/src/main/kotlin/space/mori/dnsapi/service/DomainService.kt @@ -5,16 +5,12 @@ import org.springframework.stereotype.Service import space.mori.dnsapi.PowerDNSApiClient import space.mori.dnsapi.db.Domain import space.mori.dnsapi.db.DomainRepository -import space.mori.dnsapi.db.UserRepository import space.mori.dnsapi.dto.DomainRequestDTO import space.mori.dnsapi.filter.getCurrentUser -import java.util.* @Service class DomainService( - @Autowired - private val userRepository: UserRepository, @Autowired private val domainRepository: DomainRepository, @Autowired @@ -49,6 +45,11 @@ class DomainService( } fun deleteDomain(domain_id: String): String { + val domain = domainRepository.findByCfid(domain_id).orElseThrow { + throw RuntimeException("Domain with CFID $domain_id not found") + } + + powerDNSApiClient.deleteDomain(domain.name) val count = domainRepository.deleteByCfid(domain_id) if(count > 0) throw RuntimeException("Domain with CFID $domain_id not found")