class Pod::Command::Cache::List
Public Class Methods
new(argv)
click to toggle source
Calls superclass method
Pod::Command::Cache::new
# File lib/cocoapods/command/cache/list.rb, line 22 def initialize(argv) @pod_name = argv.shift_argument @short_output = argv.flag?('short') super end
options()
click to toggle source
Calls superclass method
Pod::Command::options
# File lib/cocoapods/command/cache/list.rb, line 16 def self.options [[ '--short', 'Only print the path relative to the cache root' ]].concat(super) end
Public Instance Methods
run()
click to toggle source
# File lib/cocoapods/command/cache/list.rb, line 28 def run UI.puts("$CACHE_ROOT: #{@cache.root}") if @short_output if @pod_name.nil? # Print all @cache.cache_descriptors_per_pod.each do |pod_name, cache_descriptors| print_pod_cache_infos(pod_name, cache_descriptors) end else # Print only for the requested pod cache_descriptors = @cache.cache_descriptors_per_pod[@pod_name] if cache_descriptors.nil? UI.notice("No cache for pod named #{@pod_name} found") else print_pod_cache_infos(@pod_name, cache_descriptors) end end end
Private Instance Methods
print_pod_cache_infos(pod_name, cache_descriptors)
click to toggle source
Prints the list of specs & pod cache dirs for a single pod name.
This output is valid YAML so it can be parsed with 3rd party tools
@param [Array<Hash>] cache_descriptors
The various infos about a pod cache. Keys are :spec_file, :version, :release and :slug
# File lib/cocoapods/command/cache/list.rb, line 54 def print_pod_cache_infos(pod_name, cache_descriptors) UI.puts "#{pod_name}:" cache_descriptors.each do |desc| if @short_output [:spec_file, :slug].each { |k| desc[k] = desc[k].relative_path_from(@cache.root) } end UI.puts(" - Version: #{desc[:version]}") UI.puts(" Type: #{pod_type(desc)}") UI.puts(" Spec: #{desc[:spec_file]}") UI.puts(" Pod: #{desc[:slug]}") end end