Sha256: 87d41c0ed7eef0bd47fbaad5daaad8b8b493ba547e40127fd1738e7cc8b804ec

Contents?: true

Size: 1.02 KB

Versions: 5

Compression:

Stored size: 1.02 KB

Contents

module DeviseCasAuthenticatable
  module SingleSignOut
    module Strategies
      class RailsCache < Base
        def store_session_id_for_index(session_index, session_id)
          logger.debug("Storing #{session_id} for index #{session_index}")
          Rails.cache.write(cache_key(session_index), session_id)
        end

        def find_session_id_by_index(session_index)
          sid = Rails.cache.read(cache_key(session_index))
          logger.debug("Found session id #{sid.inspect} for index #{session_index.inspect}")
          sid
        end
        
        def delete_session_index(session_index)
          logger.info("Deleting index #{session_index}")
          Rails.cache.delete(cache_key(session_index))
        end
        
        private
        
        def cache_key(session_index)
          "devise_cas_authenticatable:#{session_index}"
        end
      end
    end
  end
end

::DeviseCasAuthenticatable::SingleSignOut::Strategies.add( :rails_cache, DeviseCasAuthenticatable::SingleSignOut::Strategies::RailsCache )

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
devise_cloudfuji_authenticatable-1.0.5 lib/devise_cas_authenticatable/single_sign_out/strategies/rails_cache.rb
devise_cloudfuji_authenticatable-1.0.4 lib/devise_cas_authenticatable/single_sign_out/strategies/rails_cache.rb
devise_bushido_authenticatable-1.0.3 lib/devise_cas_authenticatable/single_sign_out/strategies/rails_cache.rb
devise_bushido_authenticatable-1.0.2 lib/devise_cas_authenticatable/single_sign_out/strategies/rails_cache.rb
devise_bushido_authenticatable-1.0.1 lib/devise_cas_authenticatable/single_sign_out/strategies/rails_cache.rb