class Pod::Command::X::Repo

Public Class Methods

new(argv) click to toggle source
Calls superclass method
# File lib/cocoapods-x/command/repo.rb, line 21
def initialize(argv)
    @name = argv.shift_argument
    @wipe_terminal = argv.flag?('terminal')
    super
end
options() click to toggle source
Calls superclass method
# File lib/cocoapods-x/command/repo.rb, line 15
def self.options
    [
        ['--terminal', 'Use terminal open pod']
    ].concat(super)
end

Public Instance Methods

run() click to toggle source
# File lib/cocoapods-x/command/repo.rb, line 27
def run
    pods = Pod::X::Sandbox::workspace::all_pods
    if !@name.nil? && @name.size > 0
        pods = pods.select{ |pod| pod.name == @name }
    end
    open_pods pods
end

Private Instance Methods

open_pods(pods) click to toggle source
# File lib/cocoapods-x/command/repo.rb, line 40
def open_pods pods
    return if (pods.nil? || pods.size <= 0)

    choices = Array::new
    pods.each do |pod|
        choice = pod.name
        unless pod.branch.nil?
            choice += " (#{pod.branch})".red
        end
        unless pod.project.nil?
            choice += " => project: #{pod.project}"
        end
        choice += " => path: #{pod.location_url}"
        choices << choice
    end

    begin
        if choices.size == 1
            index = 0
        else
            index = UI.choose_from_array(choices, 'Which item do you?')
        end
        url = pods[index].location_url
        open_url! url
    rescue => exception
        UI.puts '[!] Pod::X '.magenta + "#{exception}".red
    end

end
open_url!(url) click to toggle source
# File lib/cocoapods-x/command/repo.rb, line 70
def open_url! url 
    ter = sel_ter
    if @wipe_terminal && ter
        open! ['-a', ter, url]
    else
        open! [url]
    end
end
sel_ter() click to toggle source
# File lib/cocoapods-x/command/repo.rb, line 79
def sel_ter
    ters = ['/Applications/iTerm.app', '/System/Applications/Utilities/Terminal.app']
    ters.each do |t|
        path = Pathname(t)
        return path if path.exist?
    end
    nil
end