Sha256: 079c6992bf6cd38e484ee8d11df76adaf24b384281758ef595abec30083cbf08

Contents?: true

Size: 1.23 KB

Versions: 12

Compression:

Stored size: 1.23 KB

Contents

require File.expand_path(File.join(File.dirname(__FILE__), '..', 'virtual_box'))
require 'fog/compute'

module Fog
  module Compute
    class VirtualBox < Fog::Service

      model_path 'fog/virtual_box/models/compute'
      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

        def respond_to?(method, *)
          super or @connection.respond_to? method
        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

12 entries across 12 versions & 5 rubygems

Version Path
brightbox-cli-0.18.1 lib/brightbox-cli/vendor/fog/lib/fog/virtual_box/compute.rb
michiels-fog-1.3.1 lib/fog/virtual_box/compute.rb
ftl-0.2.0 vendor/bundle/gems/fog-1.3.1/lib/fog/virtual_box/compute.rb
brightbox-cli-0.18.0 lib/brightbox-cli/vendor/fog/lib/fog/virtual_box/compute.rb
fog-1.3.1 lib/fog/virtual_box/compute.rb
fog-1.3.0 lib/fog/virtual_box/compute.rb
brightbox-cli-0.17.5 lib/brightbox-cli/vendor/fog/lib/fog/virtual_box/compute.rb
fog-1.2.0 lib/fog/virtual_box/compute.rb
ktheory-fog-1.1.2 lib/fog/virtual_box/compute.rb
brightbox-cli-0.17.4 lib/brightbox-cli/vendor/fog/lib/fog/virtual_box/compute.rb
brightbox-cli-0.17.3 lib/brightbox-cli/vendor/fog/lib/fog/virtual_box/compute.rb
brightbox-cli-0.17.2 lib/brightbox-cli/vendor/fog/lib/fog/virtual_box/compute.rb