Class: Credly::Api::Base
- Inherits:
-
Object
show all
- Extended by:
- Forwardable
- Includes:
- Requierable
- Defined in:
- lib/credly/api/base.rb
Instance Attribute Summary collapse
Instance Method Summary
collapse
#require_at_least_one_file, #require_present
Constructor Details
#initialize(options = {}) ⇒ Base
Returns a new instance of Base.
10
11
12
13
14
15
16
17
|
# File 'lib/credly/api/base.rb', line 10
def initialize(options = {})
@client = options.delete(:client)
options.each_pair do |key, value|
if self.respond_to?("#{key}=")
self.send("#{key}=", value)
end
end
end
|
Instance Attribute Details
#id ⇒ Object
Returns the value of attribute id.
8
9
10
|
# File 'lib/credly/api/base.rb', line 8
def id
@id
end
|
#response ⇒ Object
Returns the value of attribute response.
7
8
9
|
# File 'lib/credly/api/base.rb', line 7
def response
@response
end
|
Instance Method Details
#after_request(*args) ⇒ Object
19
20
21
|
# File 'lib/credly/api/base.rb', line 19
def after_request(*args)
build_object
end
|
#before_request(*args) ⇒ Object
23
24
|
# File 'lib/credly/api/base.rb', line 23
def before_request(*args)
end
|
#build_object ⇒ Object
30
31
32
|
# File 'lib/credly/api/base.rb', line 30
def build_object
MultiJson.load(@response)
end
|
#delete(*args) ⇒ Object
55
56
57
58
59
60
|
# File 'lib/credly/api/base.rb', line 55
def delete(*args)
args[0] = versioned_path(args[0])
before_request(*args)
@response = @client.delet(*args)
after_request(*args)
end
|
#get(*args) ⇒ Object
34
35
36
37
38
39
|
# File 'lib/credly/api/base.rb', line 34
def get(*args)
args[0] = versioned_path(args[0])
before_request(*args)
@response = @client.get(*args)
after_request(*args)
end
|
#patch(*args) ⇒ Object
62
63
64
65
66
67
|
# File 'lib/credly/api/base.rb', line 62
def patch(*args)
args[0] = versioned_path(args[0])
before_request(*args)
@response = @client.patch(*args)
after_request(*args)
end
|
#post(*args) ⇒ Object
41
42
43
44
45
46
|
# File 'lib/credly/api/base.rb', line 41
def post(*args)
args[0] = versioned_path(args[0])
before_request(*args)
@response = @client.post(*args)
after_request(*args)
end
|
#put(*args) ⇒ Object
48
49
50
51
52
53
|
# File 'lib/credly/api/base.rb', line 48
def put(*args)
args[0] = versioned_path(args[0])
before_request(*args)
@response = @client.put(*args)
after_request(*args)
end
|
#versioned_path(path) ⇒ Object
26
27
28
|
# File 'lib/credly/api/base.rb', line 26
def versioned_path(path)
[@client.options[:version], path].join('/')
end
|