From 91a2eb8aadbb5a30972b14cd3fe6e140a0fd94f7 Mon Sep 17 00:00:00 2001 From: William Ma Date: Mon, 10 Aug 2020 12:23:32 -0400 Subject: [PATCH] --cache: Use convenience methods for loading formulae and casks --- Library/Homebrew/cmd/--cache.rb | 40 +++++++++++++++------------------ 1 file changed, 18 insertions(+), 22 deletions(-) diff --git a/Library/Homebrew/cmd/--cache.rb b/Library/Homebrew/cmd/--cache.rb index 377e7dc49a..aedd583860 100644 --- a/Library/Homebrew/cmd/--cache.rb +++ b/Library/Homebrew/cmd/--cache.rb @@ -2,8 +2,7 @@ require "fetch" require "cli/parser" -require "cask/cmd" -require "cask/cask_loader" +require "cask/download" module Homebrew extend Fetch @@ -37,29 +36,27 @@ module Homebrew if args.no_named? puts HOMEBREW_CACHE - elsif args.formula? - args.named.each do |name| - print_formula_cache name, args: args - end + return + end + + formulae_or_casks = if args.formula? + args.formulae elsif args.cask? - args.named.each do |name| - print_cask_cache name - end + args.loaded_casks else - args.named.each do |name| - print_formula_cache name, args: args - rescue FormulaUnavailableError - begin - print_cask_cache name - rescue Cask::CaskUnavailableError - odie "No available formula or cask with the name \"#{name}\"" - end + args.formulae_and_casks + end + + formulae_or_casks.each do |formula_or_cask| + if formula_or_cask.is_a? Formula + print_formula_cache formula_or_cask, args: args + else + print_cask_cache formula_or_cask end end end - def print_formula_cache(name, args:) - formula = Formulary.factory(name, force_bottle: args.force_bottle?, flags: args.flags_only) + def print_formula_cache(formula, args:) if fetch_bottle?(formula, args: args) puts formula.bottle.cached_download else @@ -67,8 +64,7 @@ module Homebrew end end - def print_cask_cache(name) - cask = Cask::CaskLoader.load name - puts Cask::Cmd::Cache.cached_location(cask) + def print_cask_cache(cask) + puts Cask::Download.new(cask).downloader.cached_location end end