Class: Epodder::Verb

Inherits:
Eclass show all
Defined in:
lib/verb/verb.rb

Direct Known Subclasses

Add, Catchup, Clean, Download, Fetch, List_podcast, Remove, Update

Instance Method Summary collapse

Methods inherited from Eclass

#initialize

Constructor Details

This class inherits a constructor from Epodder::Eclass

Instance Method Details

#add_command(cmd, args) ⇒ Object



8
9
10
11
12
13
# File 'lib/verb/verb.rb', line 8

def add_command (cmd, args)
    command = CmdParse::Command.new(@verb.name,false,false)
    command.short_desc = @verb.description
    command.set_execution_block(&@verb.block)
    cmd.add_command(command)
end

#each_argument(args, &block) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
# File 'lib/verb/verb.rb', line 23

def each_argument args, &block
    podcasts = nil
    if args.empty?
        podcasts = Podcast.all
    else
        podcasts = args.map {|id| Podcast.get(id.to_i)}
    end
    podcasts.each do |podcast|
        yield podcast
    end
end

#lookup_args(args) ⇒ Object



15
16
17
18
19
20
21
# File 'lib/verb/verb.rb', line 15

def lookup_args args
    if args.empty?
        podcasts = Podcast.all
    else
        podcasts = args.map {|id| Podcast.get(id.to_i)}
    end
end

#verb_structObject



3
4
5
6
# File 'lib/verb/verb.rb', line 3

def verb_struct
    super
    Struct.new(:name,:description,:block)
end