Class: GandiV5::LiveDNS::RecordSet
- Inherits:
-
Object
- Object
- GandiV5::LiveDNS::RecordSet
- Includes:
- Data
- Defined in:
- lib/gandi_v5/live_dns/record_set.rb
Overview
A record set which comes from either a domain or zone.
Instance Attribute Summary collapse
- #name ⇒ String readonly
- #ttl ⇒ Integer readonly
- #type ⇒ String readonly
- #values ⇒ Array<String> readonly
Instance Method Summary collapse
-
#day?(number = 1) ⇒ Boolean
(also: #days?, #weeks?)
Check the TTL’s value in days.
-
#hour?(number = 1) ⇒ Boolean
(also: #hours?)
Check the TTL’s value in hours.
-
#minute?(number = 1) ⇒ Boolean
(also: #minutes?)
Check the TTL’s value in minutes.
-
#second?(number = 1) ⇒ Boolean
(also: #seconds?)
Check the TTL’s value in seconds.
-
#to_s ⇒ String
Generate zone file lines for the record.
-
#week?(number = 1) ⇒ Boolean
Check the TTL’s value in weeks.
Methods included from Data
#from_gandi, included, #initialize, #to_gandi, #to_h, #values_at
Instance Attribute Details
#name ⇒ String (readonly)
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/gandi_v5/live_dns/record_set.rb', line 14 class RecordSet include GandiV5::Data member :type, gandi_key: 'rrset_type' member :ttl, gandi_key: 'rrset_ttl' member :name, gandi_key: 'rrset_name' member :values, gandi_key: 'rrset_values' # Generate zone file lines for the record. # @return [String] def to_s values.map do |value| "#{name}\t#{ttl}\tIN\t#{type}\t#{value}" end.join("\n") end GandiV5::LiveDNS::RECORD_TYPES.each do |t| # Check the record type. # @return [Boolean] define_method "#{t.downcase}?" do type.eql?(t) end end # Check the TTL's value in seconds. # @param number [Integer] the number of second(s) to check against. # @return [Boolean] def second?(number = 1) ttl == number end alias seconds? second? # Check the TTL's value in minutes. # @param number [Integer] the number of minute(s) to check against. # @return [Boolean] def minute?(number = 1) ttl == number * 60 end alias minutes? minute? # Check the TTL's value in hours. # @param number [Integer] the number of hour(s) to check against. # @return [Boolean] def hour?(number = 1) ttl == number * 3_600 end alias hours? hour? # Check the TTL's value in days. # @param number [Integer] the number of day(s) to check against. # @return [Boolean] def day?(number = 1) ttl == number * 86_400 end alias days? day? # Check the TTL's value in weeks. # @param number [Integer] the number of week(s) to check against. # @return [Boolean] def week?(number = 1) ttl == number * 604_800 end alias weeks? day? end |
#ttl ⇒ Integer (readonly)
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/gandi_v5/live_dns/record_set.rb', line 14 class RecordSet include GandiV5::Data member :type, gandi_key: 'rrset_type' member :ttl, gandi_key: 'rrset_ttl' member :name, gandi_key: 'rrset_name' member :values, gandi_key: 'rrset_values' # Generate zone file lines for the record. # @return [String] def to_s values.map do |value| "#{name}\t#{ttl}\tIN\t#{type}\t#{value}" end.join("\n") end GandiV5::LiveDNS::RECORD_TYPES.each do |t| # Check the record type. # @return [Boolean] define_method "#{t.downcase}?" do type.eql?(t) end end # Check the TTL's value in seconds. # @param number [Integer] the number of second(s) to check against. # @return [Boolean] def second?(number = 1) ttl == number end alias seconds? second? # Check the TTL's value in minutes. # @param number [Integer] the number of minute(s) to check against. # @return [Boolean] def minute?(number = 1) ttl == number * 60 end alias minutes? minute? # Check the TTL's value in hours. # @param number [Integer] the number of hour(s) to check against. # @return [Boolean] def hour?(number = 1) ttl == number * 3_600 end alias hours? hour? # Check the TTL's value in days. # @param number [Integer] the number of day(s) to check against. # @return [Boolean] def day?(number = 1) ttl == number * 86_400 end alias days? day? # Check the TTL's value in weeks. # @param number [Integer] the number of week(s) to check against. # @return [Boolean] def week?(number = 1) ttl == number * 604_800 end alias weeks? day? end |
#type ⇒ String (readonly)
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/gandi_v5/live_dns/record_set.rb', line 14 class RecordSet include GandiV5::Data member :type, gandi_key: 'rrset_type' member :ttl, gandi_key: 'rrset_ttl' member :name, gandi_key: 'rrset_name' member :values, gandi_key: 'rrset_values' # Generate zone file lines for the record. # @return [String] def to_s values.map do |value| "#{name}\t#{ttl}\tIN\t#{type}\t#{value}" end.join("\n") end GandiV5::LiveDNS::RECORD_TYPES.each do |t| # Check the record type. # @return [Boolean] define_method "#{t.downcase}?" do type.eql?(t) end end # Check the TTL's value in seconds. # @param number [Integer] the number of second(s) to check against. # @return [Boolean] def second?(number = 1) ttl == number end alias seconds? second? # Check the TTL's value in minutes. # @param number [Integer] the number of minute(s) to check against. # @return [Boolean] def minute?(number = 1) ttl == number * 60 end alias minutes? minute? # Check the TTL's value in hours. # @param number [Integer] the number of hour(s) to check against. # @return [Boolean] def hour?(number = 1) ttl == number * 3_600 end alias hours? hour? # Check the TTL's value in days. # @param number [Integer] the number of day(s) to check against. # @return [Boolean] def day?(number = 1) ttl == number * 86_400 end alias days? day? # Check the TTL's value in weeks. # @param number [Integer] the number of week(s) to check against. # @return [Boolean] def week?(number = 1) ttl == number * 604_800 end alias weeks? day? end |
#values ⇒ Array<String> (readonly)
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/gandi_v5/live_dns/record_set.rb', line 14 class RecordSet include GandiV5::Data member :type, gandi_key: 'rrset_type' member :ttl, gandi_key: 'rrset_ttl' member :name, gandi_key: 'rrset_name' member :values, gandi_key: 'rrset_values' # Generate zone file lines for the record. # @return [String] def to_s values.map do |value| "#{name}\t#{ttl}\tIN\t#{type}\t#{value}" end.join("\n") end GandiV5::LiveDNS::RECORD_TYPES.each do |t| # Check the record type. # @return [Boolean] define_method "#{t.downcase}?" do type.eql?(t) end end # Check the TTL's value in seconds. # @param number [Integer] the number of second(s) to check against. # @return [Boolean] def second?(number = 1) ttl == number end alias seconds? second? # Check the TTL's value in minutes. # @param number [Integer] the number of minute(s) to check against. # @return [Boolean] def minute?(number = 1) ttl == number * 60 end alias minutes? minute? # Check the TTL's value in hours. # @param number [Integer] the number of hour(s) to check against. # @return [Boolean] def hour?(number = 1) ttl == number * 3_600 end alias hours? hour? # Check the TTL's value in days. # @param number [Integer] the number of day(s) to check against. # @return [Boolean] def day?(number = 1) ttl == number * 86_400 end alias days? day? # Check the TTL's value in weeks. # @param number [Integer] the number of week(s) to check against. # @return [Boolean] def week?(number = 1) ttl == number * 604_800 end alias weeks? day? end |
Instance Method Details
#day?(number = 1) ⇒ Boolean Also known as: days?, weeks?
Check the TTL’s value in days.
65 66 67 |
# File 'lib/gandi_v5/live_dns/record_set.rb', line 65 def day?(number = 1) ttl == number * 86_400 end |
#hour?(number = 1) ⇒ Boolean Also known as: hours?
Check the TTL’s value in hours.
57 58 59 |
# File 'lib/gandi_v5/live_dns/record_set.rb', line 57 def hour?(number = 1) ttl == number * 3_600 end |
#minute?(number = 1) ⇒ Boolean Also known as: minutes?
Check the TTL’s value in minutes.
49 50 51 |
# File 'lib/gandi_v5/live_dns/record_set.rb', line 49 def minute?(number = 1) ttl == number * 60 end |
#second?(number = 1) ⇒ Boolean Also known as: seconds?
Check the TTL’s value in seconds.
41 42 43 |
# File 'lib/gandi_v5/live_dns/record_set.rb', line 41 def second?(number = 1) ttl == number end |
#to_s ⇒ String
Generate zone file lines for the record.
24 25 26 27 28 |
# File 'lib/gandi_v5/live_dns/record_set.rb', line 24 def to_s values.map do |value| "#{name}\t#{ttl}\tIN\t#{type}\t#{value}" end.join("\n") end |
#week?(number = 1) ⇒ Boolean
Check the TTL’s value in weeks.
73 74 75 |
# File 'lib/gandi_v5/live_dns/record_set.rb', line 73 def week?(number = 1) ttl == number * 604_800 end |