Sha256: 6604383edcd38a52e7a44bfce76fb1978426536e29d249a06ded91dcd96c9130

Contents?: true

Size: 1.24 KB

Versions: 2

Compression:

Stored size: 1.24 KB

Contents

#--
# Ruby Whois
#
# An intelligent pure Ruby WHOIS client and parser.
#
# Copyright (c) 2009-2018 Simone Carletti <weppos@weppos.net>
#++


require_relative 'base_icann_compliant'


module Whois
  class Parsers

    # Parser for the whois.donuts.com server.
    #
    # @see Whois::Parsers::Example
    #   The Example parser for the list of all available methods.
    #
    class WhoisUniregistryNet < BaseIcannCompliant
      self.scanner = Scanners::BaseIcannCompliant, {
          pattern_available: />>> Domain \".+\" is available/
      }


      property_supported :domain_id do
        node('Domain ID')
      end


      property_supported :expires_on do
        node('Registry Expiry Date') do |value|
          parse_time(value)
        end
      end


      property_supported :registrar do
        return unless node('Sponsoring Registrar')
        Parser::Registrar.new(
            id:           node('Sponsoring Registrar IANA ID'),
            name:         node('Sponsoring Registrar'),
            organization: node('Sponsoring Registrar')
        )
      end


      private

      def build_contact(element, type)
        if (contact = super)
          contact.id = node("#{element} ID")
        end
        contact
      end

    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
whois-parser-1.2.0 lib/whois/parsers/whois.uniregistry.net.rb
whois-parser-1.1.0 lib/whois/parsers/whois.uniregistry.net.rb