module Scruber::Core::PageFormat

Public Class Methods

[](label) click to toggle source
# File lib/scruber/core/page_format.rb, line 23
def [](label)
  _registered_formats[label]
end
_registered_formats() click to toggle source
# File lib/scruber/core/page_format.rb, line 27
def _registered_formats
  @registered_formats ||= {}
end
add(label, claz) click to toggle source
# File lib/scruber/core/page_format.rb, line 15
def add(label, claz)
  unless claz.respond_to?(:process)
    raise NoMethodError, "process is not declared in the #{claz.inspect}"
  end

  _registered_formats[label] = claz
end
process(page, page_format) click to toggle source
# File lib/scruber/core/page_format.rb, line 5
def process(page, page_format)
  if page_format.nil?
    nil
  elsif _registered_formats.keys.include?(page_format.to_sym)
    _registered_formats[page_format.to_sym].process(page)
  else
    raise "Unsupported format"
  end
end