diff --git a/build.properties b/build.properties index f3ea522288..dd3cfed77e 100644 --- a/build.properties +++ b/build.properties @@ -9,7 +9,7 @@ host=127.0.0.1 # # Release version info # -release.version=8.3.0-RC.3 +release.version=8.3.0 cspace.release=${release.version} cspace.instance.id=${env.CSPACE_INSTANCE_ID} @@ -27,7 +27,7 @@ cspace.im.root= # UI settings cspace.ui.package.name=cspace-ui cspace.ui.library.name=cspaceUI -cspace.ui.version=10.2.0-rc3.0 +cspace.ui.version=10.2.0 cspace.ui.build.branch=develop cspace.ui.build.node.ver=20 service.ui.library.name=${cspace.ui.library.name}-service diff --git a/pom.xml b/pom.xml index bca0e4f30e..1f1cab8038 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ services - 8.3.0-RC.3 + 8.3.0 UTF-8 ${revision} ${revision} diff --git a/services/advancedsearch/service/src/main/java/org/collectionspace/services/advancedsearch/AdvancedSearch.java b/services/advancedsearch/service/src/main/java/org/collectionspace/services/advancedsearch/AdvancedSearch.java index b30045e08e..13042ca62a 100644 --- a/services/advancedsearch/service/src/main/java/org/collectionspace/services/advancedsearch/AdvancedSearch.java +++ b/services/advancedsearch/service/src/main/java/org/collectionspace/services/advancedsearch/AdvancedSearch.java @@ -18,6 +18,7 @@ import org.collectionspace.services.MediaJAXBSchema; import org.collectionspace.services.advancedsearch.AdvancedsearchCommonList.AdvancedsearchListItem; import org.collectionspace.services.advancedsearch.mapper.CollectionObjectMapper; +import org.collectionspace.services.client.IClientQueryParams; import org.collectionspace.services.client.IQueryManager; import org.collectionspace.services.collectionobject.CollectionObjectResource; import org.collectionspace.services.common.AbstractCollectionSpaceResourceImpl; @@ -51,6 +52,10 @@ public class AdvancedSearch private final MediaResource mr = new MediaResource(); private final RelationResource relations = new RelationResource(); + private static final String PAGE_SIZE = "1"; + private static final String PAGE_NUM = "0"; + private static final String MEDIA_SORT_BY = "media_common:title"; + public AdvancedSearch() { super(); } @@ -88,15 +93,16 @@ public AbstractCommonList getList(@Context Request request, @Context UriInfo uri } final CollectionObjectMapper responseMapper = new CollectionObjectMapper(unmarshaller); + final UriInfoWrapper relUriInfo = relationUriInfo(uriInfo); for (CSDocumentModelResponse response : collectionObjectList.getResponseList()) { String csid = response.getCsid(); - UriInfoWrapper wrappedUriInfo = new UriInfoWrapper(uriInfo); - Map blobInfo = findBlobInfo(csid, wrappedUriInfo); + UriInfoWrapper blobUriInfo = new UriInfoWrapper(uriInfo); + Map blobInfo = findBlobInfo(csid, blobUriInfo); AdvancedsearchListItem listItem = responseMapper.asListItem(response, blobInfo); if (listItem != null) { if (markRelated != null) { - RelationsCommonList relationsList = relations.getRelationForSubject(markRelated, csid, uriInfo); + RelationsCommonList relationsList = relations.getRelationForSubject(markRelated, csid, relUriInfo); listItem.setRelated(!relationsList.getRelationListItem().isEmpty()); } resultsList.getAdvancedsearchListItem().add(listItem); @@ -112,6 +118,15 @@ public AbstractCommonList getList(@Context Request request, @Context UriInfo uri return resultsList; } + private UriInfoWrapper relationUriInfo(final UriInfo uriInfo) { + final UriInfoWrapper wrapper = new UriInfoWrapper(uriInfo); + final MultivaluedMap queryParameters = wrapper.getQueryParameters(); + queryParameters.clear(); + queryParameters.add(IClientQueryParams.PAGE_SIZE_PARAM, PAGE_SIZE); + queryParameters.add(IClientQueryParams.START_PAGE_PARAM, PAGE_NUM); + return wrapper; + } + /** * Retrieves the blob CSIDs associated with a given object's CSID * @@ -123,9 +138,9 @@ private Map findBlobInfo(String csid, UriInfoWrapper wrappedUriI MultivaluedMap wrappedQueryParams = wrappedUriInfo.getQueryParameters(); wrappedQueryParams.clear(); wrappedQueryParams.add(IQueryManager.SEARCH_RELATED_TO_CSID_AS_SUBJECT, csid); - wrappedQueryParams.add("pgSz", "1"); - wrappedQueryParams.add("pgNum", "0"); - wrappedQueryParams.add("sortBy", "media_common:title"); + wrappedQueryParams.add(IClientQueryParams.PAGE_SIZE_PARAM, PAGE_SIZE); + wrappedQueryParams.add(IClientQueryParams.START_PAGE_PARAM, PAGE_NUM); + wrappedQueryParams.add(IClientQueryParams.ORDER_BY_PARAM, MEDIA_SORT_BY); AbstractCommonList associatedMedia = mr.getList(wrappedUriInfo); if (associatedMedia == null || associatedMedia.getListItem() == null) { return Collections.emptyMap();