Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @RequestMapping(value = "/pdf", method = RequestMethod.GET)
- public ResponseEntity<byte[]> getShelterStatusInPdf() {
- ResponseEntity<byte[]> response = restTemplate.getForEntity(REST_API_DOMAIN_BASE + "/export/pdf", byte[].class);
- byte[] pdf = response.getBody();
- HttpHeaders httpHeaders = generateHttpHeaders("pdf");
- httpHeaders.setContentLength(pdf.length);
- return new ResponseEntity<>(pdf, httpHeaders, HttpStatus.OK);
- }
- @RequestMapping(value = "/csv", method = RequestMethod.GET)
- public ResponseEntity<String> getShelterStatusInCsv() {
- ResponseEntity<String> response = restTemplate.getForEntity(REST_API_DOMAIN_BASE + "/export/csv", String.class);
- String csv = response.getBody();
- HttpHeaders httpHeaders = generateHttpHeaders("csv");
- httpHeaders.setContentLength(csv.length());
- return new ResponseEntity<>(csv, httpHeaders, HttpStatus.OK);
- }
- private HttpHeaders generateHttpHeaders(String fileFormat) {
- HttpHeaders httpHeaders = new HttpHeaders();
- switch(fileFormat) {
- case "PDF":
- case "pdf":
- httpHeaders.setContentType(MediaType.APPLICATION_PDF);
- httpHeaders.set(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=status.pdf");
- break;
- case "CSV":
- case "csv":
- httpHeaders.setContentType(MediaType.TEXT_PLAIN);
- httpHeaders.set(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=status.csv");
- break;
- default:
- throw new IllegalArgumentException("Unsupported file format!");
- }
- return httpHeaders;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement