The parsing controller that stays behind the {Whois::Record}.
It provides object-oriented access to a WHOIS response. The list of properties and methods is available in the following constants:
SaudinicNetSa | = | WhoisNicNetSa | Parser for the saudinic.net.sa server. Aliases the whois.nic.net.sa parser. | |
WhoisAusregistryNetAu | = | WhoisAudnsNetAu | Parser for the whois.ausregistry.net.au server. Aliases the whois.audns.net.au. | |
WhoisCnnicNetCn | = | WhoisCnnicCn | Parser for the whois.cnnic.net.cn server. Aliases the whois.cnnic.cn parser. | |
WhoisFicoraFi | = | WhoisFi |
Parser for the whois.ficora.fi server.
It aliases the whois.fi parser. |
|
WhoisHkdnrNetHk | = | WhoisHkircHk | Parser for the whois.hkdnr.net.hk server. Aliases the whois.hkirc.hk parser. | |
WhoisNetUa | = | WhoisUa |
Parser for the whois.net.ua server.
It aliases the whois.ua parser. |
|
WhoisNicLa | = | WhoisCentralnicCom |
Parser for the whois.nic.la server.
It aliases the whois.centralnic.com parser because the .LA TLD is powered by Centralnic. |
|
WhoisNicOrKr | = | WhoisKr |
Parser for the whois.nic.or.kr server.
It aliases the whois.kr parser. |
|
WhoisPublicinterestregistryNet | = | WhoisPirOrg | Parser for the whois.publicinterestregistry.net server. Aliases the whois.pir.org parser. | |
WhoisRipnNet | = | WhoisTcinetRu | Parser for the whois.ripn.net server. Aliases the whois.tcinet.ru parser. | |
METHODS | = | [ :changed?, :unchanged?, :contacts, # :response_throttled?, :response_incomplete?, ] | ||
PROPERTIES | = | [ :disclaimer, :domain, :domain_id, :referral_whois, :referral_url, :status, :available?, :registered?, :created_on, :updated_on, :expires_on, :registrar, :registrant_contacts, :admin_contacts, :technical_contacts, :nameservers, ] |
record | [R] | @return [Whois::Record] The record referenced by this parser. |
Requires the file at whois/record/parser/#{name}.
@param [String] name The file name to load.
@return [void]
Converts host to the corresponding parser class name.
@param [String] host The server host. @return [String] The class name.
@example
Parser.host_to_parser("whois.nic.it") # => "WhoisNicIt" Parser.host_to_parser("whois.nic-info.it") # => "WhoisNicInfoIt"
Returns the proper parser instance for given part. The parser class is selected according to the value of the host attribute for given part.
@param [Whois::Record::Part] part The part to get the parser for.
@return [Whois::Record::Parser::Base]
An instance of the specific parser for given part. The instance is expected to be a child of {Whois::Record::Parser::Base}.
@example
# Parser for a known host Parser.parser_for("whois.example.com") # => #<Whois::Record::Parser::WhoisExampleCom> # Parser for an unknown host Parser.parser_for("missing.example.com") # => #<Whois::Record::Parser::Blank>
Detects the proper parser class according to given host and returns the class constant.
This method autoloads missing parser classes. If you want to define a custom parser, simple make sure the class is loaded in the Ruby environment before this method is called.
@param [String] host The server host.
@return [Class] The instance of Class representing the parser Class
corresponding to <tt>host</tt>. If <tt>host</tt> doesn't have a specific parser implementation, then returns the {Whois::Record::Parser::Blank} {Class}. The {Class} is expected to be a child of {Whois::Record::Parser::Base}.
@example
Parser.parser_klass("missing.example.com") # => Whois::Record::Parser::Blank # Define a custom parser for missing.example.com class Whois::Record::Parser::MissingExampleCom end Parser.parser_klass("missing.example.com") # => Whois::Record::Parser::MissingExampleCom
Loop through all the record parts to check if at least one part changed.
@param [Whois::Record::Parser] other The other parser instance to compare. @return [Boolean]
@see Whois::Record#changed? @see Whois::Record::Parser::Base#changed?
Collects and returns all the contacts from all the record parts.
@return [Array<Whois::Record::Contact>]
@see Whois::Record#contacts @see Whois::Record::Parser::Base#contacts
Returns an array with all host-specific parsers initialized for the parts contained into this parser. The array is lazy-initialized.
@return [Array<Whois::Record::Parser::Base>]
Returns true if the property passed as symbol is supported by any available parser.
@return [Boolean]
Checks if this class respond to given method.
Overrides the default implementation to add support for {PROPERTIES} and {METHODS}.
@return [Boolean]
Loop through all the parts to check if at least one part is an incomplete response.
@return [Boolean]
@see Whois::Record#response_incomplete? @see Whois::Record::Parser::Base#response_incomplete?
Loop through all the parts to check if at least one part is a throttle response.
@return [Boolean]
@see Whois::Record#response_throttled? @see Whois::Record::Parser::Base#response_throttled?
Loop through all the parts to check if at least one part is an unavailable response.
@return [Boolean]
@see Whois::Record#response_unavailable? @see Whois::Record::Parser::Base#response_unavailable?
The opposite of {changed?}.
@param [Whois::Record::Parser] other The other parser instance to compare. @return [Boolean]
@see Whois::Record#unchanged? @see Whois::Record::Parser::Base#unchanged?