Class: Cloudcost::Volume
- Inherits:
-
Object
- Object
- Cloudcost::Volume
- Defined in:
- lib/cloudcost/commands/volume/volume.rb
Overview
Representation of cloudscale.ch volume object
Instance Attribute Summary collapse
-
#data ⇒ Object
Returns the value of attribute data.
Instance Method Summary collapse
- #attached? ⇒ Boolean
- #costs_per_day ⇒ Object
-
#initialize(data) ⇒ Volume
constructor
A new instance of Volume.
- #name ⇒ Object
- #server_name ⇒ Object
- #server_uuids ⇒ Object
- #servers ⇒ Object
- #size_gb ⇒ Object
- #tags ⇒ Object
- #tags_to_s ⇒ Object
- #type ⇒ Object
- #uuid ⇒ Object
Constructor Details
#initialize(data) ⇒ Volume
Returns a new instance of Volume.
8 9 10 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 8 def initialize(data) @data = data end |
Instance Attribute Details
#data ⇒ Object
Returns the value of attribute data.
6 7 8 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 6 def data @data end |
Instance Method Details
#attached? ⇒ Boolean
32 33 34 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 32 def attached? servers.size.positive? end |
#costs_per_day ⇒ Object
52 53 54 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 52 def costs_per_day Pricing.storage_costs_per_day(type, size_gb) end |
#name ⇒ Object
12 13 14 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 12 def name @data[:name] end |
#server_name ⇒ Object
28 29 30 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 28 def server_name servers.size.positive? ? servers.first[:name] : "" end |
#server_uuids ⇒ Object
36 37 38 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 36 def server_uuids @data[:server_uuids] end |
#servers ⇒ Object
24 25 26 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 24 def servers @data[:servers] end |
#size_gb ⇒ Object
44 45 46 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 44 def size_gb @data[:size_gb] end |
#tags ⇒ Object
40 41 42 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 40 def @data[:tags] end |
#tags_to_s ⇒ Object
48 49 50 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 48 def Cloudcost.() end |
#type ⇒ Object
20 21 22 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 20 def type @data[:type] end |
#uuid ⇒ Object
16 17 18 |
# File 'lib/cloudcost/commands/volume/volume.rb', line 16 def uuid @data[:uuid] end |