class Stargate::Server::Registry
Internal: Registry
contains list of versions, each with defined served classes.
Example:
Stargate::Server::Registry.new do version 1 do serve MyClass do class_methods :foo, :bar attributes :foo, :bar, :baz end end end
Attributes
versions[R]
Public: List of registry versions.
Public Class Methods
new(&block)
click to toggle source
Public: Constructor.
# File lib/stargate/server/registry.rb, line 23 def initialize(&block) @versions = {} instance_eval(&block) if block_given? end
Public Instance Methods
[](version)
click to toggle source
Public: Returns given registry version.
# File lib/stargate/server/registry.rb, line 34 def [](version) versions[version] or raise RegistryVersionUndefinedError, "No such registry version: #{version}" end
each(&block)
click to toggle source
# File lib/stargate/server/registry.rb, line 38 def each(&block) versions.each(&block) end
version(number, &block)
click to toggle source
Public: Defines new version. Executes with internal DSL.
# File lib/stargate/server/registry.rb, line 29 def version(number, &block) @versions[number] ||= RegistryVersion.new(number, &block) end