0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 package org.eclipse.jetty.server.session;
0020
0021 import javax.servlet.ServletException;
0022 import javax.servlet.http.HttpServletRequest;
0023 import javax.servlet.http.HttpServletResponse;
0024 import java.io.IOException;
0025
0026 import org.eclipse.jetty.server.Request;
0027 import org.eclipse.jetty.server.SessionManager;
0028 import org.eclipse.jetty.server.handler.ScopedHandler;
0029
0030
0031
0032
0033
0034 public class SessionHandler extends ScopedHandler {
0035 private SessionManager _sessionManager;
0036
0037 public SessionHandler() {
0038 }
0039
0040
0041
0042
0043
0044 public SessionHandler(SessionManager manager) {
0045 setSessionManager(manager);
0046 }
0047
0048
0049
0050
0051 public SessionManager getSessionManager() {
0052 return _sessionManager;
0053 }
0054
0055
0056
0057
0058
0059 public void setSessionManager(SessionManager sessionManager) {
0060 if (isStarted()) {
0061 throw new IllegalStateException();
0062 }
0063 if (sessionManager != null) {
0064 updateBean(_sessionManager,sessionManager);
0065 _sessionManager=sessionManager;
0066 }
0067 }
0068
0069
0070
0071
0072
0073 @Override
0074 public void doHandle(String target, Request baseRequest, HttpServletRequest request,
0075 HttpServletResponse response) throws IOException, ServletException {
0076
0077 if (_nextScope != null && _nextScope == _handler) {
0078 _nextScope.doHandle(target,baseRequest,request,response);
0079 } else if (_handler != null) {
0080 _handler.handle(target,baseRequest,request,response);
0081
0082 }
0083 }
0084
0085 public void clearEventListeners() {
0086 if (_sessionManager != null) {
0087 _sessionManager.clearEventListeners();
0088 }
0089 }
0090 }