Sha256: c155df096de2d70c7ef499678648d5220e96d8b384cb1d6c098b70c53c0f2b54
Contents?: true
Size: 854 Bytes
Versions: 1
Compression:
Stored size: 854 Bytes
Contents
module Spigot module Map class Service attr_reader :name attr_accessor :resources def initialize(name) @name = name.to_s.underscore.to_sym @resources = [] end def self.service(name, &block) service = find(name) || Spigot::Map::Service.new(name) service.instance_eval(&block) if block_given? current_map.update(name, service) end def self.find(name) current_map.service(name) end def resource(name, &block) resources << Spigot::Map::Resource.new(name, &block) end def reset @resources = [] end def [](name) resources.detect{|r| r.instance_variable_get(:@name).to_sym == name.to_sym} end private def self.current_map Spigot.config.map end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
spigot-0.2.0 | lib/spigot/map/service.rb |