Add artifact download API

feature/appm-store/pbac
lasanthaDLPDS 6 years ago
parent c9f928915e
commit f1672ee961

@ -52,7 +52,12 @@ public class ArtifactDownloadAPIImpl implements ArtifactDownloadAPI {
AppmDataHandler dataHandler = APIUtil.getDataHandler(); AppmDataHandler dataHandler = APIUtil.getDataHandler();
try { try {
InputStream fileInputStream = dataHandler.getArtifactStream(uuid, fileName); InputStream fileInputStream = dataHandler.getArtifactStream(uuid, fileName);
return Response.status(Response.Status.OK).entity(fileInputStream).build(); Response.ResponseBuilder response = Response
.ok(fileInputStream, MediaType.APPLICATION_OCTET_STREAM);
response.status(Response.Status.OK);
// response.type("application/html");
response.header("Content-Disposition", "attachment; filename=\"" + fileName + "\"");
return response.build();
} catch (NotFoundException e) { } catch (NotFoundException e) {
String msg = "Couldn't find an application release for UUID: " + uuid + " and file name: " + fileName; String msg = "Couldn't find an application release for UUID: " + uuid + " and file name: " + fileName;
log.error(msg, e); log.error(msg, e);

@ -130,9 +130,8 @@ public class StorageManagementUtil {
if (!sourceFile.exists()){ if (!sourceFile.exists()){
return null; return null;
} }
try {
try (InputStream inputStream = new FileInputStream(sourceFile)){ return new FileInputStream(sourceFile);
return inputStream;
} catch (FileNotFoundException e) { } catch (FileNotFoundException e) {
String msg = "Couldn't file the file in file path: " + filePath; String msg = "Couldn't file the file in file path: " + filePath;
log.error(msg); log.error(msg);

@ -207,7 +207,11 @@ public class HandlerUtil {
resp.setCharacterEncoding("UTF-8"); resp.setCharacterEncoding("UTF-8");
proxyResponse.setExecutorResponse(null); proxyResponse.setExecutorResponse(null);
try (PrintWriter writer = resp.getWriter()) { try (PrintWriter writer = resp.getWriter()) {
writer.write(gson.toJson(proxyResponse)); if (proxyResponse.getCode() == HttpStatus.SC_OK){
writer.write(gson.toJson(proxyResponse.getData()));
} else{
writer.write(proxyResponse.getData());
}
} }
} }

Loading…
Cancel
Save