Skip to content

Commit 45af909

Browse files
Improve AbstractLogginFilter and CompositeFilter
rename callbacks and improve javadoc specify return type
1 parent ad19a24 commit 45af909

File tree

7 files changed

+24
-22
lines changed

7 files changed

+24
-22
lines changed

cf-java-logging-support-servlet/src/main/java/com/sap/hcp/cf/logging/servlet/filter/AbstractLoggingFilter.java

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha
2727
* Provides a default implementation for handling servlet requests already
2828
* cast to {@link HttpServletRequest} and {@link HttpServletResponse}.
2929
* Custom implementations of {@link AbstractLoggingFilter} should overwrite
30-
* {@link #preProcess(HttpServletRequest, HttpServletResponse)} and/or
31-
* {@link #postProcess(HttpServletRequest, HttpServletResponse)}.
30+
* {@link #beforeFilter(HttpServletRequest, HttpServletResponse)} and/or
31+
* {@link #cleanup(HttpServletRequest, HttpServletResponse)}.
3232
*
3333
* @param request
3434
* cast as {@link HttpServletRequest}
@@ -43,34 +43,36 @@ protected void doFilterRequest(HttpServletRequest request, HttpServletResponse r
4343
throws IOException,
4444
ServletException {
4545
try {
46-
preProcess(request, response);
46+
beforeFilter(request, response);
4747
chain.doFilter(request, response);
4848
} finally {
49-
postProcess(request, response);
49+
cleanup(request, response);
5050

5151
}
5252
}
5353

5454
/**
55-
* Pre-process the request/response before it is passed along the filter
56-
* chain.
55+
* Processes the request/response before it is passed along the filter
56+
* chain. Even if {@link #beforeFilter} fails, {@link #cleanup} will be
57+
* executed.
5758
*
5859
* @param request
5960
* @param response
60-
* @throws IOException
6161
*/
62-
protected void preProcess(HttpServletRequest request, HttpServletResponse response) {
62+
protected void beforeFilter(HttpServletRequest request, HttpServletResponse response) {
6363
}
6464

6565
/**
66-
* Post-process the request/response after it was handled by the filter
67-
* chain. This is executed even in cases of failures during handling. Use
68-
* this method to reset or clean-up state, e.g. MDC.
66+
* Cleanup after the request/response was handled by the filter chain. This
67+
* is executed even in cases of failures during handling or
68+
* {@link #beforeFilter}. Use this method to reset or clean-up state, e.g.
69+
* MDC. Be aware, that there may be partially initalized state from
70+
* {@link #beforeFilter}.
6971
*
7072
* @param request
7173
* @param response
7274
*/
73-
protected void postProcess(HttpServletRequest request, HttpServletResponse response) {
75+
protected void cleanup(HttpServletRequest request, HttpServletResponse response) {
7476
}
7577

7678
/**

cf-java-logging-support-servlet/src/main/java/com/sap/hcp/cf/logging/servlet/filter/AddHttpHeadersToLogContextFilter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ public AddHttpHeadersToLogContextFilter(List<? extends HttpHeader> list, HttpHea
5959
}
6060

6161
@Override
62-
protected void preProcess(HttpServletRequest request, HttpServletResponse response) {
62+
protected void beforeFilter(HttpServletRequest request, HttpServletResponse response) {
6363
for (HttpHeader header: headers) {
6464
String headerValue = HttpHeaderUtilities.getHeaderValue(request, header);
6565
if (header.getField() != null && headerValue != null) {
@@ -69,7 +69,7 @@ protected void preProcess(HttpServletRequest request, HttpServletResponse respon
6969
}
7070

7171
@Override
72-
protected void postProcess(HttpServletRequest request, HttpServletResponse response) {
72+
protected void cleanup(HttpServletRequest request, HttpServletResponse response) {
7373
fields.forEach(LogContext::remove);
7474
}
7575
}

cf-java-logging-support-servlet/src/main/java/com/sap/hcp/cf/logging/servlet/filter/AddVcapEnvironmentToLogContextFilter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,12 @@
2323
public class AddVcapEnvironmentToLogContextFilter extends AbstractLoggingFilter {
2424

2525
@Override
26-
protected void preProcess(HttpServletRequest request, HttpServletResponse response) {
26+
protected void beforeFilter(HttpServletRequest request, HttpServletResponse response) {
2727
LogContext.loadContextFields();
2828
}
2929

3030
@Override
31-
protected void postProcess(HttpServletRequest request, HttpServletResponse response) {
31+
protected void cleanup(HttpServletRequest request, HttpServletResponse response) {
3232
LogContext.resetContextFields();
3333
}
3434
}

cf-java-logging-support-servlet/src/main/java/com/sap/hcp/cf/logging/servlet/filter/CompositeFilter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public CompositeFilter(Filter... filters) {
3838
Collections.addAll(this.filters, filters);
3939
}
4040

41-
public List<? extends Filter> getFilters() {
41+
public List<Filter> getFilters() {
4242
return Collections.unmodifiableList(filters);
4343
}
4444

cf-java-logging-support-servlet/src/main/java/com/sap/hcp/cf/logging/servlet/filter/CorrelationIdFilter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public CorrelationIdFilter(HttpHeader correlationHeader) {
3535
}
3636

3737
@Override
38-
protected void preProcess(HttpServletRequest request, HttpServletResponse response) {
38+
protected void beforeFilter(HttpServletRequest request, HttpServletResponse response) {
3939
String correlationId = determineCorrelationId(request);
4040
LogContext.add(correlationHeader.getField(), correlationId);
4141
addCorrelationIdHeader(response, correlationId);
@@ -60,7 +60,7 @@ private void addCorrelationIdHeader(HttpServletResponse response, String correla
6060
}
6161

6262
@Override
63-
protected void postProcess(HttpServletRequest request, HttpServletResponse response) {
63+
protected void cleanup(HttpServletRequest request, HttpServletResponse response) {
6464
LogContext.remove(correlationHeader.getField());
6565
}
6666

cf-java-logging-support-servlet/src/main/java/com/sap/hcp/cf/logging/servlet/filter/DynamicLogLevelFilter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ protected Optional<DynamicLogLevelProcessor> getProcessor() {
117117
}
118118

119119
@Override
120-
protected void preProcess(HttpServletRequest request, HttpServletResponse response) {
120+
protected void beforeFilter(HttpServletRequest request, HttpServletResponse response) {
121121
getProcessor().ifPresent(processor -> extractHeader(request).ifPresent(processor::copyDynamicLogLevelToMDC));
122122
}
123123

@@ -126,7 +126,7 @@ private Optional<String> extractHeader(HttpServletRequest request) {
126126
}
127127

128128
@Override
129-
protected void postProcess(HttpServletRequest request, HttpServletResponse response) {
129+
protected void cleanup(HttpServletRequest request, HttpServletResponse response) {
130130
getProcessor().ifPresent(DynamicLogLevelProcessor::removeDynamicLogLevelFromMDC);
131131
}
132132

cf-java-logging-support-servlet/src/main/java/com/sap/hcp/cf/logging/servlet/filter/LogContextToRequestAttributeFilter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
public class LogContextToRequestAttributeFilter extends AbstractLoggingFilter {
2626

2727
@Override
28-
protected void preProcess(HttpServletRequest request, HttpServletResponse response) {
28+
protected void beforeFilter(HttpServletRequest request, HttpServletResponse response) {
2929
request.setAttribute(MDC.class.getName(), MDC.getCopyOfContextMap());
3030
}
3131

0 commit comments

Comments
 (0)