Object
The base class of instantiation pipeline elements. All subclasses MUST implement is the # method, to define the logic that instances of that pipeline element should perform when invoked.
The priority of this element, used to determine ordering. Higher ordered elements are invoked before lower-ordered elements.
Create a new element instance with the given name and priority. This will call #, so that subclasses only need to implement that method if they have any initialization logic to perform.
# File lib/needle/pipeline/element.rb, line 59 59: def initialize( point, name=nil, priority=nil, options={} ) 60: @service_point = point 61: @name, @priority = name, ( priority || self.class.default_priority ) 62: @options = options 63: initialize_element 64: end
Orders elements by their priority.
# File lib/needle/pipeline/element.rb, line 72 72: def <=>( element ) 73: priority <=> element.priority 74: end
Invoke this element’s logic.
# File lib/needle/pipeline/element.rb, line 77 77: def call( *args ) 78: raise NotImplementedError 79: end
Invoked by the constructor to perform any subclass-specific initialization logic.
# File lib/needle/pipeline/element.rb, line 68 68: def initialize_element 69: end
Invoked by Pipeline::Collection#reset!. Subclasses of Element that save any kind of state should override this method to clear that state on demand.
# File lib/needle/pipeline/element.rb, line 84 84: def reset! 85: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.