def generate_user_agent(extra_ids = [], agent_app = nil)
      agent_app ||= File.basename($0)
      agent_data = extra_ids
      agent_data << 'Common-Ruby/%s' % AdsCommon::ApiConfig::CLIENT_LIB_VERSION
      agent_data << 'GoogleAdsSavon/%s' % GoogleAdsSavon::VERSION
      ruby_engine = defined?(RUBY_ENGINE) ? RUBY_ENGINE : 'ruby'
      agent_data << [ruby_engine, RUBY_VERSION].join('/')
      agent_data << 'HTTPI/%s' % HTTPI::VERSION
      agent_data << HTTPI::Adapter.use.to_s
      agent_data += get_extra_user_agents()
      return '%s (%s)' % [agent_app, agent_data.join(', ')]
    end
def generate_user_agent(extra_ids = [], agent_app = nil)
      agent_app ||= File.basename($0)
      agent_data = extra_ids
      agent_data << 'Common-Ruby/%s' % AdsCommon::ApiConfig::CLIENT_LIB_VERSION
      agent_data << 'GoogleAdsSavon/%s' % GoogleAdsSavon::VERSION
      ruby_engine = defined?(RUBY_ENGINE) ? RUBY_ENGINE : 'ruby'
      agent_data << [ruby_engine, RUBY_VERSION].join('/')
      agent_data << 'HTTPI/%s' % HTTPI::VERSION
      agent_data << HTTPI::Adapter.use.to_s
      agent_data += get_extra_user_agents()
      return '%s (%s)' % [agent_app, agent_data.join(', ')]
    end
Generates string for UserAgent to put into headers.