Author: kwright
Date: Thu Sep 18 22:43:19 2014
New Revision: 1626097
URL: http://svn.apache.org/r1626097
Log:
Fix for CONNECTORS-1040.
Modified:
manifoldcf/trunk/CHANGES.txt
manifoldcf/trunk/connectors/documentfilter/connector/src/main/java/org/apache/manifoldcf/agents/transformation/documentfilter/DocumentFilter.java
manifoldcf/trunk/connectors/forcedmetadata/connector/src/main/java/org/apache/manifoldcf/agents/transformation/forcedmetadata/ForcedMetadataConnector.java
manifoldcf/trunk/connectors/tika/connector/src/main/java/org/apache/manifoldcf/agents/transformation/tika/TikaExtractor.java
Modified: manifoldcf/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/CHANGES.txt?rev=1626097&r1=1626096&r2=1626097&view=diff
==============================================================================
--- manifoldcf/trunk/CHANGES.txt (original)
+++ manifoldcf/trunk/CHANGES.txt Thu Sep 18 22:43:19 2014
@@ -3,6 +3,10 @@ $Id$
======================= 2.0-dev =====================
+CONNECTORS-1040: Transformation connectors should use specification
+rather than unpacking version string.
+(Karl Wright)
+
CONNECTORS-1039: Use a URL-centric way of getting the extension
for document filtering.
(David Morana, Karl Wright)
Modified:
manifoldcf/trunk/connectors/documentfilter/connector/src/main/java/org/apache/manifoldcf/agents/transformation/documentfilter/DocumentFilter.java
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/documentfilter/connector/src/main/java/org/apache/manifoldcf/agents/transformation/documentfilter/DocumentFilter.java?rev=1626097&r1=1626096&r2=1626097&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/documentfilter/connector/src/main/java/org/apache/manifoldcf/agents/transformation/documentfilter/DocumentFilter.java
(original)
+++
manifoldcf/trunk/connectors/documentfilter/connector/src/main/java/org/apache/manifoldcf/agents/transformation/documentfilter/DocumentFilter.java
Thu Sep 18 22:43:19 2014
@@ -73,7 +73,7 @@ public class DocumentFilter extends org.
public boolean checkMimeTypeIndexable(VersionContext outputDescription,
String mimeType, IOutputCheckActivity activities)
throws ManifoldCFException, ServiceInterruption
{
- SpecPacker sp = new SpecPacker(outputDescription.getVersionString());
+ SpecPacker sp = new SpecPacker(outputDescription.getSpecification());
if (sp.checkMimeType(mimeType))
return super.checkMimeTypeIndexable(outputDescription, mimeType,
activities);
else
@@ -83,7 +83,7 @@ public class DocumentFilter extends org.
@Override
public boolean checkLengthIndexable(VersionContext outputDescription, long
length, IOutputCheckActivity activities)
throws ManifoldCFException, ServiceInterruption {
- SpecPacker sp = new SpecPacker(outputDescription.getVersionString());
+ SpecPacker sp = new SpecPacker(outputDescription.getSpecification());
if (sp.checkLengthIndexable(length))
return super.checkLengthIndexable(outputDescription, length, activities);
else
@@ -93,7 +93,7 @@ public class DocumentFilter extends org.
@Override
public boolean checkURLIndexable(VersionContext outputDescription, String
url, IOutputCheckActivity activities)
throws ManifoldCFException, ServiceInterruption {
- SpecPacker sp = new SpecPacker(outputDescription.getVersionString());
+ SpecPacker sp = new SpecPacker(outputDescription.getSpecification());
if (sp.checkURLIndexable(url))
return super.checkURLIndexable(outputDescription, url, activities);
else
@@ -384,48 +384,6 @@ public class DocumentFilter extends org.
fillSet(this.mimeTypes, mimeTypes);
}
- public SpecPacker(String packedString) {
-
- int index = 0;
-
- // Max length
- if (packedString.length() > index) {
- if (packedString.charAt(index++) == '+') {
- final StringBuilder sb = new StringBuilder();
- index = unpack(sb,packedString,index,'+');
- this.lengthCutoff = new Long(sb.toString());
- } else
- this.lengthCutoff = null;
- } else
- this.lengthCutoff = null;
-
- // Mime types
- final List<String> mimeBuffer = new ArrayList<String>();
- index = unpackList(mimeBuffer,packedString,index,'+');
- for (String mimeType : mimeBuffer) {
- this.mimeTypes.add(mimeType);
- }
-
- // Extensions
- final List<String> extensionsBuffer = new ArrayList<String>();
- index = unpackList(extensionsBuffer,packedString,index,'+');
- for (String extension : extensionsBuffer) {
- this.extensions.add(extension);
- }
-
- // Min length
- if (packedString.length() > index) {
- if (packedString.charAt(index++) == '+') {
- final StringBuilder sb = new StringBuilder();
- index = unpack(sb,packedString,index,'+');
- this.minLength = new Long(sb.toString());
- } else
- this.minLength = null;
- } else
- this.minLength = null;
-
- }
-
public String toPackedString() {
StringBuilder sb = new StringBuilder();
int i;
Modified:
manifoldcf/trunk/connectors/forcedmetadata/connector/src/main/java/org/apache/manifoldcf/agents/transformation/forcedmetadata/ForcedMetadataConnector.java
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/forcedmetadata/connector/src/main/java/org/apache/manifoldcf/agents/transformation/forcedmetadata/ForcedMetadataConnector.java?rev=1626097&r1=1626096&r2=1626097&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/forcedmetadata/connector/src/main/java/org/apache/manifoldcf/agents/transformation/forcedmetadata/ForcedMetadataConnector.java
(original)
+++
manifoldcf/trunk/connectors/forcedmetadata/connector/src/main/java/org/apache/manifoldcf/agents/transformation/forcedmetadata/ForcedMetadataConnector.java
Thu Sep 18 22:43:19 2014
@@ -89,7 +89,7 @@ public class ForcedMetadataConnector ext
throws ManifoldCFException, ServiceInterruption, IOException
{
// Unpack the forced metadata
- SpecPacker sp = new SpecPacker(pipelineDescription.getVersionString());
+ SpecPacker sp = new SpecPacker(pipelineDescription.getSpecification());
// We have to create a copy of the Repository Document, since we might be
rearranging things
RepositoryDocument docCopy = document.duplicate();
docCopy.clearFields();
@@ -495,42 +495,6 @@ public class ForcedMetadataConnector ext
this.keepAllMetadata = keepAllMetadata;
}
- public SpecPacker(String packedString) {
-
- int index = 0;
-
- // Mappings
- final List<String> packedMappings = new ArrayList<String>();
- index = unpackList(packedMappings,packedString,index,'+');
- String[] fixedList = new String[2];
- for (String packedMapping : packedMappings) {
- unpackFixedList(fixedList,packedMapping,0,':');
- sourceTargets.put(fixedList[0], fixedList[1]);
- }
-
- // Keep all metadata
- if (packedString.length() > index)
- keepAllMetadata = (packedString.charAt(index++) == '+');
- else
- keepAllMetadata = true;
-
- List<String> keys = new ArrayList<String>();
- index = unpackList(keys,packedString,index,'+');
- // For each key, unpack its list of values
- for (String key : keys)
- {
- List<String> values = new ArrayList<String>();
- index = unpackList(values,packedString,index,'+');
- Set<String> valueSet = new HashSet<String>();
- for (String value : values)
- {
- valueSet.add(value);
- }
- parameters.put(key,valueSet);
- }
-
- }
-
public String toPackedString() {
StringBuilder sb = new StringBuilder();
int i;
Modified:
manifoldcf/trunk/connectors/tika/connector/src/main/java/org/apache/manifoldcf/agents/transformation/tika/TikaExtractor.java
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/tika/connector/src/main/java/org/apache/manifoldcf/agents/transformation/tika/TikaExtractor.java?rev=1626097&r1=1626096&r2=1626097&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/tika/connector/src/main/java/org/apache/manifoldcf/agents/transformation/tika/TikaExtractor.java
(original)
+++
manifoldcf/trunk/connectors/tika/connector/src/main/java/org/apache/manifoldcf/agents/transformation/tika/TikaExtractor.java
Thu Sep 18 22:43:19 2014
@@ -160,7 +160,7 @@ public class TikaExtractor extends org.a
return DOCUMENTSTATUS_REJECTED;
}
- SpecPacker sp = new SpecPacker(pipelineDescription.getVersionString());
+ SpecPacker sp = new SpecPacker(pipelineDescription.getSpecification());
// Tika's API reads from an input stream and writes to an output Writer.
// Since a RepositoryDocument includes readers and inputstreams
exclusively, AND all downstream
@@ -774,33 +774,6 @@ public class TikaExtractor extends org.a
this.ignoreTikaException = ignoreTikaException;
}
- public SpecPacker(String packedString) {
-
- int index = 0;
-
- // Mappings
- final List<String> packedMappings = new ArrayList<String>();
- index = unpackList(packedMappings,packedString,index,'+');
- String[] fixedList = new String[2];
- for (String packedMapping : packedMappings) {
- unpackFixedList(fixedList,packedMapping,0,':');
- sourceTargets.put(fixedList[0], fixedList[1]);
- }
-
- // Keep all metadata
- if (packedString.length() > index)
- keepAllMetadata = (packedString.charAt(index++) == '+');
- else
- keepAllMetadata = true;
-
- // Ignore tika exception
- if (packedString.length() > index)
- ignoreTikaException = (packedString.charAt(index++) == '+');
- else
- ignoreTikaException = true;
-
- }
-
public String toPackedString() {
StringBuilder sb = new StringBuilder();
int i;