Author: kwright
Date: Wed Aug 6 14:48:05 2014
New Revision: 1616253
URL: http://svn.apache.org/r1616253
Log:
Fix for CONNECTORS-1003.
Modified:
manifoldcf/trunk/CHANGES.txt
manifoldcf/trunk/connectors/cmis/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/cmis/CmisRepositoryConnector.java
Modified: manifoldcf/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/CHANGES.txt?rev=1616253&r1=1616252&r2=1616253&view=diff
==============================================================================
--- manifoldcf/trunk/CHANGES.txt (original)
+++ manifoldcf/trunk/CHANGES.txt Wed Aug 6 14:48:05 2014
@@ -3,6 +3,10 @@ $Id$
======================= 1.7-dev =====================
+CONNECTORS-1003: CMIS connector handling of query string was
+incorrect.
+(Karl Wright)
+
CONNECTORS-958: Update OpenSearchServer connector to handle
metadata, and deal with more current versions of OpenSearchServer.
(Emmanuel Keller)
Modified:
manifoldcf/trunk/connectors/cmis/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/cmis/CmisRepositoryConnector.java
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/cmis/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/cmis/CmisRepositoryConnector.java?rev=1616253&r1=1616252&r2=1616253&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/cmis/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/cmis/CmisRepositoryConnector.java
(original)
+++
manifoldcf/trunk/connectors/cmis/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/cmis/CmisRepositoryConnector.java
Wed Aug 6 14:48:05 2014
@@ -144,8 +144,6 @@ public class CmisRepositoryConnector ext
protected static final long timeToRelease = 300000L;
protected long lastSessionFetch = -1L;
- protected String cmisQuery = StringUtils.EMPTY;
-
/**
* Constructor
*/
@@ -661,15 +659,14 @@ public class CmisRepositoryConnector ext
getSession();
- cmisQuery = StringUtils.EMPTY;
- int i = 0;
- while (i < spec.getChildCount()) {
+ String cmisQuery = StringUtils.EMPTY;
+ for (int i = 0; i < spec.getChildCount(); i++)
+ {
SpecificationNode sn = spec.getChild(i);
if (sn.getType().equals(JOB_STARTPOINT_NODE_TYPE)) {
cmisQuery = sn.getAttributeValue(CmisConfig.CMIS_QUERY_PARAM);
break;
}
- i++;
}
if (StringUtils.isEmpty(cmisQuery)) {
@@ -1068,6 +1065,16 @@ public class CmisRepositoryConnector ext
getSession();
Logging.connectors.debug("CMIS: Inside processDocuments");
+ String cmisQuery = StringUtils.EMPTY;
+ for (int i = 0; i < spec.getChildCount(); i++)
+ {
+ SpecificationNode sn = spec.getChild(i);
+ if (sn.getType().equals(JOB_STARTPOINT_NODE_TYPE)) {
+ cmisQuery = sn.getAttributeValue(CmisConfig.CMIS_QUERY_PARAM);
+ break;
+ }
+ }
+
for (int i = 0; i < documentIdentifiers.length; i++) {
long startTime = System.currentTimeMillis();
String nodeId = documentIdentifiers[i];
@@ -1288,6 +1295,16 @@ public class CmisRepositoryConnector ext
DocumentSpecification spec) throws ManifoldCFException,
ServiceInterruption {
+ String cmisQuery = StringUtils.EMPTY;
+ for (int i = 0; i < spec.getChildCount(); i++)
+ {
+ SpecificationNode sn = spec.getChild(i);
+ if (sn.getType().equals(JOB_STARTPOINT_NODE_TYPE)) {
+ cmisQuery = sn.getAttributeValue(CmisConfig.CMIS_QUERY_PARAM);
+ break;
+ }
+ }
+
getSession();
String[] rval = new String[documentIdentifiers.length];
@@ -1306,7 +1323,7 @@ public class CmisRepositoryConnector ext
//we have to check if this CMIS repository support versioning
// or if the versioning is disabled for this content
if(StringUtils.isNotEmpty(document.getVersionLabel())){
- rval[i] = document.getVersionLabel();
+ rval[i] = document.getVersionLabel() + ":" + cmisQuery;
} else {
//a CMIS document that doesn't contain versioning information will
always be processed
rval[i] = StringUtils.EMPTY;