class Skeletor::Skeletons::Skeleton
The Skeleton class provides a wrapper round the template file and handles loading it and validating it, as well as providing default values for any missing sections.
Constants
- SCHEMA_FILE
Defines the location to the required schema file for the templates
Public Class Methods
new(template)
click to toggle source
Creates a new Skeleton instance from ‘template`
# File lib/skeletor/skeletons/skeleton.rb, line 16 def initialize(template) begin @template = Loader.load_template(template) validator = Grayskull::Validator.new(@template,SCHEMA_FILE) results = validator.validate if results["result"] puts "Validated Successfully!" @directory_structure = @template["directory_structure"] || [] @tasks = @template["tasks"] || {} @includes = @template["includes"] || {} @path = @template["path"] else puts 'Validation Failed with ' + @errors.count.to_s + ' errors'; puts '' results["errors"].each{ |error| puts error } exit end rescue LoadError => e puts e.message exit end end
Public Instance Methods
directory_structure()
click to toggle source
Returns the directory structure section
# File lib/skeletor/skeletons/skeleton.rb, line 45 def directory_structure @directory_structure end
includes()
click to toggle source
Returns the includes section
# File lib/skeletor/skeletons/skeleton.rb, line 55 def includes @includes end
path()
click to toggle source
Returns the template path
# File lib/skeletor/skeletons/skeleton.rb, line 60 def path @path end
tasks()
click to toggle source
Returns the tasks section
# File lib/skeletor/skeletons/skeleton.rb, line 50 def tasks @tasks end