From: Richard Millet Date: Sat, 26 Feb 2011 01:23:21 +0000 (+0000) Subject: CSPACE-3603: /derivatives is failing on Media and Blob services. X-Git-Url: https://git.aero2k.de/?a=commitdiff_plain;h=0c2f93f2fafe861ac236f92805fcd7afc4eb3020;p=tmp%2Fjakarta-migration.git CSPACE-3603: /derivatives is failing on Media and Blob services. --- diff --git a/services/blob/service/src/main/java/org/collectionspace/services/blob/nuxeo/BlobDocumentModelHandler.java b/services/blob/service/src/main/java/org/collectionspace/services/blob/nuxeo/BlobDocumentModelHandler.java index 46ff10703..c4686b097 100644 --- a/services/blob/service/src/main/java/org/collectionspace/services/blob/nuxeo/BlobDocumentModelHandler.java +++ b/services/blob/service/src/main/java/org/collectionspace/services/blob/nuxeo/BlobDocumentModelHandler.java @@ -31,6 +31,7 @@ import org.collectionspace.services.common.blob.BlobUtil; import org.collectionspace.services.common.context.ServiceContext; import org.collectionspace.services.common.document.DocumentWrapper; import org.collectionspace.services.common.imaging.nuxeo.NuxeoImageUtils; +import org.collectionspace.services.common.service.ListResultField; import org.collectionspace.services.jaxb.AbstractCommonList; import org.collectionspace.services.jaxb.BlobJAXBSchema; import org.collectionspace.services.jaxb.AbstractCommonList; @@ -111,8 +112,9 @@ extends DocHandlerBase { String blobRepositoryId = blobsCommon.getRepositoryId(); //cache the value to pass to the blob retriever if (blobInput.isDerivativeListRequested() == true) { + List resultsFields = getListItemsArray(); CommonList blobsCommonList = NuxeoImageUtils.getBlobDerivatives( - repoSession, blobRepositoryId, getDerivativePathBase(docModel)); + repoSession, blobRepositoryId, resultsFields, getDerivativePathBase(docModel)); // ctx.setProperty(BlobInput.BLOB_DERIVATIVE_LIST_KEY, blobsCommonList); blobInput.setDerivativeList(blobsCommonList); return; //FIXME: Don't like this exit point. Perhaps derivatives should be a sub-resource? diff --git a/services/common/src/main/java/org/collectionspace/services/common/imaging/nuxeo/NuxeoImageUtils.java b/services/common/src/main/java/org/collectionspace/services/common/imaging/nuxeo/NuxeoImageUtils.java index 67605db5c..87c891bbe 100644 --- a/services/common/src/main/java/org/collectionspace/services/common/imaging/nuxeo/NuxeoImageUtils.java +++ b/services/common/src/main/java/org/collectionspace/services/common/imaging/nuxeo/NuxeoImageUtils.java @@ -110,6 +110,7 @@ import org.collectionspace.services.common.ServiceMain; import org.collectionspace.services.common.blob.BlobInput; import org.collectionspace.services.common.context.ServiceContext; import org.collectionspace.services.common.document.DocumentUtils; +import org.collectionspace.services.common.service.ListResultField; import org.collectionspace.services.common.FileUtils; import org.collectionspace.services.blob.BlobsCommon; //import org.collectionspace.services.blob.BlobsCommonList; @@ -222,8 +223,18 @@ public class NuxeoImageUtils { static public CommonList getBlobDerivatives(RepositoryInstance repoSession, String repositoryId, + List resultsFields, String uri) throws Exception { CommonList commonList = new CommonList(); + int nFields = resultsFields.size()+2; + String fields[] = new String[nFields];//FIXME: REM - Patrick will fix this. + fields[0] = "csid"; + fields[1] = "uri"; + for(int i=2;i extends RemoteDocumentModelHandlerImpl resultsFields = getListItemsArray(); + List resultsFields = getListItemsArray(); int nFields = resultsFields.size()+2; String fields[] = new String[nFields]; fields[0] = "csid";