class Knish::Writer

Attributes

config[R]

Public Class Methods

new(config) click to toggle source
# File lib/knish/writer.rb, line 5
def initialize(config)
  @config = config
end

Public Instance Methods

build_directories(directories) click to toggle source
# File lib/knish/writer.rb, line 9
def build_directories(directories)
  make_root
  directories.each {|dir| make_directory(dir) }
end
save_json(attributes) click to toggle source
# File lib/knish/writer.rb, line 14
def save_json(attributes)
  make_root
  write_file(config.data_filename, attributes.to_json)
end
save_markdown(attributes) click to toggle source
# File lib/knish/writer.rb, line 19
def save_markdown(attributes)
  make_root
  attributes.each do |key, data|
    write_file("_#{key}.md", data)
  end
end

Private Instance Methods

make_directory(dir) click to toggle source
# File lib/knish/writer.rb, line 36
def make_directory(dir)
  FileUtils.mkdir_p("#{config.model_root}/#{dir}") unless File.exist?("#{config.model_root}/#{dir}")
end
make_root() click to toggle source
# File lib/knish/writer.rb, line 32
def make_root
  FileUtils.mkdir_p(config.model_root) unless File.exist?(config.model_root)
end
write_file(filename, data) click to toggle source
# File lib/knish/writer.rb, line 28
def write_file(filename, data)
  File.open("#{config.model_root}/#{filename}", 'w') { |f| f.write(data) }
end