From 50bf8c4948ee5e064d6b8446ea5ada3b9eb3a52e Mon Sep 17 00:00:00 2001 From: Andrew Hind Date: Mon, 23 Sep 2013 19:04:40 +0000 Subject: [PATCH] Fix for ALF-19690 CMIS TCK Test Failures - queries for checked out docs go to the DB git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@55865 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../opencmis/AlfrescoCmisServiceImpl.java | 23 +++---------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/source/java/org/alfresco/opencmis/AlfrescoCmisServiceImpl.java b/source/java/org/alfresco/opencmis/AlfrescoCmisServiceImpl.java index 593d48d616..166534b33b 100644 --- a/source/java/org/alfresco/opencmis/AlfrescoCmisServiceImpl.java +++ b/source/java/org/alfresco/opencmis/AlfrescoCmisServiceImpl.java @@ -142,11 +142,6 @@ public class AlfrescoCmisServiceImpl extends AbstractCmisService implements Alfr { private static Log logger = LogFactory.getLog(AlfrescoCmisService.class); - private static final QName PARAM_PARENT = QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, "parent"); - private static final QName PARAM_USERNAME = QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, "username"); - private static final String LUCENE_QUERY_CHECKEDOUT = "+=@cm\\:workingCopyOwner:${cm:username}"; - private static final String LUCENE_QUERY_CHECKEDOUT_IN_FOLDER = "+=@cm\\:workingCopyOwner:${cm:username} +=PARENT:\"${cm:parent}\""; - private static final String MIN_FILTER = "cmis:name,cmis:baseTypeId,cmis:objectTypeId," + "cmis:createdBy,cmis:creationDate,cmis:lastModifiedBy,cmis:lastModificationDate," + "cmis:contentStreamLength,cmis:contentStreamMimeType,cmis:contentStreamFileName," @@ -812,30 +807,18 @@ public class AlfrescoCmisServiceImpl extends AbstractCmisService implements Alfr // prepare query SearchParameters params = new SearchParameters(); params.setLanguage(SearchService.LANGUAGE_FTS_ALFRESCO); - QueryParameterDefinition usernameDef = new QueryParameterDefImpl( - PARAM_USERNAME, - connector.getDictionaryService().getDataType(DataTypeDefinition.TEXT), - true, - AuthenticationUtil.getFullyAuthenticatedUser()); - params.addQueryParameterDefinition(usernameDef); - + if (folderId == null) { - params.setQuery(LUCENE_QUERY_CHECKEDOUT); + params.setQuery("+=cm:workingCopyOwner:\""+AuthenticationUtil.getFullyAuthenticatedUser()+"\""); params.addStore(connector.getRootStoreRef()); } else { CMISNodeInfo folderInfo = getOrCreateFolderInfo(folderId, "Folder"); - params.setQuery(LUCENE_QUERY_CHECKEDOUT_IN_FOLDER); + params.setQuery("+=cm:workingCopyOwner:\""+AuthenticationUtil.getFullyAuthenticatedUser()+"\" +=PARENT:\""+folderInfo.getNodeRef().toString()+"\""); params.addStore(folderInfo.getNodeRef().getStoreRef()); - QueryParameterDefinition parentDef = new QueryParameterDefImpl( - PARAM_PARENT, - connector.getDictionaryService().getDataType(DataTypeDefinition.NODE_REF), - true, - folderInfo.getNodeRef().toString()); - params.addQueryParameterDefinition(parentDef); } // set up order