Sha256: 2bec72bc3e4b8987c123f52ffbd0875e7333a6352a72bb7c6584d0d9beb7b77a

Contents?: true

Size: 772 Bytes

Versions: 6

Compression:

Stored size: 772 Bytes

Contents

module CampactUserService
  class Session
    attr_reader :client, :session_cookie_name, :session_id

    def initialize(client, session_id, session_cookie_name)
      @client = client
      @session_id = session_id
      @session_cookie_name = session_cookie_name
    end

    def user_id
      session["user_id"]
    end

    def has_soft_login_session?
      session["permission_level"] == 'limited'
    end

    def has_hard_login_session?
      session["permission_level"] == 'full'
    end

    def destroy
      client.delete_request('/v1/sessions', cookies: {session_cookie_name => session_id})
    end

    private

    def session
      @session_info ||= (client.get_request('/v1/sessions', cookies: {session_cookie_name => session_id}) || {})
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
campact_user_service-4.0.0 lib/campact_user_service/session.rb
campact_user_service-3.1.1 lib/campact_user_service/session.rb
campact_user_service-3.1.0 lib/campact_user_service/session.rb
campact_user_service-3.0.1 lib/campact_user_service/session.rb
campact_user_service-3.0.0 lib/campact_user_service/session.rb
campact_user_service-2.1.0 lib/campact_user_service/session.rb