From 957ef9b6b98b1dfa2c6ac49b4c400bb287c9dd75 Mon Sep 17 00:00:00 2001 From: Jack Nagel Date: Tue, 23 Dec 2014 01:04:44 -0500 Subject: [PATCH] Document download strategy interface --- Library/Homebrew/download_strategy.rb | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/Library/Homebrew/download_strategy.rb b/Library/Homebrew/download_strategy.rb index 8ae9e14479..1ca262e787 100644 --- a/Library/Homebrew/download_strategy.rb +++ b/Library/Homebrew/download_strategy.rb @@ -13,6 +13,23 @@ class AbstractDownloadStrategy @meta = resource.specs end + # Download and cache the resource as {#cached_location}. + def fetch + end + + # Unpack {#cached_location} into the current working directory. + def stage + end + + # The path to the cached file or directory associated with the resource. + def cached_location + end + + # Remove {#cached_location} and any other files associated with the resource + # from the cache. + def clear_cache + end + def expand_safe_system_args args args = args.dup args.each_with_index do |arg, ii| @@ -34,12 +51,6 @@ class AbstractDownloadStrategy safe_system(*expand_safe_system_args(args)) end - # All download strategies are expected to implement these methods - def fetch; end - def stage; end - def cached_location; end - def clear_cache; end - private def xzpath