Sha256: adf058efd0d1e5372df48a1d6486e5de9423156f158fe569f483d39c49371aea

Contents?: true

Size: 712 Bytes

Versions: 1

Compression:

Stored size: 712 Bytes

Contents

module Vos
  class Box
    include Shell, Marks, Vfs
    
    attr_accessor :options
    
    def initialize options = {}
      @options = options
      options[:host] ||= 'localhost'
    end


    # 
    # driver
    # 
    def driver
      unless @driver
        klass = options[:host] == 'localhost' ? Drivers::Local : Drivers::Ssh
        @driver = klass.new options
      end
      @driver
    end
    
    def open &block
      driver.open &block
    end    
    def close
      driver.close
    end

    
    # 
    # Micelaneous
    # 
    def inspect
      host = options[:host]
      if host == 'localhost'
        ''
      else
        host
      end
    end
    alias_method :to_s, :inspect
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
vos-0.1.0 lib/vos/box.rb