Sha256: 66b5f465c87a911eeb05eebd0418efcef707acf9e539a231720069fbe2688a09

Contents?: true

Size: 982 Bytes

Versions: 1

Compression:

Stored size: 982 Bytes

Contents

module Epp
  module Eis
    
    XML_NS_FRED = 'http://www.nic.cz/xml/epp/fred-1.4'
    
    class CreditInfoResponse
      def initialize(response)
        @response = Nokogiri::XML(response)
      end
      
      def code
        @response.css('epp response result').first['code'].to_i
      end

      def message
        @response.css('epp response result msg').text
      end
      
      def zone_credits
        @response.css('fred|resCreditInfo fred|zoneCredit', 'fred' => XML_NS_FRED).inject({}) do |memo, item|
          memo[item.css('fred|zone', 'fred' => XML_NS_FRED).text] = item.css('fred|credit', 'fred' => XML_NS_FRED).text
          memo
        end
      end
    end
    
    module CreditCommands
      
      def credit_info
        builder = build_epp_request do |xml|
          xml.credit_info
        end
        
        CreditInfoResponse.new(send_request(builder.to_xml))
      end
    end
  end
end

Epp::Server.send(:include, Epp::Eis::CreditCommands)

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
epp-eis-0.2.1 lib/epp-eis/credit.rb