Sha256: b3a82e574f2b844c067c5c0c072a6ab9a6e0776cf961d17eb820424d267f7241

Contents?: true

Size: 1.02 KB

Versions: 6

Compression:

Stored size: 1.02 KB

Contents

module Vagrant
  module Action
    module Builtin
      # This class is intended to be used by the Action::Warden class for executing
      # action triggers before any given action.
      #
      # @param [Symbol] action_name - name to fire trigger on
      # @param [Vagrant::Plugin::V2::Triger] triggers - trigger object
      class AfterTriggerAction
        # @param [Symbol] action_name - The action class name to fire trigger on
        # @param [Vagrant::Plugin::V2::Triger] triggers - trigger object
        def initialize(app, env, action_name, triggers)
          @app         = app
          @env         = env
          @triggers    = triggers
          @action_name = action_name
        end

        def call(env)
          machine = env[:machine]
          machine_name = machine.name if machine

          @triggers.fire_triggers(@action_name, :after, machine_name, :action) if Vagrant::Util::Experimental.feature_enabled?("typed_triggers");

          # Carry on
          @app.call(env)
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
vagrant-unbundled-2.2.7.0 lib/vagrant/action/builtin/after_trigger.rb
vagrant-unbundled-2.2.6.2 lib/vagrant/action/builtin/after_trigger.rb
vagrant-unbundled-2.2.6.1 lib/vagrant/action/builtin/after_trigger.rb
vagrant-unbundled-2.2.6.0 lib/vagrant/action/builtin/after_trigger.rb
vagrant-unbundled-2.2.5.0 lib/vagrant/action/builtin/after_trigger.rb
vagrant-unbundled-2.2.4.0 lib/vagrant/action/builtin/after_trigger.rb