Class: Wurk::Middleware::Chain::Entry

Inherits:
Object
  • Object
show all
Defined in:
lib/wurk/middleware/chain.rb

Overview

Holds the klass + ctor args for a registered middleware. Defers instantiation until ‘retrieve` runs so each job gets a fresh object.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(klass, *args) ⇒ Entry

Returns a new instance of Entry.



115
116
117
118
# File 'lib/wurk/middleware/chain.rb', line 115

def initialize(klass, *args)
  @klass = klass
  @args = args
end

Instance Attribute Details

#klassObject (readonly)

Returns the value of attribute klass.



113
114
115
# File 'lib/wurk/middleware/chain.rb', line 113

def klass
  @klass
end

Instance Method Details

#make_new(config = nil) ⇒ Object



120
121
122
123
124
# File 'lib/wurk/middleware/chain.rb', line 120

def make_new(config = nil)
  instance = @klass.new(*@args)
  instance.config = config if config && instance.respond_to?(:config=)
  instance
end