module Fog::Metering

Public Class Methods

[](provider) click to toggle source
# File lib/fog/metering.rb, line 3
def self.[](provider)
  new(:provider => provider)
end
new(attributes) click to toggle source
# File lib/fog/metering.rb, line 7
def self.new(attributes)
  attributes = attributes.dup # Prevent delete from having side effects
  provider = attributes.delete(:provider).to_s.downcase.to_sym
  if providers.include?(provider)
    require "fog/#{provider}/metering"
    return Fog::Metering.const_get(Fog.providers[provider]).new(attributes)
  end

  raise ArgumentError, "#{provider} has no identity service"
end
providers() click to toggle source
# File lib/fog/metering.rb, line 18
def self.providers
  Fog.services[:metering]
end