class Planaria::Generator::Builder::Executer

Public Class Methods

new(name) click to toggle source
# File lib/planaria/generator/builder/executer.rb, line 4
def initialize(name)
  @name = name
end

Public Instance Methods

run() click to toggle source
# File lib/planaria/generator/builder/executer.rb, line 8
def run 
  yaml_files.each do |yml|
    file_name = yml.split("/").last.split(".").first
    yaml = ::YAML.load(File.read yml)

    yaml.each do |k, v|
      instance_variable_set("@#{k}", v)
    end

    create_directory file_name
    ::File.open "./#{@name}/#{file_name}/index.html", "w" do |file|
      file.write erb.result(binding)
    end
  end
end
yaml_files() click to toggle source
# File lib/planaria/generator/builder/executer.rb, line 24
def yaml_files
  ::Dir.glob "./#{@name}/yamls/*.yml"
end

Private Instance Methods

create_directory(file_name) click to toggle source
# File lib/planaria/generator/builder/executer.rb, line 34
def create_directory(file_name)
  FileUtils.mkdir_p "./#{@name}/#{file_name}"
end
erb() click to toggle source
# File lib/planaria/generator/builder/executer.rb, line 30
def erb
  ::ERB.new(File.read "./#{@name}/html/index.html.erb")
end