Sha256: 0adfe22e17923f182b286615d042854ce75323d24e1a6e09fd79b22733d5f23d

Contents?: true

Size: 727 Bytes

Versions: 24

Compression:

Stored size: 727 Bytes

Contents

module Rasti
  class App
    class Job < Asynchronic::Job

      class DefaultWrapper

        def self.call(environment, session, params)
          yield
        end

      end

      extend ClassConfig

      attr_config :environment

      def call
        raise "Undefined #{self.class.name}.environment" unless self.class.environment

        wrapper = params[:wrapper] || DefaultWrapper

        session = params[:session]
        session.job_id = @process.id

        wrapper.call self.class.environment, session, params do
          interaction = params[:interaction].new self.class.environment, session
          interaction.call params[:interaction].build_form params[:params]
        end
      end

    end
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
rasti-app-11.0.0 lib/rasti/app/job.rb
rasti-app-10.0.1 lib/rasti/app/job.rb
rasti-app-10.0.0 lib/rasti/app/job.rb
rasti-app-9.0.0 lib/rasti/app/job.rb
rasti-app-8.0.1 lib/rasti/app/job.rb
rasti-app-8.0.0 lib/rasti/app/job.rb
rasti-app-7.1.1 lib/rasti/app/job.rb
rasti-app-7.1.0 lib/rasti/app/job.rb
rasti-app-7.0.2 lib/rasti/app/job.rb
rasti-app-7.0.1 lib/rasti/app/job.rb
rasti-app-7.0.0 lib/rasti/app/job.rb
rasti-app-6.0.1 lib/rasti/app/job.rb
rasti-app-6.0.0 lib/rasti/app/job.rb
rasti-app-5.0.0 lib/rasti/app/job.rb
rasti-app-4.0.2 lib/rasti/app/job.rb
rasti-app-4.0.1 lib/rasti/app/job.rb
rasti-app-4.0.0 lib/rasti/app/job.rb
rasti-app-3.0.0 lib/rasti/app/job.rb
rasti-app-2.2.4 lib/rasti/app/job.rb
rasti-app-2.2.3 lib/rasti/app/job.rb