Class: Vagrant::Zscp::SyncedFolder
- Inherits:
-
Object
- Object
- Vagrant::Zscp::SyncedFolder
- Defined in:
- lib/vagrant/zscp/synced_folder.rb
Instance Method Summary collapse
- #enable(machine, folders, opts) ⇒ Object
- #foreach_folder(folders, &block) ⇒ Object
-
#initialize(*args) ⇒ SyncedFolder
constructor
A new instance of SyncedFolder.
- #prepare(machine, folders, opts) ⇒ Object
- #usable?(machine, raise_error = false) ⇒ Boolean
Constructor Details
#initialize(*args) ⇒ SyncedFolder
8 9 10 11 |
# File 'lib/vagrant/zscp/synced_folder.rb', line 8 def initialize(*args) super @logger = Log4r::Logger.new("vagrant::synced_folders::zscp") end |
Instance Method Details
#enable(machine, folders, opts) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/vagrant/zscp/synced_folder.rb', line 21 def enable(machine, folders, opts) ssh_info = machine.ssh_info # Clean up every synced folder first foreach_folder(folders) do |folder_opts| ZscpHelper.cleanup(machine, ssh_info, folder_opts) end # Clean up every synced folder first foreach_folder(folders) do |folder_opts| ZscpHelper.scp(machine, ssh_info, folder_opts) end end |
#foreach_folder(folders, &block) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/vagrant/zscp/synced_folder.rb', line 35 def foreach_folder(folders, &block) sync_threads = [] folders.each do |id, folder_opts| sync_threads << Thread.new(folder_opts) do |folder_opts| block.call(folder_opts) end end sync_threads.each do |t| t.join end end |
#prepare(machine, folders, opts) ⇒ Object
17 18 19 |
# File 'lib/vagrant/zscp/synced_folder.rb', line 17 def prepare(machine, folders, opts) # Nothing is necessary to do before VM boot. end |
#usable?(machine, raise_error = false) ⇒ Boolean
13 14 15 |
# File 'lib/vagrant/zscp/synced_folder.rb', line 13 def usable?(machine, raise_error=false) return true end |