module Fog::Metering

Public Class Methods

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

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