Module: NominetEPP::Operations::Renew
- Included in:
- Client
- Defined in:
- lib/nominet-epp/operations/renew.rb
Overview
EPP Renew Operation
Instance Method Summary collapse
-
#renew(name, period = '2y') ⇒ false, Time
Renew a domain name.
Instance Method Details
#renew(name, period = '2y') ⇒ false, Time
Renew a domain name
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/nominet-epp/operations/renew.rb', line 13 def renew(name, period = '2y') period = '2y' # reset period to 2 years as nominet don't currently support other options unit = period[-1..1] num = period.to_i.to_s raise ArgumentError, "period suffix must either be 'm' or 'y'" unless %w(m y).include?(unit) @resp = @client.renew do domain('renew') do |node, ns| node << XML::Node.new('name', name, ns) p = XML::Node.new('period', num, ns); p['unit'] = unit node << p end end return false unless @resp.success? renName = node_value(@resp.data, '//domain:renData/domain:name') renExp = node_value(@resp.data, '//domain:renData/domain:exDate') raise "Renewed name #{renName} does not match #{name}" if renName != name return Time.parse(renExp) end |