Module: Songkick::Transport
- Defined in:
- lib/songkick/transport.rb,
lib/songkick/transport/base.rb,
lib/songkick/transport/curb.rb,
lib/songkick/transport/headers.rb,
lib/songkick/transport/request.rb,
lib/songkick/transport/service.rb,
lib/songkick/transport/httparty.rb,
lib/songkick/transport/response.rb,
lib/songkick/transport/rack_test.rb,
lib/songkick/transport/reporting.rb,
lib/songkick/transport/http_error.rb,
lib/songkick/transport/serialization.rb,
lib/songkick/transport/authentication.rb,
lib/songkick/transport/upstream_error.rb
Defined Under Namespace
Modules: Authentication, Reporting, Serialization
Classes: Base, ConnectionFailedError, Curb, Headers, HostResolutionError, HttParty, HttpError, InvalidJSONError, RackTest, Request, Response, Service, TimeoutError, UpstreamError
Constant Summary
collapse
- DEFAULT_TIMEOUT =
5
- DEFAULT_FORMAT =
:json
- DEFAULT_USER_ERROR_CODES =
[409]
- HTTP_VERBS =
%w[options head get patch post put delete]
- USE_BODY =
%w[post put]
- FORM_ENCODING =
'application/x-www-form-urlencoded'
- ROOT =
File.expand_path('..', __FILE__)
- IO =
UploadIO
Class Method Summary
collapse
Class Method Details
.io(object) ⇒ Object
59
60
61
62
63
64
65
66
67
68
69
|
# File 'lib/songkick/transport.rb', line 59
def self.io(object)
if Hash === object and [:tempfile, :type, :filename].all? { |k| object.has_key? k } Transport::IO.new(object[:tempfile], object[:type], object[:filename])
elsif object.respond_to?(:content_type) and object.respond_to?(:original_filename) Transport::IO.new(object, object.content_type, object.original_filename)
else
raise ArgumentError, "Could not generate a Transport::IO from #{object.inspect}"
end
end
|
.logger ⇒ Object
71
72
73
74
75
76
|
# File 'lib/songkick/transport.rb', line 71
def self.logger
@logger ||= begin
require 'logger'
Logger.new(STDOUT)
end
end
|
.logger=(logger) ⇒ Object
78
79
80
|
# File 'lib/songkick/transport.rb', line 78
def self.logger=(logger)
@logger = logger
end
|
.parser_for(content_type) ⇒ Object
47
48
49
50
51
52
53
|
# File 'lib/songkick/transport.rb', line 47
def self.parser_for(content_type)
parser = (@parsers && @parsers[content_type]) || @default_parser
unless parser
raise TypeError, "Could not find a parser for content-type: #{content_type}"
end
parser
end
|
.register_default_parser(parser) ⇒ Object
43
44
45
|
# File 'lib/songkick/transport.rb', line 43
def self.register_default_parser(parser)
@default_parser = parser
end
|
.register_parser(content_type, parser) ⇒ Object
38
39
40
41
|
# File 'lib/songkick/transport.rb', line 38
def self.register_parser(content_type, parser)
@parsers ||= {}
@parsers[content_type] = parser
end
|
.report ⇒ Object
90
91
92
|
# File 'lib/songkick/transport.rb', line 90
def self.report
Reporting.report
end
|
.sanitize(*params) ⇒ Object
94
95
96
|
# File 'lib/songkick/transport.rb', line 94
def self.sanitize(*params)
sanitized_params.concat(params)
end
|
.sanitized_params ⇒ Object
98
99
100
|
# File 'lib/songkick/transport.rb', line 98
def self.sanitized_params
@sanitized_params ||= []
end
|
.verbose=(verbose) ⇒ Object
82
83
84
|
# File 'lib/songkick/transport.rb', line 82
def self.verbose=(verbose)
@verbose = verbose
end
|
.verbose? ⇒ Boolean
86
87
88
|
# File 'lib/songkick/transport.rb', line 86
def self.verbose?
@verbose
end
|