Skip to content

Commit d43992c

Browse files
committed
try with resources
1 parent 163c018 commit d43992c

File tree

1 file changed

+5
-19
lines changed

1 file changed

+5
-19
lines changed

direct-object-references/src/main/java/de/dominikschadow/javasecurity/DownloadServlet.java

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@
2626
import javax.servlet.http.HttpServlet;
2727
import javax.servlet.http.HttpServletRequest;
2828
import javax.servlet.http.HttpServletResponse;
29-
import java.io.*;
29+
import java.io.FileInputStream;
30+
import java.io.IOException;
31+
import java.io.InputStream;
32+
import java.io.OutputStream;
3033

3134
/**
3235
* Servlet downloading files from inside the web application.
@@ -45,32 +48,15 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) t
4548

4649
LOGGER.info("File {} requested for download", indirectReference);
4750

48-
InputStream is = null;
49-
OutputStream os = null;
50-
51-
try {
52-
File file = ReferenceUtil.getFileByIndirectReference(indirectReference);
53-
54-
is = new FileInputStream(file);
55-
51+
try (InputStream is = new FileInputStream(ReferenceUtil.getFileByIndirectReference(indirectReference)); OutputStream os = response.getOutputStream()) {
5652
byte[] bytes = new byte[1024];
57-
os = response.getOutputStream();
5853

5954
int read;
6055
while ((read = is.read(bytes)) != -1) {
6156
os.write(bytes, 0, read);
6257
}
63-
os.flush();
6458
} catch (AccessControlException ex) {
6559
LOGGER.error(ex.getMessage(), ex);
66-
} finally {
67-
if (os != null) {
68-
os.close();
69-
}
70-
71-
if (is != null) {
72-
is.close();
73-
}
7460
}
7561
}
7662
}

0 commit comments

Comments
 (0)