1
2
3
4
5
6
7
8
9
10
11 package psiprobe.controllers.threads;
12
13 import jakarta.inject.Inject;
14 import jakarta.servlet.http.HttpServletRequest;
15 import jakarta.servlet.http.HttpServletResponse;
16
17 import java.util.List;
18
19 import org.springframework.beans.factory.annotation.Value;
20 import org.springframework.stereotype.Controller;
21 import org.springframework.web.bind.annotation.RequestMapping;
22 import org.springframework.web.servlet.ModelAndView;
23
24 import psiprobe.beans.ContainerListenerBean;
25 import psiprobe.controllers.AbstractTomcatContainerController;
26 import psiprobe.model.ThreadPool;
27
28
29
30
31 @Controller
32 public class ListThreadPoolsController extends AbstractTomcatContainerController {
33
34
35 @Inject
36 private ContainerListenerBean containerListenerBean;
37
38 @RequestMapping(path = "/threadpools.htm")
39 @Override
40 public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)
41 throws Exception {
42 return super.handleRequest(request, response);
43 }
44
45 @Override
46 public ModelAndView handleRequestInternal(HttpServletRequest request,
47 HttpServletResponse response) throws Exception {
48
49 List<ThreadPool> pools = containerListenerBean.getThreadPools();
50 return new ModelAndView(getViewName()).addObject("pools", pools);
51 }
52
53 @Value("threadpools")
54 @Override
55 public void setViewName(String viewName) {
56 super.setViewName(viewName);
57 }
58
59 }