Sha256: 7cffee4d5b618a32e549408cbfa13e0363e5bf789400505b1949feabb07c4fde

Contents?: true

Size: 692 Bytes

Versions: 5

Compression:

Stored size: 692 Bytes

Contents

module Helpstation
  class Evaluator
    include AbstractType

    # Perform the usecase
    #
    # @param [Substation::Request] request
    #   the request passed to the registered action
    #
    # @return [Substation::Response]
    #   the response returned when calling the action
    #
    # @api private
    def self.call(request)
      new(request).call
    end

    def initialize(request)
      @request = request
      @env     = request.env
      @input   = request.input
    end

    abstract_method :call

    private

    attr_reader :request
    attr_reader :env
    attr_reader :input

    def error(data)
      @request.error(success: false, error: data)
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
helpstation-0.1.4 lib/helpstation/evaluator.rb
helpstation-0.1.3 lib/helpstation/evaluator.rb
helpstation-0.1.2 lib/helpstation/evaluator.rb
helpstation-0.1.0 lib/helpstation/evaluator.rb
helpstation-0.0.1 lib/helpstation/evaluator.rb