def sync!(mirror = false, concurrency_type = false, concurrency_level = 2)
block = Proc.new { |relative_path| sync_file relative_path, mirror }
case concurrency_type
when FalseClass
all_file_names.each &block
when :threads
Parallel.each all_file_names,
:in_threads => concurrency_level, &block
when :processes
Parallel.each all_file_names,
:in_processes => concurrency_level, &block
else
raise Errors::Syncer::Cloud::ConfigurationError,
"Unknown concurrency_type setting: #{ concurrency_type.inspect }"
end
end