Class: Moko::Server

Inherits:
Object
  • Object
show all
Defined in:
lib/moko.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#itemsObject (readonly)

Returns the value of attribute items.



42
43
44
# File 'lib/moko.rb', line 42

def items
  @items
end

Class Method Details

.draw(&block) ⇒ Object



44
45
46
47
48
# File 'lib/moko.rb', line 44

def self.draw &block
    server = Server.new
    server.instance_eval(&block)
    server.render
end

Instance Method Details

#renderObject



57
58
59
60
61
62
63
64
65
66
67
# File 'lib/moko.rb', line 57

def render
    @items = @items.uniq
    touch_resources

    result = @items.reduce([]) do |result, item|
        result << ERB.new(@template).result(Item.new(item).get_binding)
    end
    resources = "[#{result.join(',')}]"

    File.open("conf/moko.conf.json", "w") { |f| f.write(resources) }
end

#touch_resourcesObject



51
52
53
54
55
# File 'lib/moko.rb', line 51

def touch_resources 
    @items.each do |item|
        FileUtils.touch "resources/#{item}.json"
    end
end