Class: IBM::Cloud::SDK::BaseVPC
- Inherits:
-
Object
- Object
- IBM::Cloud::SDK::BaseVPC
show all
- Defined in:
- lib/ibm/cloud/sdk/vpc/base_vpc.rb
Overview
Container that encapsulates the VPC API.
Instance Attribute Summary collapse
Instance Method Summary
collapse
-
#adhoc(method: 'get', path: nil, params: {}, payload_type: 'json', payload: {}) ⇒ Object
-
#delete(path: nil, params: {}) ⇒ Object
-
#get(path: nil, params: {}) ⇒ Object
-
#initialize(parent, endpoint = nil) ⇒ BaseVPC
constructor
A new instance of BaseVPC.
-
#patch(payload = {}, path: nil, params: {}) ⇒ Object
-
#post(payload = {}, path: nil, params: {}, type: 'json') ⇒ Object
-
#put(payload = {}, path: nil, params: {}) ⇒ Object
-
#url(path = nil) ⇒ Object
Constructor Details
#initialize(parent, endpoint = nil) ⇒ BaseVPC
Returns a new instance of BaseVPC.
9
10
11
12
13
|
# File 'lib/ibm/cloud/sdk/vpc/base_vpc.rb', line 9
def initialize(parent, endpoint = nil)
@endpoint = parent.url(endpoint)
@connection = parent.connection
@logger = parent.logger
end
|
Instance Attribute Details
#connection ⇒ Object
Returns the value of attribute connection.
15
16
17
|
# File 'lib/ibm/cloud/sdk/vpc/base_vpc.rb', line 15
def connection
@connection
end
|
#endpoint ⇒ Object
Returns the value of attribute endpoint.
15
16
17
|
# File 'lib/ibm/cloud/sdk/vpc/base_vpc.rb', line 15
def endpoint
@endpoint
end
|
#logger ⇒ Object
Returns the value of attribute logger.
15
16
17
|
# File 'lib/ibm/cloud/sdk/vpc/base_vpc.rb', line 15
def logger
@logger
end
|
Instance Method Details
#adhoc(method: 'get', path: nil, params: {}, payload_type: 'json', payload: {}) ⇒ Object
17
18
19
|
# File 'lib/ibm/cloud/sdk/vpc/base_vpc.rb', line 17
def adhoc(method: 'get', path: nil, params: {}, payload_type: 'json', payload: {})
@connection.adhoc(method.to_sym, url(path), metadata(params, payload_type, payload))
end
|
#delete(path: nil, params: {}) ⇒ Object
37
38
39
|
# File 'lib/ibm/cloud/sdk/vpc/base_vpc.rb', line 37
def delete(path: nil, params: {})
adhoc(method: 'delete', path: path, params: params)
end
|
#get(path: nil, params: {}) ⇒ Object
21
22
23
|
# File 'lib/ibm/cloud/sdk/vpc/base_vpc.rb', line 21
def get(path: nil, params: {})
adhoc(method: 'get', path: path, params: params)
end
|
#patch(payload = {}, path: nil, params: {}) ⇒ Object
33
34
35
|
# File 'lib/ibm/cloud/sdk/vpc/base_vpc.rb', line 33
def patch(payload = {}, path: nil, params: {})
adhoc(method: 'patch', path: path, params: params, payload: payload)
end
|
#post(payload = {}, path: nil, params: {}, type: 'json') ⇒ Object
25
26
27
|
# File 'lib/ibm/cloud/sdk/vpc/base_vpc.rb', line 25
def post(payload = {}, path: nil, params: {}, type: 'json')
adhoc(method: 'post', path: path, params: params, payload: payload, payload_type: type)
end
|
#put(payload = {}, path: nil, params: {}) ⇒ Object
29
30
31
|
# File 'lib/ibm/cloud/sdk/vpc/base_vpc.rb', line 29
def put(payload = {}, path: nil, params: {})
adhoc(method: 'put', path: path, params: params, payload: payload)
end
|
#url(path = nil) ⇒ Object
41
42
43
44
45
|
# File 'lib/ibm/cloud/sdk/vpc/base_vpc.rb', line 41
def url(path = nil)
return endpoint unless path
"#{endpoint}/#{path}"
end
|