You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@manifoldcf.apache.org by kw...@apache.org on 2014/10/05 23:36:24 UTC
svn commit: r1629542 - in /manifoldcf/trunk: ./
connectors/alfresco-webscript/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/alfrescowebscript/
connectors/alfresco-webscript/connector/src/test/java/org/apache/manifoldcf/crawler/connec...
Author: kwright
Date: Sun Oct 5 21:36:24 2014
New Revision: 1629542
URL: http://svn.apache.org/r1629542
Log:
Fix for CONNECTORS-1056.
Modified:
manifoldcf/trunk/CHANGES.txt
manifoldcf/trunk/connectors/alfresco-webscript/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/alfrescowebscript/AlfrescoConnector.java
manifoldcf/trunk/connectors/alfresco-webscript/connector/src/test/java/org/apache/manifoldcf/crawler/connectors/alfrescowebscript/AlfrescoConnectorTest.java
Modified: manifoldcf/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/CHANGES.txt?rev=1629542&r1=1629541&r2=1629542&view=diff
==============================================================================
--- manifoldcf/trunk/CHANGES.txt (original)
+++ manifoldcf/trunk/CHANGES.txt Sun Oct 5 21:36:24 2014
@@ -3,6 +3,10 @@ $Id$
======================= 2.0-dev =====================
+CONNECTORS-1056: Use ContentUrlPath attribute for actual URI for
+the document in Alfresco.
+(Maurizio Pillitu, Karl Wright)
+
CONNECTORS-1062: Livelink connector date stamps etc should be in
ms since epoch, not in human-readable timezone-dependent dates.
(Karl Wright)
Modified: manifoldcf/trunk/connectors/alfresco-webscript/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/alfrescowebscript/AlfrescoConnector.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/alfresco-webscript/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/alfrescowebscript/AlfrescoConnector.java?rev=1629542&r1=1629541&r2=1629542&view=diff
==============================================================================
--- manifoldcf/trunk/connectors/alfresco-webscript/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/alfrescowebscript/AlfrescoConnector.java (original)
+++ manifoldcf/trunk/connectors/alfresco-webscript/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/alfrescowebscript/AlfrescoConnector.java Sun Oct 5 21:36:24 2014
@@ -308,15 +308,19 @@ public class AlfrescoConnector extends B
long length;
byte[] empty = new byte[0];
String contentUrlPath = (String) properties.get(CONTENT_URL_PROPERTY);
- if (contentUrlPath != null && !contentUrlPath.isEmpty()) {
- if (this.enableDocumentProcessing) {
- if (lSize != null) {
- stream = alfrescoClient.fetchContent(contentUrlPath);
- length = lSize.longValue();
- } else {
- stream = new ByteArrayInputStream(empty);
- length = 0L;
+ if (contentUrlPath == null || contentUrlPath.isEmpty()) {
+ activities.noDocument(doc, documentVersion);
+ continue;
+ }
+
+ if (this.enableDocumentProcessing) {
+ if (lSize != null) {
+ stream = alfrescoClient.fetchContent(contentUrlPath);
+ if (stream == null) {
+ activities.noDocument(doc, documentVersion);
+ continue;
}
+ length = lSize.longValue();
} else {
stream = new ByteArrayInputStream(empty);
length = 0L;
@@ -330,7 +334,7 @@ public class AlfrescoConnector extends B
rd.setBinary(stream, length);
if (Logging.connectors != null && Logging.connectors.isDebugEnabled())
Logging.connectors.debug(MessageFormat.format("Ingesting with id: {0}, URI {1} and rd {2}", new Object[]{uuid, nodeRef, rd.getFileName()}));
- activities.ingestDocumentWithException(doc, documentVersion, nodeRef/*was uuid*/, rd);
+ activities.ingestDocumentWithException(doc, documentVersion, contentUrlPath, rd);
} catch (IOException e) {
handleIOException(e,"reading stream");
} finally {
Modified: manifoldcf/trunk/connectors/alfresco-webscript/connector/src/test/java/org/apache/manifoldcf/crawler/connectors/alfrescowebscript/AlfrescoConnectorTest.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/alfresco-webscript/connector/src/test/java/org/apache/manifoldcf/crawler/connectors/alfrescowebscript/AlfrescoConnectorTest.java?rev=1629542&r1=1629541&r2=1629542&view=diff
==============================================================================
--- manifoldcf/trunk/connectors/alfresco-webscript/connector/src/test/java/org/apache/manifoldcf/crawler/connectors/alfrescowebscript/AlfrescoConnectorTest.java (original)
+++ manifoldcf/trunk/connectors/alfresco-webscript/connector/src/test/java/org/apache/manifoldcf/crawler/connectors/alfrescowebscript/AlfrescoConnectorTest.java Sun Oct 5 21:36:24 2014
@@ -120,6 +120,7 @@ public class AlfrescoConnectorTest {
testDocument.put("cm:modified","2014-10-02T16:15:25.124Z");
testDocument.put("size","115");
testDocument.put("mimetype","text/plain");
+ testDocument.put("contentUrlPath","http://localhost:8080/foo");
IProcessActivity activities = mock(IProcessActivity.class);
when(activities.checkDocumentNeedsReindexing(anyString(),anyString()))
.thenReturn(true);
@@ -130,12 +131,15 @@ public class AlfrescoConnectorTest {
IExistingVersions statuses = mock(IExistingVersions.class);
when(client.fetchNode(anyString()))
- .thenReturn(new AlfrescoResponse(0, 0, "", "",
+ .thenReturn(new AlfrescoResponse(0, 0, "", "",
Arrays.<Map<String, Object>>asList(testDocument)));
when(client.fetchMetadata(anyString()))
.thenReturn(testDocument);
+ when(client.fetchContent(anyString()))
+ .thenReturn(new java.io.ByteArrayInputStream(new byte[0]));
+
// processDocuments(String[] documentIdentifiers, IExistingVersions statuses, Specification spec,
// IProcessActivity activities, int jobMode, boolean usesDefaultAuthority)
connector.processDocuments(new String[]{TestDocument.uuid}, statuses, new Specification(), activities, 0, true);
@@ -149,7 +153,7 @@ public class AlfrescoConnectorTest {
.checkMimeTypeIndexable(eq("text/plain"));
verify(activities)
.ingestDocumentWithException(eq(TestDocument.uuid), anyString(),
- eq(TestDocument.nodeRef), rd.capture());
+ eq((String)testDocument.get("contentUrlPath")), rd.capture());
Iterator<String> i = rd.getValue().getFields();
while(i.hasNext()) {