Class: Fog::Compute::ProfitBricks::Datacenter

Inherits:
Models::ProfitBricks::Base show all
Defined in:
lib/fog/compute/profit_bricks/models/datacenter.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Models::ProfitBricks::Base

#wait_for

Constructor Details

#initialize(attributes = {}) ⇒ Datacenter



15
16
17
# File 'lib/fog/compute/profit_bricks/models/datacenter.rb', line 15

def initialize(attributes = {})
  super
end

Instance Attribute Details

#optionsObject

Returns the value of attribute options.



13
14
15
# File 'lib/fog/compute/profit_bricks/models/datacenter.rb', line 13

def options
  @options
end

Instance Method Details

#clear(confirm = false) ⇒ Object



40
41
42
43
44
45
46
47
48
# File 'lib/fog/compute/profit_bricks/models/datacenter.rb', line 40

def clear(confirm = false)
  requires :id
  if confirm == true
    service.clear_data_center(id)
    true
  else
    raise ArgumentError.new("Confirm with true boolean to clear datacenter")
  end
end

#destroyObject



34
35
36
37
38
# File 'lib/fog/compute/profit_bricks/models/datacenter.rb', line 34

def destroy
  requires :id
  service.delete_data_center(id)
  true
end

#failed?Boolean



54
55
56
# File 'lib/fog/compute/profit_bricks/models/datacenter.rb', line 54

def failed?
  state == "ERROR"
end

#ready?Boolean



50
51
52
# File 'lib/fog/compute/profit_bricks/models/datacenter.rb', line 50

def ready?
  state == "AVAILABLE"
end

#saveObject



19
20
21
22
23
24
25
# File 'lib/fog/compute/profit_bricks/models/datacenter.rb', line 19

def save
  requires :name, :region

  data = service.create_data_center(name, region)
  merge_attributes(data.body["createDataCenterResponse"])
  true
end

#updateObject



27
28
29
30
31
32
# File 'lib/fog/compute/profit_bricks/models/datacenter.rb', line 27

def update
  requires :id
  data = service.update_data_center(id, options)
  merge_attributes(data.body["updateDataCenterResponse"])
  true
end