Class: MockServer::DnsRecord

Inherits:
Object
  • Object
show all
Defined in:
lib/mockserver/models.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name: nil, type: nil, dns_class: nil, ttl: nil, value: nil, priority: nil, weight: nil, port: nil) ⇒ DnsRecord

Returns a new instance of DnsRecord.



1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
# File 'lib/mockserver/models.rb', line 1438

def initialize(name: nil, type: nil, dns_class: nil, ttl: nil,
               value: nil, priority: nil, weight: nil, port: nil)
  @name = name
  @type = type
  @dns_class = dns_class
  @ttl = ttl
  @value = value
  @priority = priority
  @weight = weight
  @port = port
end

Instance Attribute Details

#dns_classObject

Returns the value of attribute dns_class.



1435
1436
1437
# File 'lib/mockserver/models.rb', line 1435

def dns_class
  @dns_class
end

#nameObject

Returns the value of attribute name.



1435
1436
1437
# File 'lib/mockserver/models.rb', line 1435

def name
  @name
end

#portObject

Returns the value of attribute port.



1435
1436
1437
# File 'lib/mockserver/models.rb', line 1435

def port
  @port
end

#priorityObject

Returns the value of attribute priority.



1435
1436
1437
# File 'lib/mockserver/models.rb', line 1435

def priority
  @priority
end

#ttlObject

Returns the value of attribute ttl.



1435
1436
1437
# File 'lib/mockserver/models.rb', line 1435

def ttl
  @ttl
end

#typeObject

Returns the value of attribute type.



1435
1436
1437
# File 'lib/mockserver/models.rb', line 1435

def type
  @type
end

#valueObject

Returns the value of attribute value.



1435
1436
1437
# File 'lib/mockserver/models.rb', line 1435

def value
  @value
end

#weightObject

Returns the value of attribute weight.



1435
1436
1437
# File 'lib/mockserver/models.rb', line 1435

def weight
  @weight
end

Class Method Details

.a_record(name, ip) ⇒ Object



1478
1479
1480
# File 'lib/mockserver/models.rb', line 1478

def self.a_record(name, ip)
  new(name: name, type: 'A', value: ip)
end

.aaaa_record(name, ip) ⇒ Object



1482
1483
1484
# File 'lib/mockserver/models.rb', line 1482

def self.aaaa_record(name, ip)
  new(name: name, type: 'AAAA', value: ip)
end

.cname_record(name, cname) ⇒ Object



1486
1487
1488
# File 'lib/mockserver/models.rb', line 1486

def self.cname_record(name, cname)
  new(name: name, type: 'CNAME', value: cname)
end

.from_hash(data) ⇒ Object



1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
# File 'lib/mockserver/models.rb', line 1463

def self.from_hash(data)
  return nil if data.nil?

  new(
    name:      data['name'],
    type:      data['type'],
    dns_class: data['dnsClass'],
    ttl:       data['ttl'],
    value:     data['value'],
    priority:  data['priority'],
    weight:    data['weight'],
    port:      data['port']
  )
end

.mx_record(name, priority, exchange) ⇒ Object



1490
1491
1492
# File 'lib/mockserver/models.rb', line 1490

def self.mx_record(name, priority, exchange)
  new(name: name, type: 'MX', priority: priority, value: exchange)
end

.ptr_record(name, pointer) ⇒ Object



1502
1503
1504
# File 'lib/mockserver/models.rb', line 1502

def self.ptr_record(name, pointer)
  new(name: name, type: 'PTR', value: pointer)
end

.srv_record(name, priority, weight, port, target) ⇒ Object



1494
1495
1496
# File 'lib/mockserver/models.rb', line 1494

def self.srv_record(name, priority, weight, port, target)
  new(name: name, type: 'SRV', priority: priority, weight: weight, port: port, value: target)
end

.txt_record(name, text) ⇒ Object



1498
1499
1500
# File 'lib/mockserver/models.rb', line 1498

def self.txt_record(name, text)
  new(name: name, type: 'TXT', value: text)
end

Instance Method Details

#to_hObject



1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
# File 'lib/mockserver/models.rb', line 1450

def to_h
  result = {}
  result['name'] = @name unless @name.nil?
  result['type'] = @type unless @type.nil?
  result['dnsClass'] = @dns_class unless @dns_class.nil?
  result['ttl'] = @ttl unless @ttl.nil?
  result['value'] = @value unless @value.nil?
  result['priority'] = @priority unless @priority.nil?
  result['weight'] = @weight unless @weight.nil?
  result['port'] = @port unless @port.nil?
  result
end