class Vagrant::Plugin::V2::SyncedFolder

This is the base class for a synced folder implementation.

Public Instance Methods

_initialize(machine, synced_folder_type) click to toggle source
# File lib/vagrant/plugin/v2/synced_folder.rb, line 103
def _initialize(machine, synced_folder_type)
  plugins = Vagrant.plugin("2").manager.synced_folders
  capabilities = Vagrant.plugin("2").manager.synced_folder_capabilities
  initialize_capabilities!(synced_folder_type, plugins, capabilities, machine)
  self
end
cleanup(machine, opts) click to toggle source

This is called after destroying the machine during a ‘vagrant destroy` and also prior to syncing folders during a `vagrant up`.

No return value.

@param [Machine] machine @param [Hash] opts

# File lib/vagrant/plugin/v2/synced_folder.rb, line 100
def cleanup(machine, opts)
end
disable(machine, folders, opts) click to toggle source

This is called to remove the synced folders from a running machine.

This is not guaranteed to be called, but this should be implemented by every synced folder implementation.

@param [Machine] machine The machine to modify. @param [Hash] folders The folders to remove. This will not contain

any folders that should remain.

@param [Hash] opts Any options for the synced folders.

# File lib/vagrant/plugin/v2/synced_folder.rb, line 89
def disable(machine, folders, opts)
end
enable(machine, folders, opts) click to toggle source

This is called after the machine is booted and after networks are setup.

This might be called with new folders while the machine is running. If so, then this should add only those folders without removing any existing ones.

No return value.

# File lib/vagrant/plugin/v2/synced_folder.rb, line 76
def enable(machine, folders, opts)
end
prepare(machine, folders, opts) click to toggle source

DEPRECATED: This will be removed.

@deprecated

# File lib/vagrant/plugin/v2/synced_folder.rb, line 65
def prepare(machine, folders, opts)
end
usable?(machine, raise_error=false) click to toggle source

This is called early when the synced folder is set to determine if this implementation can be used for this machine. This should return true or false.

@param [Machine] machine @param [Boolean] raise_error If true, should raise an exception

if it isn't usable.

@return [Boolean]

# File lib/vagrant/plugin/v2/synced_folder.rb, line 59
def usable?(machine, raise_error=false)
end