class DeviseCasAuthenticatable::MemcacheChecker

Attributes

rails_configuration[R]

Public Class Methods

new(rails_configuration) click to toggle source
# File lib/devise_cas_authenticatable/memcache_checker.rb, line 8
def initialize(rails_configuration)
  @rails_configuration = rails_configuration
end

Public Instance Methods

alive?() click to toggle source
# File lib/devise_cas_authenticatable/memcache_checker.rb, line 16
def alive?
  memcache_servers = rails_configuration.session_options[:memcache_server] || ["127.0.0.1:11211"]
  memcache_servers.each do |server|
    host, port = server.split(":")
    begin
      try_connect host, port

      return true
    rescue Errno::ECONNREFUSED, Timeout::Error
      return false
    end
  end
end
session_store_memcache?() click to toggle source
# File lib/devise_cas_authenticatable/memcache_checker.rb, line 12
def session_store_memcache?
  !!(session_store_class.name =~ /memcache/i)
end
try_connect(host, port) click to toggle source
# File lib/devise_cas_authenticatable/memcache_checker.rb, line 30
def try_connect(host, port)
  Timeout::timeout(1) do
    TCPSocket.open(host, port)
  end
end

Private Instance Methods

session_store_class() click to toggle source
# File lib/devise_cas_authenticatable/memcache_checker.rb, line 38
def session_store_class
  @session_store_class ||= DeviseCasAuthenticatable::SessionStoreIdentifier.new.session_store_class
end