@@ -202,24 +202,24 @@ private void copyResponseHeaders(HttpResponse proxyResponse, HttpServletResponse
202202 }
203203 }
204204
205+ private String getResponseHtml (HttpResponse proxyResponse )
206+ throws IOException {
207+ HttpEntity entity = proxyResponse .getEntity ();
208+ return entity != null ? EntityUtils .toString (entity ) : "" ;
209+ }
210+
205211 /**
206212 * Copy response body data (the entity) from the proxy to the servlet client.
207213 */
208- private String copyResponseEntity ( HttpResponse proxyResponse , HttpServletResponse servletResponse )
214+ private void responseEntity ( String html , HttpServletResponse servletResponse )
209215 throws IOException {
210- HttpEntity entity = proxyResponse .getEntity ();
211- if (entity != null ) {
212- PrintWriter printWriter = servletResponse .getWriter ();
213- try {
214- final String html = EntityUtils .toString (entity );
215- printWriter .write (html );
216- printWriter .flush ();
217- return html ;
218- } finally {
219- closeQuietly (printWriter );
220- }
216+ PrintWriter printWriter = servletResponse .getWriter ();
217+ try {
218+ printWriter .write (html );
219+ printWriter .flush ();
220+ } finally {
221+ closeQuietly (printWriter );
221222 }
222- return "" ;
223223 }
224224
225225
@@ -262,8 +262,8 @@ private boolean isInResources(final String url) {
262262 return from (prerenderConfig .getExtensionsToIgnore ()).anyMatch (new Predicate <String >() {
263263 @ Override
264264 public boolean apply (String item ) {
265- return (url .indexOf ('?' ) >= 0 ? url .substring (0 , url .indexOf ('?' )) : url )
266- .toLowerCase ().endsWith (item );
265+ return (url .indexOf ('?' ) >= 0 ? url .substring (0 , url .indexOf ('?' )) : url )
266+ .toLowerCase ().endsWith (item );
267267 }
268268 });
269269 }
@@ -298,23 +298,24 @@ private boolean proxyPrerenderedPageResponse(HttpServletRequest request, HttpSer
298298 final HttpGet getMethod = getHttpGet (apiUrl );
299299 copyRequestHeaders (request , getMethod );
300300 withPrerenderToken (getMethod );
301- CloseableHttpResponse proxyResponse = null ;
301+ CloseableHttpResponse prerenderServerResponse = null ;
302302
303303 try {
304- proxyResponse = httpClient .execute (getMethod );
305- response .setStatus (proxyResponse .getStatusLine ().getStatusCode ());
306- copyResponseHeaders (proxyResponse , response );
307- final String html = copyResponseEntity (proxyResponse , response );
308- afterRender (request , proxyResponse , html );
304+ prerenderServerResponse = httpClient .execute (getMethod );
305+ response .setStatus (prerenderServerResponse .getStatusLine ().getStatusCode ());
306+ copyResponseHeaders (prerenderServerResponse , response );
307+ final String html = getResponseHtml (prerenderServerResponse );
308+ afterRender (request , response , prerenderServerResponse , html );
309+ responseEntity (html , response );
309310 return true ;
310311 } finally {
311- closeQuietly (proxyResponse );
312+ closeQuietly (prerenderServerResponse );
312313 }
313314 }
314315
315- private void afterRender (HttpServletRequest request , CloseableHttpResponse proxyResponse , String html ) {
316+ private void afterRender (HttpServletRequest clientRequest , HttpServletResponse clientResponse , CloseableHttpResponse prerenderServerResponse , String responseHtml ) {
316317 if (preRenderEventHandler != null ) {
317- preRenderEventHandler .afterRender (request , proxyResponse , html );
318+ preRenderEventHandler .afterRender (clientRequest , clientResponse , prerenderServerResponse , responseHtml );
318319 }
319320 }
320321
0 commit comments