Module: Undertow::Registry

Defined in:
lib/undertow/registry.rb

Overview

Holds the declared dependency configuration for every tracked model. Populated at class load time via the DSL (undertow_on_drain, undertow_skip, undertow_depends_on); consumed by the Railtie and DrainJob.

Defined Under Namespace

Classes: ModelConfig

Constant Summary collapse

MODELS_KEY =
'undertow:pending:models'

Class Method Summary collapse

Class Method Details

.[](model_name) ⇒ Object



33
34
35
# File 'lib/undertow/registry.rb', line 33

def [](model_name)
  all[model_name]
end

.allObject



29
30
31
# File 'lib/undertow/registry.rb', line 29

def all
  @all ||= {}
end

.deleted_key(model_name) ⇒ Object



42
# File 'lib/undertow/registry.rb', line 42

def deleted_key(model_name) = "undertow:deleted:#{model_name}"

.key?(model_name) ⇒ Boolean

Returns:

  • (Boolean)


37
38
39
# File 'lib/undertow/registry.rb', line 37

def key?(model_name)
  all.key?(model_name)
end

.pending_key(model_name) ⇒ Object



41
# File 'lib/undertow/registry.rb', line 41

def pending_key(model_name) = "undertow:pending:#{model_name}"

.register(model_name) ⇒ Object

Returns an existing config or creates a new one for model_name. Called by each DSL macro the first time it fires on a model.



25
26
27
# File 'lib/undertow/registry.rb', line 25

def register(model_name)
  all[model_name] ||= ModelConfig.new(model_name)
end