module NxtRegistry

Constants

VERSION

Public Instance Methods

recursive_registry(name, **options, &config) click to toggle source
# File lib/nxt_registry.rb, line 16
def recursive_registry(name, **options, &config)
  build_registry(RecursiveRegistry, name, **options, &config)
end
registry(name, **options, &config) click to toggle source
# File lib/nxt_registry.rb, line 12
def registry(name, **options, &config)
  build_registry(Registry, name, **options, &config)
end

Private Instance Methods

build_registry(registry_class, name, **options, &config) click to toggle source
# File lib/nxt_registry.rb, line 22
def build_registry(registry_class, name, **options, &config)
  registry = registries.resolve(name)

  if registry.present?
    if registry.configured
      return registry
    else
      raise_unconfigured_registry_accessed(name)
    end
  else
    registry = registry_class.new(name, **options, &config)
    registries.register(name, registry)
  end
end
raise_unconfigured_registry_accessed(name) click to toggle source
# File lib/nxt_registry.rb, line 37
def raise_unconfigured_registry_accessed(name)
  raise ArgumentError, "The registry #{name} must be configured before accessed!"
end
registries() click to toggle source
# File lib/nxt_registry.rb, line 41
def registries
  @registries ||= Registry.new(:registries)
end