lib/vagrant/action/environment.rb in vagrant-0.8.10 vs lib/vagrant/action/environment.rb in vagrant-0.9.0
- old
+ new
@@ -1,50 +1,12 @@
+require 'vagrant/util/hash_with_indifferent_access'
+
module Vagrant
- class Action
+ module Action
# Represents an action environment which is what is passed
# to the `call` method of each action. This environment contains
# some helper methods for accessing the environment as well
# as being a hash, to store any additional options.
class Environment < Util::HashWithIndifferentAccess
- # The {Vagrant::Environment} object represented by this
- # action environment.
- attr_reader :env
-
- def initialize(env)
- super() do |h,k|
- # By default, try to find the key as a method on the
- # environment. Gross eval use here.
- begin
- value = eval("h.env.#{k}")
- h[k] = value
- rescue Exception
- nil
- end
- end
-
- @env = env
- @interrupted = false
- end
-
- # Returns a UI object from the environment
- def ui
- env.ui
- end
-
- # Marks an environment as interrupted (by an outside signal or
- # anything). This will trigger any middleware sequences using this
- # environment to halt. This is automatically set by {Action} when
- # a SIGINT is captured.
- def interrupt!
- @interrupted = true
- end
-
- # Returns a boolean denoting if environment has been interrupted
- # with a SIGINT.
- #
- # @return [Bool]
- def interrupted?
- !!@interrupted
- end
end
end
end