refactored update and create domain nameserver validator

This commit is contained in:
olegphenomenon 2021-12-30 15:50:11 +02:00
parent e10f4aa186
commit fe4e9ed8ef
4 changed files with 22 additions and 8 deletions

View file

@ -34,11 +34,18 @@ module Actions
end end
def parse_nameserver_hash(nameserver) def parse_nameserver_hash(nameserver)
result = Domains::NameserverValidator.run(hostname: nameserver[:hostname]) name = params[:name].strip.downcase
result = Domains::NameserverValidator.run(domain_name: name, nameserver_address: nameserver[:hostname])
return true if result[:result] return true if result[:result]
domain.add_epp_error('2303', nil, result[:reason], 'Problem with nameserver: ') if result[:reason] == 'exception'
reason = result[:error_info]
else
reason = result[:reason]
end
domain.add_epp_error('2303', nil, reason, 'Problem with nameserver: ')
end end
def check_contact_duplications def check_contact_duplications

View file

@ -42,11 +42,18 @@ module Actions
def parse_nameserver_hash(nameserver) def parse_nameserver_hash(nameserver)
return false unless nameserver[:action] == "add" return false unless nameserver[:action] == "add"
result = Domains::NameserverValidator.run(hostname: nameserver[:hostname]) name = params[:domain].strip.downcase
result = Domains::NameserverValidator.run(domain_name: name, nameserver_address: nameserver[:hostname])
return true if result[:result] return true if result[:result]
domain.add_epp_error('2303', nil, result[:reason], 'Problem with nameserver: ') if result[:reason] == 'exception'
reason = result[:error_info]
else
reason = result[:reason]
end
domain.add_epp_error('2303', nil, reason, 'Problem with nameserver: ')
end end
def check_for_same_contacts(contacts, contact_type) def check_for_same_contacts(contacts, contact_type)

View file

@ -4,8 +4,8 @@ module Domains
extend self extend self
def run(hostname:, nameserver_address:) def run(domain_name:, nameserver_address:)
validate(hostname: hostname, nameserver_address: nameserver_address) validate(hostname: domain_name, nameserver_address: nameserver_address)
end end
private private

View file

@ -8,7 +8,7 @@ class NameserverRecordValidationJob < ApplicationJob
def perform(domain_name: nil, nameserver_address: nil) def perform(domain_name: nil, nameserver_address: nil)
if nameserver_address.nil? if nameserver_address.nil?
Nameserver.all.map do |nameserver| Nameserver.all.map do |nameserver|
result = Domains::NameserverValidator.run(hostname: nameserver.domain.name, nameserver_address: nameserver.hostname) result = Domains::NameserverValidator.run(domain_name: nameserver.domain.name, nameserver_address: nameserver.hostname)
if result[:result] if result[:result]
true true
@ -18,7 +18,7 @@ class NameserverRecordValidationJob < ApplicationJob
end end
end end
else else
result = Domains::NameserverValidator.run(hostname: domain_name, nameserver_address: nameserver_address) result = Domains::NameserverValidator.run(domain_name: domain_name, nameserver_address: nameserver_address)
return parse_result(result, nameserver_address) unless result[:result] return parse_result(result, nameserver_address) unless result[:result]
true true