class Maschine::Generator

Public Class Methods

new(project_path=nil) click to toggle source
# File lib/maschine-generator/generator.rb, line 19
def initialize(project_path=nil)
    @gemPath = File.expand_path File.dirname(__FILE__) + "/../.."
    configFile = File.join(@gemPath, 'config.yaml')
     
    raise "config.yaml does not exists" if ! File.exists?(configFile)
    @config = YAML.load_file(configFile)            
    @projectPath = ENV['MASCHINE_PROJECT_DIRECTORY']            
    @logger = Logger.new(STDOUT)
    @logger.level = Logger::DEBUG
    # @logger.debug @projectPath
    # @logger.debug @gemPath
    @apikey = ENV['MASCHINE_API_KEY']
end

Public Instance Methods

apikey() click to toggle source
# File lib/maschine-generator/generator.rb, line 33
def apikey
    return @apikey
end
copyRootFiles() click to toggle source
# File lib/maschine-generator/generator.rb, line 75
def copyRootFiles
    rootFiles.each do |file|
        if File.exists?(file)
            FileUtils.cp(file, @projectPath)
        else
            @logger.error(file)    
        end    
    end
end
copyTheme() click to toggle source
# File lib/maschine-generator/generator.rb, line 57
def copyTheme
    import = @config['maschine']['theme']['import']
    importDir =  File.join(@projectPath, import['directory'])
    import['process'].each do |directory|
        from = File.join(importDir, directory['directory']['from'])
        to = File.join(@projectPath, directory['directory']['to'])
        FileUtils.cp_r from, to
    end            
end
createDirs() click to toggle source
# File lib/maschine-generator/generator.rb, line 37
def createDirs            
    @@scaffoldDirs.each do |directory|
        dir = File.join(@projectPath, directory)                
        FileUtils.mkdir_p(File.join(@projectPath, directory)) if !Dir.exists?(dir)
    end
end
dirs() click to toggle source
# File lib/maschine-generator/generator.rb, line 44
def dirs
    dir = Array.new
    @@scaffoldDirs.each do |directory|                
        d = File.join(@projectPath, directory)                
        dir << d 
    end
    return dir
end
erb() click to toggle source
# File lib/maschine-generator/generator.rb, line 53
def erb
    @erb ||= ERBRenderer.new(self)
end
execute() click to toggle source
# File lib/maschine-generator/generator.rb, line 88
def execute
    @logger.debug "create directories"
    self.createDirs
    # TODO: hole das theme vom server
    @logger.debug "copy theme"
    self.copyTheme
    @logger.debug "copy root files"
end
processConfigFile() click to toggle source
# File lib/maschine-generator/generator.rb, line 85
def processConfigFile
end
rootFiles() click to toggle source
# File lib/maschine-generator/generator.rb, line 67
def rootFiles
    files = Array.new
    @@rootCopyFiles.each do |file| 
        files.push(File.join(@gemPath, file))                            
    end
    return files
end