Skip to content

Commit 774d90f

Browse files
committed
Fixes #4471 - Add logging to DefaultServletRequestManager
1 parent 1f8ea23 commit 774d90f

File tree

1 file changed

+41
-12
lines changed

1 file changed

+41
-12
lines changed

core/impl/src/main/java/cloud/piranha/core/impl/DefaultServletRequestManager.java

Lines changed: 41 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -27,16 +27,18 @@
2727
*/
2828
package cloud.piranha.core.impl;
2929

30+
import cloud.piranha.core.api.ServletRequestManager;
31+
import jakarta.servlet.ServletRequest;
3032
import jakarta.servlet.ServletRequestAttributeEvent;
3133
import jakarta.servlet.ServletRequestAttributeListener;
34+
import jakarta.servlet.ServletRequestEvent;
35+
import jakarta.servlet.ServletRequestListener;
3236
import jakarta.servlet.http.HttpServletRequest;
37+
import java.lang.System.Logger;
38+
import static java.lang.System.Logger.Level.TRACE;
3339
import java.util.ArrayList;
3440
import java.util.EventListener;
3541
import java.util.List;
36-
import jakarta.servlet.ServletRequestListener;
37-
import cloud.piranha.core.api.ServletRequestManager;
38-
import jakarta.servlet.ServletRequest;
39-
import jakarta.servlet.ServletRequestEvent;
4042

4143
/**
4244
* The default servlet request manager.
@@ -46,6 +48,12 @@
4648
*/
4749
public class DefaultServletRequestManager implements ServletRequestManager {
4850

51+
/**
52+
* Stores the logger.
53+
*/
54+
private static final Logger LOGGER
55+
= System.getLogger(DefaultServletRequestManager.class.getName());
56+
4957
/**
5058
* Stores the ServletRequestAttribute listeners.
5159
*/
@@ -59,45 +67,66 @@ public class DefaultServletRequestManager implements ServletRequestManager {
5967
@Override
6068
public <T extends EventListener> void addListener(T listener) {
6169
if (listener instanceof ServletRequestAttributeListener attributeListener) {
70+
if (LOGGER.isLoggable(TRACE)) {
71+
LOGGER.log(TRACE, "Adding ServletRequestAttributeListener: {0}", listener);
72+
}
6273
attributeListeners.add(attributeListener);
6374
}
6475
if (listener instanceof ServletRequestListener requestListener) {
76+
if (LOGGER.isLoggable(TRACE)) {
77+
LOGGER.log(TRACE, "Adding ServletRequestlistener: {0}", listener);
78+
}
6579
requestListeners.add(requestListener);
6680
}
6781
}
6882

6983
@Override
7084
public void attributeAdded(HttpServletRequest request, String name, Object value) {
71-
attributeListeners.stream().forEach(listener
85+
if (LOGGER.isLoggable(TRACE)) {
86+
LOGGER.log(TRACE, "Attribute: {0} added with value: {1}", name, value);
87+
}
88+
attributeListeners.stream().forEach(listener
7289
-> listener.attributeAdded(new ServletRequestAttributeEvent(
7390
request.getServletContext(), request, name, value)));
7491
}
7592

7693
@Override
7794
public void attributeRemoved(HttpServletRequest request, String name, Object value) {
78-
attributeListeners.stream().forEach(listener
95+
if (LOGGER.isLoggable(TRACE)) {
96+
LOGGER.log(TRACE, "Attribute: {0} removed with value: {1}", name, value);
97+
}
98+
attributeListeners.stream().forEach(listener
7999
-> listener.attributeRemoved(new ServletRequestAttributeEvent(
80100
request.getServletContext(), request, name, value)));
81101
}
82102

83103
@Override
84104
public void attributeReplaced(HttpServletRequest request, String name, Object value) {
85-
attributeListeners.stream().forEach(listener
105+
if (LOGGER.isLoggable(TRACE)) {
106+
LOGGER.log(TRACE, "Attribute: {0} replaced with value: {1}", name, value);
107+
}
108+
attributeListeners.stream().forEach(listener
86109
-> listener.attributeReplaced(new ServletRequestAttributeEvent(
87110
request.getServletContext(), request, name, value)));
88111
}
89112

90113
@Override
91114
public void requestDestroyed(ServletRequest request) {
92-
requestListeners.stream().forEach(servletRequestListener
115+
if (LOGGER.isLoggable(TRACE)) {
116+
LOGGER.log(TRACE, "Request: {0} destroyed", request);
117+
}
118+
requestListeners.stream().forEach(servletRequestListener
93119
-> servletRequestListener.requestDestroyed(new ServletRequestEvent(
94120
request.getServletContext(), request)));
95121
}
96-
122+
97123
@Override
98124
public void requestInitialized(ServletRequest request) {
99-
requestListeners.stream().forEach(servletRequestListener
100-
-> servletRequestListener.requestInitialized(new ServletRequestEvent(
101-
request.getServletContext(), request)));
125+
if (LOGGER.isLoggable(TRACE)) {
126+
LOGGER.log(TRACE, "Request: {0} initialized", request);
127+
}
128+
requestListeners.stream().forEach(servletRequestListener
129+
-> servletRequestListener.requestInitialized(new ServletRequestEvent(
130+
request.getServletContext(), request)));
102131
}
103132
}

0 commit comments

Comments
 (0)