Class: Cloudcost::Volume

Inherits:
Object
  • Object
show all
Defined in:
lib/cloudcost/commands/volume/volume.rb

Overview

Representation of cloudscale.ch volume object

Instance Attribute Summary collapse

Instance Method Summary collapse

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

#dataObject

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

Returns:

  • (Boolean)


32
33
34
# File 'lib/cloudcost/commands/volume/volume.rb', line 32

def attached?
  servers.size.positive?
end

#costs_per_dayObject



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

#nameObject



12
13
14
# File 'lib/cloudcost/commands/volume/volume.rb', line 12

def name
  @data[:name]
end

#server_nameObject



28
29
30
# File 'lib/cloudcost/commands/volume/volume.rb', line 28

def server_name
  servers.size.positive? ? servers.first[:name] : ""
end

#server_uuidsObject



36
37
38
# File 'lib/cloudcost/commands/volume/volume.rb', line 36

def server_uuids
  @data[:server_uuids]
end

#serversObject



24
25
26
# File 'lib/cloudcost/commands/volume/volume.rb', line 24

def servers
  @data[:servers]
end

#size_gbObject



44
45
46
# File 'lib/cloudcost/commands/volume/volume.rb', line 44

def size_gb
  @data[:size_gb]
end

#tagsObject



40
41
42
# File 'lib/cloudcost/commands/volume/volume.rb', line 40

def tags
  @data[:tags]
end

#tags_to_sObject



48
49
50
# File 'lib/cloudcost/commands/volume/volume.rb', line 48

def tags_to_s
  Cloudcost.tags_to_s(tags)
end

#typeObject



20
21
22
# File 'lib/cloudcost/commands/volume/volume.rb', line 20

def type
  @data[:type]
end

#uuidObject



16
17
18
# File 'lib/cloudcost/commands/volume/volume.rb', line 16

def uuid
  @data[:uuid]
end