Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Tree: fac373fca2
Fetching contributors…

Cannot retrieve contributors at this time

96 lines (84 sloc) 2.943 kB
require 'uri'
require 'cgi'
require 'logger'
require 'net/https'
require 'rexml/document'
begin
require 'active_support'
rescue LoadError
require 'rubygems'
require 'active_support'
end
$: << File.expand_path(File.dirname(__FILE__))
module CASClient
class CASException < Exception
end
# Customized logger for the client.
# This is useful if you're trying to do logging in Rails, since Rails'
# clean_logger.rb pretty much completely breaks the base Logger class.
class Logger < ::Logger
def initialize(logdev, shift_age = 0, shift_size = 1048576)
@default_formatter = Formatter.new
super
end
def format_message(severity, datetime, progrname, msg)
(@formatter || @default_formatter).call(severity, datetime, progname, msg)
end
def break
self << $/
end
class Formatter < ::Logger::Formatter
Format = "[%s#%d] %5s -- %s: %s\n"
def call(severity, time, progname, msg)
Format % [format_datetime(time), $$, severity, progname, msg2str(msg)]
end
end
end
# Wraps a real Logger. If no real Logger is set, then this wrapper
# will quietly swallow any logging calls.
class LoggerWrapper
def initialize(real_logger=nil)
set_logger(real_logger)
end
# Assign the 'real' Logger instance that this dummy instance wraps around.
def set_real_logger(real_logger)
@real_logger = real_logger
end
# Log using the appropriate method if we have a logger
# if we dont' have a logger, gracefully ignore.
def method_missing(name, *args)
if !@real_logger.nil? && @real_logger.respond_to?(name)
@real_logger.send(name, *args)
end
end
end
end
require 'casclient/tickets'
require 'casclient/responses'
require 'casclient/client'
require 'casclient/tickets/storage'
autoload :ACTIVE_RECORD_TICKET_STORE, 'casclient/tickets/storage/active_record_ticket_store'
if defined?(Rails)
require 'casclient/frameworks/rails/filter'
require 'casclient/frameworks/rails/cas_proxy_callback_controller'
end
# Detect legacy configuration and show appropriate error message
module CAS
module Filter
class << self
def method_missing(method, *args)
$stderr.puts "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
$stderr.puts
$stderr.puts "WARNING: Your RubyCAS-Client configuration is no longer valid!!"
$stderr.puts
$stderr.puts "For information on the new configuration format please see: "
$stderr.puts
$stderr.puts " http://rubycas-client.googlecode.com/svn/trunk/rubycas-client/README.txt"
$stderr.puts
$stderr.puts "After upgrading your configuration you should also clear your application's session store."
$stderr.puts
$stderr.puts "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
end
end
end
end
Jump to Line
Something went wrong with that request. Please try again.