Module: WebFinger

Defined in:
lib/webfinger/response.rb,
lib/webfinger.rb,
lib/webfinger/request.rb,
lib/webfinger/exception.rb

Overview

NOTE:

Make a JSON Resource Descriptor (JRD) gem as separate one and use it as superclass?

Defined Under Namespace

Classes: BadRequest, Exception, Forbidden, HttpError, NotFound, Request, Response, Unauthorized

Constant Summary collapse

VERSION =
File.read(
  File.join(File.dirname(__FILE__), '../VERSION')
).delete("\n\r")

Class Method Summary collapse

Class Method Details

.debug!Object



33
34
35
# File 'lib/webfinger.rb', line 33

def debug!
  self.debugging = true
end

.debugging=(boolean) ⇒ Object



30
31
32
# File 'lib/webfinger.rb', line 30

def debugging=(boolean)
  @debugging = boolean
end

.debugging?Boolean

Returns:

  • (Boolean)


27
28
29
# File 'lib/webfinger.rb', line 27

def debugging?
  @debugging
end

.discover!(resource, options = {}) ⇒ Object



14
15
16
# File 'lib/webfinger.rb', line 14

def discover!(resource, options = {})
  Request.new(resource, options).discover!
end

.http_clientObject



45
46
47
48
49
50
51
52
53
54
# File 'lib/webfinger.rb', line 45

def http_client
  Faraday.new(headers: {user_agent: "WebFinger #{VERSION}"}) do |faraday|
    faraday.response :raise_error
    faraday.response :json
    faraday.response :follow_redirects
    faraday.response :logger, WebFinger.logger if debugging?
    faraday.adapter Faraday.default_adapter
    http_config.try(:call, faraday)
  end
end

.http_config(&block) ⇒ Object



56
57
58
# File 'lib/webfinger.rb', line 56

def http_config(&block)
  @http_config ||= block
end

.loggerObject



18
19
20
# File 'lib/webfinger.rb', line 18

def logger
  @logger
end

.logger=(logger) ⇒ Object



21
22
23
# File 'lib/webfinger.rb', line 21

def logger=(logger)
  @logger = logger
end

.url_builderObject



38
39
40
# File 'lib/webfinger.rb', line 38

def url_builder
  @url_builder ||= URI::HTTPS
end

.url_builder=(builder) ⇒ Object



41
42
43
# File 'lib/webfinger.rb', line 41

def url_builder=(builder)
  @url_builder = builder
end