Class: Itinerary::ListTool

Inherits:
Tool
  • Object
show all
Defined in:
lib/itinerary/tools/list.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Tool

find_tool, inherited, #initialize, tools

Constructor Details

This class inherits a constructor from Itinerary::Tool

Class Method Details

.nameObject



4
5
6
# File 'lib/itinerary/tools/list.rb', line 4

def self.name
  'list'
end

Instance Method Details

#parse(args) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/itinerary/tools/list.rb', line 8

def parse(args)
  @view_class = View::Text
  @params = {}
  while args.first =~ /^-(\w+)$/
    args.shift
    case $1
    when 't'
      @view_class = View::Tab
    when 'h'
      @view_class = View::HTML
    when 'k'
      @view_class = View::KML
    when 'f'
      key, value = args.shift.split('=', 2)
      @params[key] = value
    end
  end
  @params[:entries] = args.join(',') unless args.empty?
end

#runObject



28
29
30
31
32
# File 'lib/itinerary/tools/list.rb', line 28

def run
  filters, options = @itinerary.parse_params(@params)
  view = @view_class.new(@itinerary, options)
  print view.render(@itinerary.entries(filters))
end