def handleRequest(context)
session = nil
exception = nil
@statistics.hit
mylog = Logger['iowa_log']
@sessionLock.synchronize do
unless context.sessionID.to_s != ''
context.sessionID = randomSession
begin
@sessions[context.sessionID] = Session.newSession
@sessions[context.sessionID].application = self
rescue Exception => exception
end
end
begin
session = @sessions[context.sessionID] unless exception
rescue Exception => exception
end
end
if exception
throw :session_error,exception
end
if session
session.handleRequest(context)
else
begin
invalidSession(context)
rescue Exception => exception
end
if exception
throw :session_error,exception
end
end
end