Sha256: 774b41c27318103541e9e34f5780e6f0459858de4ffe5fcb44d1383cabfb1343

Contents?: true

Size: 842 Bytes

Versions: 2

Compression:

Stored size: 842 Bytes

Contents

require 'fog/core'
require 'fog/json'
require 'time'

module Fog
  module Softlayer
    extend Fog::Provider

    API_URL = 'api.softlayer.com/rest/v3' unless defined? API_URL

    service(:compute, 'Compute')

    def self.loader(service)
      path = "providers/softlayer/lib/fog/softlayer/#{service}"
      Dir.entries(path).reject{|e| e =~ /^\./}.each do |file|
        _request = File.basename(file, '.rb')
        yield _request.to_sym
      end
    end

    def self.mock_account_id
      Fog.mocking? and @sl_account_id ||= Fog::Mock.random_numbers(7)
    end

    def self.mock_vm_id
      Fog::Mock.random_numbers(7)
    end

    def self.mock_global_identifier
      Fog::UUID.uuid
    end

    def self.valid_request?(required, passed)
      required.all? {|k| k = k.to_sym; passed.key?(k) and !passed[k].nil?}
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
fog-softlayer-0.0.4 lib/fog/softlayer/core.rb
fog-softlayer-0.0.3 lib/fog/softlayer/core.rb