class Genit::BuilderBase

A base class for all builders.

Public Class Methods

get_number_of_base_dirs(filename) click to toggle source
# File lib/genit/builders/builder_base.rb, line 28
def BuilderBase.get_number_of_base_dirs filename
  return 0 if filename =~ URI::regexp
  
  dirs = File.dirname filename
  return 0 if dirs == '.'
  
  return dirs.split('/').size
end
new(doc) click to toggle source

Public: Constructor.

doc - A Nokogiri::XML::Document

# File lib/genit/builders/builder_base.rb, line 12
def initialize doc
  raise RuntimeError if doc.nil?
  @document = doc
end

Public Instance Methods

build(page_name, elements) click to toggle source
# File lib/genit/builders/builder_base.rb, line 22
def build page_name, elements
  @page_name = page_name
  elements.each {|elem| update elem }
  @document
end
build_for_page(page_name) click to toggle source

Define me in child

# File lib/genit/builders/builder_base.rb, line 18
def build_for_page page_name
  raise NotImplementedError
end

Private Instance Methods

make_relative(nb) click to toggle source
# File lib/genit/builders/builder_base.rb, line 39
def make_relative nb
  nb.times { @path = '../' + @path }
end