Sha256: ca34c24d0f25301b2eb180968f61f6e8a51ddb0a63b2d827b8e92174c6ce0f1b

Contents?: true

Size: 1.15 KB

Versions: 2

Compression:

Stored size: 1.15 KB

Contents

require "openurl"

module IrusAnalytics
  class TrackerContextObjectBuilder
    attr_accessor :context_object
    def initialize
      @context_object = OpenURL::ContextObject.new
    end

    def set_event_datestamp(datetime)
      @context_object.admin.merge!("url_tim"=>{"label"=>"Usage event datestamp", "value"=>datetime})
    end
    
    def set_client_ip_address(ip_address)
      @context_object.admin.merge!("req_id"=>{"label"=>"Client IP address", "value"=>"urn:ip:#{ip_address}"})
    end

    def set_user_agent(user_agent)
      @context_object.admin.merge!("req_dat"=>{"label"=>"UserAgent", "value"=>user_agent})
    end

    def set_oai_identifier(identifier)
       @context_object.referent.set_metadata("artnum", identifier)
    end

    def set_file_url(url)
      @context_object.admin.merge!("svc_dat"=>{"label"=>"FileURL", "value"=>url})
    end

    def set_http_referer(referer)
      @context_object.admin.merge!("rfr_dat"=>{"label"=>"HTTP referer", "value"=>referer})
    end

    def set_source_repository(source_repository)
      @context_object.admin.merge!("rfr_id"=>{"label"=>"Source repository", "value"=>source_repository})
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
irus_analytics-0.0.2 lib/irus_analytics/tracker_context_object_builder.rb
irus_analytics-0.0.1 lib/irus_analytics/tracker_context_object_builder.rb