Class: Hcloud::FloatingIP
- Inherits:
-
Object
- Object
- Hcloud::FloatingIP
- Includes:
- EntryLoader
- Defined in:
- lib/hcloud/floating_ip.rb
Constant Summary collapse
- Attributes =
{ id: nil, description: nil, ip: nil, type: nil, dns_ptr: nil, server: nil, home_location: Location, blocked: nil, }
Instance Method Summary collapse
- #actions ⇒ Object
- #assign(server:) ⇒ Object
- #destroy ⇒ Object
- #unassign ⇒ Object
- #update(description:) ⇒ Object
Methods included from EntryLoader
Instance Method Details
#actions ⇒ Object
34 35 36 |
# File 'lib/hcloud/floating_ip.rb', line 34 def actions ActionResource.new(client: client, parent: self, base_path: "floating_ips/#{id.to_i}") end |
#assign(server:) ⇒ Object
22 23 24 25 26 |
# File 'lib/hcloud/floating_ip.rb', line 22 def assign(server:) j = Oj.load(request("floating_ips/#{id.to_i}/actions/assign", j: {server: server}).run.body) Action.new(j["action"], self, client) end |
#destroy ⇒ Object
38 39 40 41 |
# File 'lib/hcloud/floating_ip.rb', line 38 def destroy request("floating_ips/#{id}", method: :delete).run.body true end |
#unassign ⇒ Object
28 29 30 31 32 |
# File 'lib/hcloud/floating_ip.rb', line 28 def unassign j = Oj.load(request("floating_ips/#{id.to_i}/actions/unassign", method: :post).run.body) Action.new(j["action"], self, client) end |
#update(description:) ⇒ Object
15 16 17 18 19 20 |
# File 'lib/hcloud/floating_ip.rb', line 15 def update(description:) j = Oj.load(request("floating_ips/#{id.to_i}", j: {description: description}, method: :put).run.body) FloatingIP.new(j["floating_ip"], self, client) end |