Class: VagrantPlugins::Rimu::Actions::ConnectToRimu

Inherits:
AbstractAction show all
Defined in:
lib/vagrant-rimu/actions/connect_to_rimu.rb

Instance Method Summary collapse

Methods inherited from AbstractAction

#call

Constructor Details

#initialize(app, env) ⇒ ConnectToRimu

Returns a new instance of ConnectToRimu.



10
11
12
13
14
# File 'lib/vagrant-rimu/actions/connect_to_rimu.rb', line 10

def initialize(app, env)
  @app = app
  @config = env[:machine].provider_config
  @logger = Log4r::Logger.new('vagrant_rimu::action::connect_to_rimu')
end

Instance Method Details

#execute(env) ⇒ Object



16
17
18
19
20
21
22
23
24
25
# File 'lib/vagrant-rimu/actions/connect_to_rimu.rb', line 16

def execute(env)
  if env[:rimu_api].nil? || ! env[:rimu_api].respond_to?(:api_key)
    @logger.info('Connecting to Rimu api_url...')
    rimu = ::Rimu::RimuAPI.new({:api_url => @config.api_url, :api_key=> @config.api_key})
    env[:rimu_api] = rimu
  else
    @logger.info('Not creating a new client object...')
  end
  @app.call(env) unless @app.nil?
end