class MovieMasher::Chain

base for all filter chains

Public Class Methods

new(input = nil, job_input = nil) click to toggle source
Calls superclass method
# File lib/graph.rb, line 139
def initialize(input = nil, job_input = nil)
  super()
  @input = input
  @job_input = job_input
  @filters = []
  # puts "Chain calling #initialize_filters"
  initialize_filters
end

Public Instance Methods

<<(filter) click to toggle source
# File lib/graph.rb, line 152
def <<(filter)
  @filters << filter
end
chain_command(scope) click to toggle source
# File lib/graph.rb, line 128
def chain_command(scope)
  cmds = @filters.map do |f|
    f.send(f.is_a?(Filter) ? :filter_command : :chain_command, scope)
  end
  __join_commands(cmds)
end
chain_labels(label, index) click to toggle source
# File lib/graph.rb, line 135
def chain_labels(label, index)
  "[#{label}#{index == 1 ? '' : 'ed'}#{index - 1}][#{label}#{index}]"
end
initialize_filters() click to toggle source
# File lib/graph.rb, line 148
def initialize_filters
  # override me
end