Sha256: 2ddbd906d3be31be6a46484657c55d74e36996c76781008c74960b281c0356e5

Contents?: true

Size: 534 Bytes

Versions: 20

Compression:

Stored size: 534 Bytes

Contents

module Timber
  module Contexts
    # The session context tracks the current session for the given user.
    #
    # @note This is tracked automatically with the `Integrations::Rack::SessionContext` rack
    #   middleware.
    class Session < Context
      @keyspace = :session

      attr_reader :id

      def initialize(attributes)
        @id = attributes[:id] || raise(ArgumentError.new(":id is required"))
      end

      def as_json(_options = {})
        {id: Timber::Util::Object.try(id, :to_s)}
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
timber-2.0.22 lib/timber/contexts/session.rb
timber-2.0.21 lib/timber/contexts/session.rb
timber-2.0.20 lib/timber/contexts/session.rb
timber-2.0.19 lib/timber/contexts/session.rb
timber-2.0.17 lib/timber/contexts/session.rb
timber-2.0.16 lib/timber/contexts/session.rb
timber-2.0.15 lib/timber/contexts/session.rb
timber-2.0.14 lib/timber/contexts/session.rb
timber-2.0.12 lib/timber/contexts/session.rb
timber-2.0.11 lib/timber/contexts/session.rb
timber-2.0.10 lib/timber/contexts/session.rb
timber-2.0.9 lib/timber/contexts/session.rb
timber-2.0.8 lib/timber/contexts/session.rb
timber-2.0.7 lib/timber/contexts/session.rb
timber-2.0.6 lib/timber/contexts/session.rb
timber-2.0.5 lib/timber/contexts/session.rb
timber-2.0.4 lib/timber/contexts/session.rb
timber-2.0.3 lib/timber/contexts/session.rb
timber-2.0.2 lib/timber/contexts/session.rb
timber-2.0.1 lib/timber/contexts/session.rb