Class: Skyrocket::ProcessorFactory

Inherits:
Object
  • Object
show all
Defined in:
lib/skyrocket/processor_factory.rb

Constant Summary collapse

PROCESSORS =
[ CoffeescriptProcessor, ErbProcessor, JavascriptProcessor, LessProcessor, EmptyProcessor ]

Instance Method Summary collapse

Instance Method Details

#post_process_name(filename) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/skyrocket/processor_factory.rb', line 13

def post_process_name(filename)
  if process?(filename)
    processor(filename).post_process_name(filename)
  else
    filename
  end
end

#process?(filename) ⇒ Boolean



6
7
8
9
10
11
# File 'lib/skyrocket/processor_factory.rb', line 6

def process?(filename)
  PROCESSORS.each do |processor|
    return true if processor.new.process?(filename)
  end
  return false
end

#processor(filename) ⇒ Object



21
22
23
24
25
26
# File 'lib/skyrocket/processor_factory.rb', line 21

def processor(filename)
  PROCESSORS.each do |processor|
    return processor.new if processor.new.process?(filename)
  end
  raise NoValidProcessorError
end