Class: ABBYY::Cloud::Operations::Base
- Inherits:
-
Object
- Object
- ABBYY::Cloud::Operations::Base
show all
- Extended by:
- Forwardable
- Defined in:
- lib/abbyy/cloud/operations/base.rb
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.http_method(value = nil) ⇒ Object
14
15
16
17
|
# File 'lib/abbyy/cloud/operations/base.rb', line 14
def http_method(value = nil)
@http_method = value.to_s.capitalize if value
@http_method || "Post"
end
|
.link(value = nil) ⇒ Object
23
24
25
|
# File 'lib/abbyy/cloud/operations/base.rb', line 23
def link(value = nil)
value ? @link = value : @link
end
|
.path(&block) ⇒ Object
19
20
21
|
# File 'lib/abbyy/cloud/operations/base.rb', line 19
def path(&block)
block ? @path = block : @path
end
|
.request_body(struct = nil, &block) ⇒ Object
31
32
33
|
# File 'lib/abbyy/cloud/operations/base.rb', line 31
def request_body(struct = nil, &block)
provide_struct :@request_body, struct, &block
end
|
.request_query(struct = nil, &block) ⇒ Object
35
36
37
|
# File 'lib/abbyy/cloud/operations/base.rb', line 35
def request_query(struct = nil, &block)
provide_struct :@request_query, struct, &block
end
|
.request_type(value = nil) ⇒ Object
27
28
29
|
# File 'lib/abbyy/cloud/operations/base.rb', line 27
def request_type(value = nil)
value ? (@request_type = value) : (@request_type || :json)
end
|
.response_body(struct = nil, &block) ⇒ Object
43
44
45
|
# File 'lib/abbyy/cloud/operations/base.rb', line 43
def response_body(struct = nil, &block)
provide_struct :@response_body, struct, &block
end
|
.response_type(value = nil) ⇒ Object
39
40
41
|
# File 'lib/abbyy/cloud/operations/base.rb', line 39
def response_type(value = nil)
value ? (@response_type = value) : (@response_type || :json)
end
|
Instance Method Details
#call(file = nil, **data) ⇒ Object
69
70
71
72
73
74
75
76
77
78
79
80
|
# File 'lib/abbyy/cloud/operations/base.rb', line 69
def call(file = nil, **data)
mash = Hashie::Mash.new(data)
url = mash.instance_eval(&path)
multipart = prepare_multipart(file, **data) if file
body = prepare_request_body(multipart, data)
query = prepare_request_query(data)
= (multipart)
res = connection.call http_method, url, body: body,
query: query,
headers:
handle_response_body res
end
|