class NicInfo::Domain

deals with RDAP nameserver structures

Attributes

asEventActors[RW]
ds_data_objs[RW]
entities[RW]
key_data_objs[RW]
nameservers[RW]
network[RW]
objectclass[RW]

Public Class Methods

new(config) click to toggle source
# File lib/nicinfo/domain.rb, line 100
def initialize config
  @config = config
  @common = CommonJson.new config
  @entities = Array.new
  @asEventActors = Array.new
  @nameservers = Array.new
  @ds_data_objs = Array.new
  @key_data_objs = Array.new
end

Public Instance Methods

display() click to toggle source
# File lib/nicinfo/domain.rb, line 140
def display
  @config.logger.start_data_item
  @config.logger.data_title "[ DOMAIN ]"
  @config.logger.terse "Handle", NicInfo::get_handle( @objectclass ), NicInfo::AttentionType::SUCCESS
  @config.logger.extra "Object Class Name", NicInfo::get_object_class_name( @objectclass, "domain", @config )
  @config.logger.terse "Domain Name", NicInfo::get_ldhName( @objectclass ), NicInfo::AttentionType::SUCCESS
  @config.logger.datum "I18N Domain Name", NicInfo::get_unicodeName( @objectclass ), NicInfo::AttentionType::SUCCESS
  variants = @objectclass[ "variants" ]
  variant_no = 1
  variants.each do |variant|
    relation = variant[ "relation" ]
    item_value = ""
    if relation
      arr = Array.new
      relation.each do |rel|
        arr << NicInfo.capitalize( rel )
      end
      item_value = arr.join( ", " )
    end
    @config.logger.extra "Variant #{variant_no}", item_value
    @config.logger.extra "IDN Table", variant[ "idnTable" ]
    variant_names = variant[ "variantNames" ]
    variant_names.each do |variant_name|
      @config.logger.extra "Variant Domain", NicInfo::get_ldhName( variant_name )
      @config.logger.extra "Variant IDN", NicInfo::get_unicodeName( variant_name )
    end if variant_names
    variant_no = variant_no + 1
  end if variants
  @common.display_public_ids @objectclass
  @common.display_status @objectclass
  @common.display_events @objectclass
  @common.display_as_events_actors @asEventActors
  @common.display_port43 @objectclass
  @common.display_remarks @objectclass
  @common.display_links( get_cn, @objectclass )
  secure_dns = NicInfo::get_secure_dns( @objectclass )
  if secure_dns.instance_of? Array
    secure_dns = secure_dns[ 0 ]
  end
  if secure_dns
    @config.logger.terse "Zone Signed", secure_dns[ "zoneSigned" ]
    @config.logger.terse "Delegation Signed", secure_dns[ "delegationSigned" ]
    @config.logger.terse "Max Signature Life", secure_dns[ "maxSigLife" ]
  end
  @config.logger.end_data_item
end
get_cn() click to toggle source
# File lib/nicinfo/domain.rb, line 187
def get_cn
  handle = NicInfo::get_handle @objectclass
  handle = NicInfo::get_ldhName @objectclass if !handle
  handle = "(unidentifiable domain #{object_id})" if !handle
  if (name = NicInfo::get_ldhName( @objectclass ) ) != nil
    return "#{name} ( #{handle} )"
  end
  return handle
end
process(json_data) click to toggle source
# File lib/nicinfo/domain.rb, line 110
def process json_data
  @objectclass = json_data
  @entities = @common.process_entities @objectclass
  json_nses = NicInfo::get_nameservers json_data
  json_nses.each do |json_ns|
    ns = @config.factory.new_ns
    ns.process( json_ns )
    @nameservers << ns
  end if json_nses
  json_net = NicInfo::get_network json_data
  if json_net
    ip = @config.factory.new_ip
    ip.process json_net
    @network = ip
  end
  json_ds_data_objs = NicInfo::get_ds_data_objs @objectclass
  json_ds_data_objs.each do |json_ds|
    dsData = DsData.new( @config )
    dsData.process( json_ds )
    @ds_data_objs << dsData
  end if json_ds_data_objs
  json_key_data_objs = NicInfo::get_key_data_objs @objectclass
  json_key_data_objs.each do |json_key|
    keyData = KeyData.new( @config )
    keyData.process( json_key )
    @key_data_objs << keyData
  end if json_key_data_objs
  return self
end
to_node() click to toggle source
# File lib/nicinfo/domain.rb, line 197
def to_node
  DataNode.new( get_cn, nil, NicInfo::get_self_link( NicInfo::get_links( @objectclass, @config ) ) )
end