Class: Reactor::Cm::Bridge
- Inherits:
-
Object
- Object
- Reactor::Cm::Bridge
- Defined in:
- lib/reactor/cm/bridge.rb
Class Method Summary collapse
-
.login_for(sessionId) ⇒ Object
credit goes to Anton.
Class Method Details
.login_for(sessionId) ⇒ Object
credit goes to Anton
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/reactor/cm/bridge.rb', line 6 def self.login_for(sessionId) old_username = Reactor::Configuration.xml_access[:username] Reactor::Configuration.xml_access[:username] = 'root' begin response = Reactor::Cm::XmlRequest.prepare do |xml| xml.tag!('licenseManager-logins') end.execute! login = nil result = response.xpath('//licenseManager-logins/listitem') result = [result] unless result.kind_of?(Array) result.each do |login_data_element| properties = deserialize_login_data(login_data_element.text) if properties[:sessionId] == sessionId && properties[:interface] == "X" login = properties[:login] break end end login rescue => e Rails.logger.error "Login to CM failed! #{e.class}: #{e.}" nil ensure Reactor::Configuration.xml_access[:username] = old_username end end |