Sha256: df945ef284e73757022ec8008c508846ceceb249c2eab7c39f1dc17d433d583d

Contents?: true

Size: 670 Bytes

Versions: 3

Compression:

Stored size: 670 Bytes

Contents

module Controll
  module Focused
    module Enabler
      include Controll::Enabler

      def execute     
        action.perform
      end

      def self.assistant_methods *names
        delegate names, to: :assistant
      end

      protected

      # the action resulting from executing the flow. 
      # Should be an instance of either:
      # - Fallback
      # - Redirecter
      # - Renderer
      def action
        @action ||= flow.execute
      end    

      # @flowhandler ||= Controll::Flow::Master.new self
      def flow
        raise NotImplementedError, '#flow must return the Controll::Flow::Master instance to be used'
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
controll-0.3.2 lib/controll/focused/enabler.rb
controll-0.3.1 lib/controll/focused/enabler.rb
controll-0.3.0 lib/controll/focused/enabler.rb