Sha256: 041a2be7b17c9980f66971f5d70db24b6b0f76857f95eafa4c0ad0d6a6bdddd5

Contents?: true

Size: 1.03 KB

Versions: 1

Compression:

Stored size: 1.03 KB

Contents

require 'rest_client'

module I2X
	class Client

		##
		# => Load configuration properties from client/script code
		#
		def initialize config
			begin
				@config = config
				I2X::Config.set_access_token @config[:server][:api_key]
				I2X::Config.set_host @config[:server][:host]
				p '[i2x] loaded configuration'
			rescue Exception => e
				puts "[i2x] Failed to load configuration: #{e}"
			end
			
		end

		##
		# => Validate API key.
		#
		def validate
			begin
				p '[i2x] launching validation.'
				out = RestClient.post "#{I2X::Config.host}fluxcapacitor/validate_key.json", {:access_token => I2X::Config.access_token}	
				response = {:status => 100, :response => out.to_str}
			rescue Exception => e
				p "[i2x] Failed validation: #{e}"
			end
			response
		end

		##
		# => Start processing agents from configuration properties.
		#
		def process
			begin
				@config[:agents].each do |agent|
					a = I2X::Agent.new agent
					a.execute
				end
			rescue Exception => e
				p "[i2x] Failed agent processing: #{e}"
			end
		end
	end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
i2x-0.0.5 lib/i2x/client.rb