Class: InstanceId::Request
- Inherits:
-
Object
- Object
- InstanceId::Request
show all
- Defined in:
- lib/instance_id/request.rb,
lib/instance_id/request/delete.rb,
lib/instance_id/request/get_info.rb,
lib/instance_id/request/batch_operation.rb
Defined Under Namespace
Classes: BatchOperation, Delete, GetInfo
Instance Method Summary
collapse
Constructor Details
#initialize(*args, **options) {|connector| ... } ⇒ Request
Returns a new instance of Request.
3
4
5
|
# File 'lib/instance_id/request.rb', line 3
def initialize(*args, **options)
yield(connector) if block_given?
end
|
Instance Method Details
#endpoint ⇒ Object
14
15
16
|
# File 'lib/instance_id/request.rb', line 14
def endpoint
raise NotImplementedError, "concrete classes should implement #{__method__}."
end
|
#invoke ⇒ Object
7
8
9
10
11
12
|
# File 'lib/instance_id/request.rb', line 7
def invoke
response = connector.send(method, endpoint) do |request|
yield(request) if block_given?
end
parse response
end
|
#method ⇒ Object
18
19
20
|
# File 'lib/instance_id/request.rb', line 18
def method
raise NotImplementedError, "concrete classes should implement #{__method__}, returning one of #{%i(get post put patch delete)}."
end
|
#response_class ⇒ Object
22
23
24
|
# File 'lib/instance_id/request.rb', line 22
def response_class
raise NotImplementedError, "concrete classes should implement #{__method__}, returning concrete class of InstanceId::Response"
end
|