class U3d::StandardPackageDownloader

Public Instance Methods

destination_and_url_for(package, definition) click to toggle source
# File lib/u3d/downloader.rb, line 149
def destination_and_url_for(package, definition)
  final_url = url_for(package, definition)

  dir = File.join(Downloader.download_directory, definition.version)
  Utils.ensure_dir(dir)

  file_name = if (language_match = UNITY_LANGUAGE_FILE_REGEX.match(final_url))
                language_match[1] + '.po' # Unity uses PO (Portable object files) for localization
              elsif (module_match = UNITY_MODULE_FILE_REGEX.match(final_url))
                module_match[1]
              else
                raise "Unable to download file at #{final_url}. Please report it to the u3d issues on Github: https://github.com/DragonBox/u3d/issues/new"
              end

  destination = File.expand_path(file_name, dir)

  [destination, final_url]
end
destination_for(package, definition) click to toggle source

for backward compatibility

# File lib/u3d/downloader.rb, line 145
def destination_for(package, definition)
  destination_and_url_for(package, definition)[0]
end
url_for(package, definition) click to toggle source
# File lib/u3d/downloader.rb, line 168
def url_for(package, definition)
  url = definition[package].url
  if url
    if url =~ /^http/
      Utils.final_url(url)
    else
      definition.url + url
    end
  else
    definition.url
  end
end