Sha256: cacf97353357447947784691582bcaa19f15f4f6e6e7702d5eab45f61cb6db50

Contents?: true

Size: 840 Bytes

Versions: 4

Compression:

Stored size: 840 Bytes

Contents

module Voyager
  class Connection

    attr_reader :http_client

    def initialize(options = {})
      @http_client = options[:http_client] || HTTPClient.new
      @cookie_path = options[:cookie_path]

      set_cookie_path if @cookie_path


    end


    def request(url, options = {})
      request = @http_client.get_content(url, options)
      @http_client.cookie_manager.save_all_cookies(true) if @cookie_path
      return request
    end

    def clean_session!(server = "http://vetiver.cc.columbia.edu:7014")
      @http_client.get_content(server + "/vxws/SessionCleanupService")

    end

    private


    def set_cookie_path
      cookie_directory = File.dirname(@cookie_path)

      FileUtils.mkdir_p(cookie_directory) unless File.exists?(cookie_directory)

      @http_client.set_cookie_store(@cookie_path)


    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
voyager_api-0.3.11 lib/voyager_connection.rb
voyager_api-0.3.10 lib/voyager_connection.rb
voyager_api-0.3.9 lib/voyager_connection.rb
voyager_api-0.3.8 lib/voyager_connection.rb