Method: Fog::OpenStack.new

Defined in:
lib/fog/openstack/planning.rb

.new(attributes) ⇒ Object

Raises:

  • (ArgumentError)


122
123
124
125
126
127
128
129
# File 'lib/fog/openstack/planning.rb', line 122

def self.new(attributes)
  attributes = attributes.dup # Prevent delete from having side effects
  service = attributes.delete(:service).to_s.downcase.to_sym
  if services.include?(service)
    return Fog::OpenStack.const_get(service.to_s.capitalize).new(attributes)
  end
  raise ArgumentError, "Openstack has no #{service} service"
end