module JokerDMAPI::Host
Public Instance Methods
host_create(host, fields)
click to toggle source
# File lib/joker-dmapi/host.rb, line 33 def host_create(host, fields) host_request :ns_create, host, fields end
host_info(host)
click to toggle source
# File lib/joker-dmapi/host.rb, line 6 def host_info(host) response = query_no_raise :query_whois, { host: host } case response[:headers][:status_code] when '2303' then nil when '0' then result = {} response[:body].split("\n").each do |line| line.slice! /^host\./ line_parsed = parse_line(line) next if line_parsed.is_a? String key, value = line_parsed.first case key when :fqdn then result[:host] = value when :ip_address then result[:ipv4] = value when :ip_address_v6 then result[:ipv6] = value when :created_date, :modified_date then result[key] = DateTime.parse value else result.merge! line_parsed end end result else raise_response response end end
host_update(host, fields)
click to toggle source
# File lib/joker-dmapi/host.rb, line 37 def host_update(host, fields) host_request :ns_modify, host, fields end
Private Instance Methods
host_request(request, host, fields)
click to toggle source
# File lib/joker-dmapi/host.rb, line 43 def host_request(request, host, fields) unless fields.has_key?(:ipv4) raise ArgumentError, "Required fields not found" end p = { host: host } p[:ip] = fields[:ipv4] unless fields[:ipv4].empty? p[:ipv6] = fields[:ipv6] if fields.has_key? :ipv6 query request, p end