Skip to content

Commit 5959687

Browse files
author
Mehmet Can Cömert
committed
Fixing #2859 by adding a createResponseInternal to allow fallback processing of index attribute in WebServerInterceptor.
1 parent 6a5092e commit 5959687

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

core/src/main/java/com/predic8/membrane/core/interceptor/server/WebServerInterceptor.java

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ public Outcome handleRequest(Exchange exc) {
126126

127127
try {
128128
exc.setTimeReqSent(currentTimeMillis());
129-
exc.setResponse(createResponse(router.getResolverMap(), combine(router.getBaseLocation(), docBase, uri)));
129+
exc.setResponse(createResponseInternal(router.getResolverMap(), combine(router.getBaseLocation(), docBase, uri)));
130130
exc.setReceived();
131131
exc.setTimeResReceived(currentTimeMillis());
132132
return RETURN;
@@ -151,7 +151,7 @@ public Outcome handleRequest(Exchange exc) {
151151
private boolean tryToReceiveResource(Exchange exc, String uri) {
152152
for (String i : index) {
153153
try {
154-
exc.setResponse(createResponse(router.getResolverMap(), combine(router.getBaseLocation(), docBase, uri + i)));
154+
exc.setResponse(createResponseInternal(router.getResolverMap(), combine(router.getBaseLocation(), docBase, uri + i)));
155155
exc.setReceived();
156156
exc.setTimeResReceived(currentTimeMillis());
157157
return true;
@@ -217,10 +217,7 @@ private boolean escapesPath(String uri) {
217217

218218
public Response createResponse(ResolverMap rr, String resPath) {
219219
try {
220-
return ok()
221-
.header(createHeaders(getContentType(resPath)))
222-
.body(rr.resolve(resPath), true)
223-
.build();
220+
return createResponseInternal(rr, resPath);
224221
} catch (Exception e) {
225222
return internal(router.isProduction(),getDisplayName())
226223
.title("Could not resolve file")
@@ -230,6 +227,13 @@ public Response createResponse(ResolverMap rr, String resPath) {
230227
}
231228
}
232229

230+
private Response createResponseInternal(ResolverMap rr, String resPath) throws ResourceRetrievalException {
231+
return ok()
232+
.header(createHeaders(getContentType(resPath)))
233+
.body(rr.resolve(resPath), true)
234+
.build();
235+
}
236+
233237
// @TODO Move to Util
234238
private static String getContentType(String uri) {
235239
if (uri.endsWith(".css"))

0 commit comments

Comments
 (0)