From: Richard Millet Date: Sat, 26 Jan 2013 19:28:43 +0000 (-0800) Subject: CSPACE-5564: Ensured that all /content requests were returning the correct file names. X-Git-Url: https://git.aero2k.de/?a=commitdiff_plain;h=c03ff2f8ccc7ea634739366ba752332c3f1352d7;p=tmp%2Fjakarta-migration.git CSPACE-5564: Ensured that all /content requests were returning the correct file names. --- diff --git a/services/blob/service/src/main/java/org/collectionspace/services/blob/BlobResource.java b/services/blob/service/src/main/java/org/collectionspace/services/blob/BlobResource.java index 441baff01..edd22d65c 100644 --- a/services/blob/service/src/main/java/org/collectionspace/services/blob/BlobResource.java +++ b/services/blob/service/src/main/java/org/collectionspace/services/blob/BlobResource.java @@ -251,11 +251,13 @@ public class BlobResource extends ResourceBase { try { ctx = createServiceContext(); - + BlobsCommon blobsCommon = getBlobsCommon(csid); StringBuffer mimeType = new StringBuffer(); InputStream contentStream = getBlobContent(ctx, csid, null /*derivative term*/, mimeType /*will get set*/); Response.ResponseBuilder responseBuilder = Response.ok(contentStream, mimeType.toString()); + responseBuilder = responseBuilder.header("Content-Disposition","inline;filename=\"" + + blobsCommon.getName() +"\""); result = responseBuilder.build(); } catch (Exception e) { throw bigReThrow(e, ServiceMessages.CREATE_FAILED); @@ -288,8 +290,7 @@ public class BlobResource extends ResourceBase { ServiceContext ctx = null; try { - ctx = createServiceContext(); - + ctx = createServiceContext(); BlobsCommon blobsCommon = getBlobsCommon(csid); StringBuffer mimeType = new StringBuffer(); InputStream contentStream = getBlobContent(ctx, csid, null /*derivative term*/, mimeType /*will get set*/); @@ -314,11 +315,11 @@ public class BlobResource extends ResourceBase { try { ctx = createServiceContext(); - + BlobsCommon blobsCommon = getBlobsCommon(csid); StringBuffer mimeType = new StringBuffer(); InputStream contentStream = getBlobContent(ctx, csid, derivativeTerm, mimeType); result = ArticleUtil.publishToRepository((ArticlesCommon)null, resourceMap, uriInfo, - getRepositoryClient(ctx), ctx, contentStream, csid); + getRepositoryClient(ctx), ctx, contentStream, blobsCommon.getName()); } catch (Exception e) { throw bigReThrow(e, ServiceMessages.CREATE_FAILED); } @@ -332,15 +333,16 @@ public class BlobResource extends ResourceBase { @PathParam("csid") String csid, @PathParam("derivativeTerm") String derivativeTerm) { Response result = null; - ServiceContext ctx = null; + ServiceContext ctx = null; try { ctx = createServiceContext(); - + BlobsCommon blobsCommon = getBlobsCommon(csid); StringBuffer mimeType = new StringBuffer(); InputStream contentStream = getBlobContent(ctx, csid, derivativeTerm, mimeType); Response.ResponseBuilder responseBuilder = Response.ok(contentStream, mimeType.toString()); - + responseBuilder = responseBuilder.header("Content-Disposition","inline;filename=\"" + + blobsCommon.getName() +"\""); result = responseBuilder.build(); } catch (Exception e) { throw bigReThrow(e, ServiceMessages.CREATE_FAILED); diff --git a/services/common/src/main/java/org/collectionspace/services/common/article/ArticleResource.java b/services/common/src/main/java/org/collectionspace/services/common/article/ArticleResource.java index b61e736dd..ae25c8e10 100644 --- a/services/common/src/main/java/org/collectionspace/services/common/article/ArticleResource.java +++ b/services/common/src/main/java/org/collectionspace/services/common/article/ArticleResource.java @@ -107,6 +107,8 @@ public class ArticleResource extends ResourceBase { // Return the content stream in the response // Response.ResponseBuilder responseBuilder = Response.ok(contentStream, outMimeType.toString()); + responseBuilder = responseBuilder.header("Content-Disposition","inline;filename=\"" + + articlesCommon.getArticleContentName() +"\""); result = responseBuilder.build(); } catch (Exception e) { throw bigReThrow(e, ServiceMessages.READ_FAILED, csid);