Sha256: 855c12e7bf6083035aa161d11c8ddb57cd452d41229c5de5f821e6fc34498daf

Contents?: true

Size: 1.09 KB

Versions: 6

Compression:

Stored size: 1.09 KB

Contents

module Fog
  module VirtualBox
    class Compute < Fog::Service

      recognizes :provider # remove post deprecation

      model_path 'fog/compute/models/virtual_box'
      model       :medium
      collection  :mediums
      model       :medium_format
      model       :nat_engine
      model       :nat_redirect
      collection  :nat_redirects
      model       :network_adapter
      collection  :network_adapters
      model       :server
      collection  :servers
      model       :storage_controller
      collection  :storage_controllers

      class Mock

        def initialize(options={})
          Fog::Mock.not_implemented
        end

      end

      class Real

        def initialize(options={})
          require 'virtualbox'
          @connection = ::VirtualBox::Global.global.lib.virtualbox
        end

        # hack to provide 'requests'
        def method_missing(method_sym, *arguments, &block)
          if @connection.respond_to?(method_sym)
            @connection.send(method_sym, *arguments)
          else
            super
          end
        end

      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
fog-0.8.2 lib/fog/compute/virtual_box.rb
fog-0.8.1 lib/fog/compute/virtual_box.rb
fog-0.8.0 lib/fog/compute/virtual_box.rb
fog-0.7.2 lib/fog/compute/virtual_box.rb
fog-0.7.1 lib/fog/compute/virtual_box.rb
fog-0.7.0 lib/fog/compute/virtual_box.rb