summaryrefslogtreecommitdiffhomepage
path: root/test/java/session_inactive/app.java
blob: 618e4d67942c463eb3201051d691748f89527525 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

@WebServlet(urlPatterns = "/")
public class app extends HttpServlet
{
    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws IOException, ServletException
    {
        HttpSession s = request.getSession();

        if (s.isNew()) {
            String interval = request.getHeader("X-Interval");

            if (interval == null) {
                s.setMaxInactiveInterval(0);
            } else {
                s.setMaxInactiveInterval(Integer.parseInt(interval));
            }
        }

        response.addHeader("X-Session-Id", s.getId());
        response.addDateHeader("X-Session-Last-Access-Time", s.getLastAccessedTime());
        response.addIntHeader("X-Session-Interval", s.getMaxInactiveInterval());
    }
}