Class: Resolv::DNS::Resource::Generic

Inherits:
Resolv::DNS::Resource show all
Defined in:
lib/rubysl/resolv/resolv.rb

Overview

A generic resource abstract class.

Constant Summary

Constants inherited from Resolv::DNS::Resource

ClassHash, ClassInsensitiveTypes, ClassValue

Instance Attribute Summary collapse

Attributes inherited from Resolv::DNS::Resource

#ttl

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Resolv::DNS::Resource

#==, #eql?, get_class, #hash

Constructor Details

#initialize(data) ⇒ Generic

Creates a new generic resource.



1525
1526
1527
# File 'lib/rubysl/resolv/resolv.rb', line 1525

def initialize(data)
  @data = data
end

Instance Attribute Details

#dataObject (readonly)

Data for this generic resource.



1532
1533
1534
# File 'lib/rubysl/resolv/resolv.rb', line 1532

def data
  @data
end

Class Method Details

.create(type_value, class_value) ⇒ Object

:nodoc:



1542
1543
1544
1545
1546
1547
1548
1549
# File 'lib/rubysl/resolv/resolv.rb', line 1542

def self.create(type_value, class_value) # :nodoc:
  c = Class.new(Generic)
  c.const_set(:TypeValue, type_value)
  c.const_set(:ClassValue, class_value)
  Generic.const_set("Type#{type_value}_Class#{class_value}", c)
  ClassHash[[type_value, class_value]] = c
  return c
end

.decode_rdata(msg) ⇒ Object

:nodoc:



1538
1539
1540
# File 'lib/rubysl/resolv/resolv.rb', line 1538

def self.decode_rdata(msg) # :nodoc:
  return self.new(msg.get_bytes)
end

Instance Method Details

#encode_rdata(msg) ⇒ Object

:nodoc:



1534
1535
1536
# File 'lib/rubysl/resolv/resolv.rb', line 1534

def encode_rdata(msg) # :nodoc:
  msg.put_bytes(data)
end