Sha256: 1da1e3a5a97638564a18ac6806c76833332f0647eb52763713aaffdbcb982d23

Contents?: true

Size: 963 Bytes

Versions: 24

Compression:

Stored size: 963 Bytes

Contents

module Blacklight
  module Rendering
    # The field rendering pipeline
    class Pipeline
      class_attribute :operations

      # The ordered list of pipeline operations
      self.operations = [HelperMethod, LinkToFacet, Microdata, Join]

      def initialize(values, config, document, context, options)
        @values = values
        @config = config
        @document = document
        @context = context
        @options = options
      end

      attr_reader :values, :config, :document, :context, :options

      def self.render(values, config, document, context, options)
        new(values, config, document, context, options).render
      end

      def render
        first, *rest = *stack
        first.new(values, config, document, context, options, rest).render
      end

      protected

        # Ordered list of operations, Terminator must be at the end.
        def stack
          operations + [Terminator]
        end
    end
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
blacklight-6.25.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.24.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.23.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.22.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.21.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.20.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.19.2 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.19.1 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.19.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.18.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.17.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.16.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.15.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.14.1 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.14.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.13.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.12.0 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.11.2 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.11.1 app/presenters/blacklight/rendering/pipeline.rb
blacklight-6.11.0 app/presenters/blacklight/rendering/pipeline.rb