summaryrefslogtreecommitdiff
path: root/lib/nickserver/nicknym/source.rb
blob: 0776a36157172bbf1319f151fa6f6ab11eecb7ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
require 'nickserver/source'
require 'nickserver/response'

module Nickserver
  module Nicknym
    class Source < Nickserver::Source

      def available_for?(domain)
        status, _body = get "#{domain}/provider.json"
        status == 200
      end

      def query(email)
        status, body = get "nicknym.#{email.domain}", address: email.to_s
        return Nickserver::Response.new(status, body)
      end

      protected

      def get(*args)
        args[0] = "https://#{args.first}"
        adapter.get(*args)
      end
    end
  end
end