public class GTSConnector
extends org.apache.manifoldcf.agents.output.BaseOutputConnector
| Modifier and Type | Class and Description |
|---|---|
protected static class |
GTSConnector.ReaderListener
Reader listener object that extracts the app name
|
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
_rcsid |
protected static int |
DT_COMPOUND_DOC |
protected static int |
DT_MSEXCEL |
protected static int |
DT_MSOUTLOOK |
protected static int |
DT_MSPOWERPOINT |
protected static int |
DT_MSWORD |
protected static int |
DT_PDF |
protected static int |
DT_TEXT |
protected static int |
DT_UNKNOWN |
protected static int |
DT_ZERO |
static java.lang.String |
INGEST_ACTIVITY
Ingestion activity
|
protected static java.lang.String[] |
ingestableMimeTypeArray |
protected static java.util.Map |
ingestableMimeTypeMap |
protected HttpPoster |
poster
Local data
|
static java.lang.String |
REMOVE_ACTIVITY
Document removal activity
|
| Constructor and Description |
|---|
GTSConnector()
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
int |
addOrReplaceDocumentWithException(java.lang.String documentURI,
org.apache.manifoldcf.core.interfaces.VersionContext pipelineDescription,
org.apache.manifoldcf.agents.interfaces.RepositoryDocument document,
java.lang.String authorityNameString,
org.apache.manifoldcf.agents.interfaces.IOutputAddActivity activities)
Add (or replace) a document in the output data store using the connector.
|
java.lang.String |
check()
Test the connection.
|
boolean |
checkDocumentIndexable(org.apache.manifoldcf.core.interfaces.VersionContext outputDescription,
java.io.File localFile,
org.apache.manifoldcf.agents.interfaces.IOutputCheckActivity activities)
Pre-determine whether a document (passed here as a File object) is indexable by this connector.
|
boolean |
checkMimeTypeIndexable(org.apache.manifoldcf.core.interfaces.VersionContext outputDescription,
java.lang.String mimeType,
org.apache.manifoldcf.agents.interfaces.IOutputCheckActivity activities)
Detect if a mime type is indexable or not.
|
void |
connect(org.apache.manifoldcf.core.interfaces.ConfigParams configParameters)
Connect.
|
void |
disconnect()
Close the connection.
|
protected static int |
fingerprint(java.io.File file)
Fingerprint a file!
Pass in the name of the (local) temporary file that we should be looking at.
|
java.lang.String[] |
getActivitiesList()
Return the list of activities that this connector supports (i.e.
|
protected static java.lang.String |
getAppName(java.io.File documentPath)
Get a binary document's APPNAME field, or return null if the document
does not seem to be an OLE compound document.
|
org.apache.manifoldcf.core.interfaces.VersionContext |
getPipelineDescription(org.apache.manifoldcf.core.interfaces.Specification spec)
Get an output version string, given an output specification.
|
protected void |
getSession()
Set up a session
|
protected static java.lang.String |
hexprint(byte x) |
protected static boolean |
isStrange(byte x)
Check if character is not typical ASCII.
|
protected static boolean |
isText(byte[] beginChunk,
int chunkLength)
Test to see if a document is text or not.
|
protected static boolean |
isWhiteSpace(byte x)
Check if a byte is a whitespace character.
|
protected static char |
nibbleprint(int x) |
void |
outputConfigurationBody(org.apache.manifoldcf.core.interfaces.IThreadContext threadContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters,
java.lang.String tabName)
Output the configuration body section.
|
void |
outputConfigurationHeader(org.apache.manifoldcf.core.interfaces.IThreadContext threadContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters,
java.util.List<java.lang.String> tabsArray)
Output the configuration header section.
|
void |
outputSpecificationBody(org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.Specification os,
int connectionSequenceNumber,
int actualSequenceNumber,
java.lang.String tabName)
Output the specification body section.
|
void |
outputSpecificationHeader(org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.Specification os,
int connectionSequenceNumber,
java.util.List<java.lang.String> tabsArray)
Output the specification header section.
|
java.lang.String |
processConfigurationPost(org.apache.manifoldcf.core.interfaces.IThreadContext threadContext,
org.apache.manifoldcf.core.interfaces.IPostParameters variableContext,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters)
Process a configuration post.
|
java.lang.String |
processSpecificationPost(org.apache.manifoldcf.core.interfaces.IPostParameters variableContext,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.Specification os,
int connectionSequenceNumber)
Process a specification post.
|
protected static int |
recognizeApp(java.lang.String appName)
Translate a string application name to one of the kinds of documents
we care about.
|
void |
removeDocument(java.lang.String documentURI,
java.lang.String outputDescription,
org.apache.manifoldcf.agents.interfaces.IOutputRemoveActivity activities)
Remove a document using the connector.
|
void |
viewConfiguration(org.apache.manifoldcf.core.interfaces.IThreadContext threadContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters)
View configuration.
|
void |
viewSpecification(org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.Specification os,
int connectionSequenceNumber)
View specification.
|
checkDateIndexable, checkLengthIndexable, checkURLIndexable, getFormCheckJavascriptMethodName, getFormPresaveCheckJavascriptMethodName, noteAllRecordsRemoved, noteJobComplete, requestInfoclearThreadContext, deinstall, getConfiguration, install, isConnected, outputConfigurationBody, outputConfigurationHeader, outputConfigurationHeader, pack, packFixedList, packList, packList, poll, processConfigurationPost, setThreadContext, unpack, unpackFixedList, unpackList, viewConfigurationpublic static final java.lang.String _rcsid
public static final java.lang.String INGEST_ACTIVITY
public static final java.lang.String REMOVE_ACTIVITY
protected static final int DT_UNKNOWN
protected static final int DT_COMPOUND_DOC
protected static final int DT_MSWORD
protected static final int DT_MSEXCEL
protected static final int DT_MSPOWERPOINT
protected static final int DT_MSOUTLOOK
protected static final int DT_TEXT
protected static final int DT_ZERO
protected static final int DT_PDF
protected HttpPoster poster
protected static final java.lang.String[] ingestableMimeTypeArray
protected static final java.util.Map ingestableMimeTypeMap
public java.lang.String[] getActivitiesList()
getActivitiesList in interface org.apache.manifoldcf.agents.interfaces.IOutputConnectorgetActivitiesList in class org.apache.manifoldcf.agents.output.BaseOutputConnectorpublic void connect(org.apache.manifoldcf.core.interfaces.ConfigParams configParameters)
connect in interface org.apache.manifoldcf.core.interfaces.IConnectorconnect in class org.apache.manifoldcf.core.connector.BaseConnectorconfigParameters - is the set of configuration parameters, which
in this case describe the target appliance, basic auth configuration, etc. (This formerly came
out of the ini file.)public void disconnect()
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
disconnect in interface org.apache.manifoldcf.core.interfaces.IConnectordisconnect in class org.apache.manifoldcf.core.connector.BaseConnectororg.apache.manifoldcf.core.interfaces.ManifoldCFExceptionprotected void getSession()
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionpublic java.lang.String check()
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
check in interface org.apache.manifoldcf.core.interfaces.IConnectorcheck in class org.apache.manifoldcf.core.connector.BaseConnectororg.apache.manifoldcf.core.interfaces.ManifoldCFExceptionpublic boolean checkMimeTypeIndexable(org.apache.manifoldcf.core.interfaces.VersionContext outputDescription,
java.lang.String mimeType,
org.apache.manifoldcf.agents.interfaces.IOutputCheckActivity activities)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
checkMimeTypeIndexable in interface org.apache.manifoldcf.agents.interfaces.IPipelineConnectorcheckMimeTypeIndexable in class org.apache.manifoldcf.agents.output.BaseOutputConnectormimeType - is the mime type of the document.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionpublic boolean checkDocumentIndexable(org.apache.manifoldcf.core.interfaces.VersionContext outputDescription,
java.io.File localFile,
org.apache.manifoldcf.agents.interfaces.IOutputCheckActivity activities)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
checkDocumentIndexable in interface org.apache.manifoldcf.agents.interfaces.IPipelineConnectorcheckDocumentIndexable in class org.apache.manifoldcf.agents.output.BaseOutputConnectorlocalFile - is the local file to check.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionpublic org.apache.manifoldcf.core.interfaces.VersionContext getPipelineDescription(org.apache.manifoldcf.core.interfaces.Specification spec)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
getPipelineDescription in interface org.apache.manifoldcf.agents.interfaces.IPipelineConnectorgetPipelineDescription in class org.apache.manifoldcf.agents.output.BaseOutputConnectorspec - is the current output specification for the job that is doing the crawling.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionpublic int addOrReplaceDocumentWithException(java.lang.String documentURI,
org.apache.manifoldcf.core.interfaces.VersionContext pipelineDescription,
org.apache.manifoldcf.agents.interfaces.RepositoryDocument document,
java.lang.String authorityNameString,
org.apache.manifoldcf.agents.interfaces.IOutputAddActivity activities)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption,
java.io.IOException
addOrReplaceDocumentWithException in interface org.apache.manifoldcf.agents.interfaces.IPipelineConnectoraddOrReplaceDocumentWithException in class org.apache.manifoldcf.agents.output.BaseOutputConnectordocumentURI - is the URI of the document. The URI is presumed to be the unique identifier which the output data store will use to process
and serve the document. This URI is constructed by the repository connector which fetches the document, and is thus universal across all output connectors.pipelineDescription - includes the description string that was constructed for this document by the getOutputDescription() method.document - is the document data to be processed (handed to the output data store).authorityNameString - is the name of the authority responsible for authorizing any access tokens passed in with the repository document. May be null.activities - is the handle to an object that the implementer of a pipeline connector may use to perform operations, such as logging processing activity,
or sending a modified document to the next stage in the pipeline.java.io.IOException - only if there's a stream error reading the document data.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionpublic void removeDocument(java.lang.String documentURI,
java.lang.String outputDescription,
org.apache.manifoldcf.agents.interfaces.IOutputRemoveActivity activities)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
removeDocument in interface org.apache.manifoldcf.agents.interfaces.IOutputConnectorremoveDocument in class org.apache.manifoldcf.agents.output.BaseOutputConnectordocumentURI - is the URI of the document. The URI is presumed to be the unique identifier which the output data store will use to process
and serve the document. This URI is constructed by the repository connector which fetches the document, and is thus universal across all output connectors.outputDescription - is the last description string that was constructed for this document by the getOutputDescription() method above.activities - is the handle to an object that the implementer of an output connector may use to perform operations, such as logging processing activity.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionpublic void outputConfigurationHeader(org.apache.manifoldcf.core.interfaces.IThreadContext threadContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters,
java.util.List<java.lang.String> tabsArray)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
java.io.IOException
outputConfigurationHeader in interface org.apache.manifoldcf.core.interfaces.IConnectoroutputConfigurationHeader in class org.apache.manifoldcf.core.connector.BaseConnectorthreadContext - is the local thread context.out - is the output to which any HTML should be sent.parameters - are the configuration parameters, as they currently exist, for this connection being configured.tabsArray - is an array of tab names. Add to this array any tab names that are specific to the connector.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionjava.io.IOExceptionpublic void outputConfigurationBody(org.apache.manifoldcf.core.interfaces.IThreadContext threadContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters,
java.lang.String tabName)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
java.io.IOException
outputConfigurationBody in interface org.apache.manifoldcf.core.interfaces.IConnectoroutputConfigurationBody in class org.apache.manifoldcf.core.connector.BaseConnectorthreadContext - is the local thread context.out - is the output to which any HTML should be sent.parameters - are the configuration parameters, as they currently exist, for this connection being configured.tabName - is the current tab name.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionjava.io.IOExceptionpublic java.lang.String processConfigurationPost(org.apache.manifoldcf.core.interfaces.IThreadContext threadContext,
org.apache.manifoldcf.core.interfaces.IPostParameters variableContext,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
processConfigurationPost in interface org.apache.manifoldcf.core.interfaces.IConnectorprocessConfigurationPost in class org.apache.manifoldcf.core.connector.BaseConnectorthreadContext - is the local thread context.variableContext - is the set of variables available from the post, including binary file post information.parameters - are the configuration parameters, as they currently exist, for this connection being configured.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionpublic void viewConfiguration(org.apache.manifoldcf.core.interfaces.IThreadContext threadContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
java.io.IOException
viewConfiguration in interface org.apache.manifoldcf.core.interfaces.IConnectorviewConfiguration in class org.apache.manifoldcf.core.connector.BaseConnectorthreadContext - is the local thread context.out - is the output to which any HTML should be sent.parameters - are the configuration parameters, as they currently exist, for this connection being configured.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionjava.io.IOExceptionpublic void outputSpecificationHeader(org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.Specification os,
int connectionSequenceNumber,
java.util.List<java.lang.String> tabsArray)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
java.io.IOException
outputSpecificationHeader in interface org.apache.manifoldcf.agents.interfaces.IPipelineConnectoroutputSpecificationHeader in class org.apache.manifoldcf.agents.output.BaseOutputConnectorout - is the output to which any HTML should be sent.locale - is the preferred local of the output.os - is the current pipeline specification for this connection.connectionSequenceNumber - is the unique number of this connection within the job.tabsArray - is an array of tab names. Add to this array any tab names that are specific to the connector.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionjava.io.IOExceptionpublic void outputSpecificationBody(org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.Specification os,
int connectionSequenceNumber,
int actualSequenceNumber,
java.lang.String tabName)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
java.io.IOException
outputSpecificationBody in interface org.apache.manifoldcf.agents.interfaces.IPipelineConnectoroutputSpecificationBody in class org.apache.manifoldcf.agents.output.BaseOutputConnectorout - is the output to which any HTML should be sent.locale - is the preferred local of the output.os - is the current pipeline specification for this job.connectionSequenceNumber - is the unique number of this connection within the job.actualSequenceNumber - is the connection within the job that has currently been selected.tabName - is the current tab name.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionjava.io.IOExceptionpublic java.lang.String processSpecificationPost(org.apache.manifoldcf.core.interfaces.IPostParameters variableContext,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.Specification os,
int connectionSequenceNumber)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
processSpecificationPost in interface org.apache.manifoldcf.agents.interfaces.IPipelineConnectorprocessSpecificationPost in class org.apache.manifoldcf.agents.output.BaseOutputConnectorvariableContext - contains the post data, including binary file-upload information.locale - is the preferred local of the output.os - is the current pipeline specification for this job.connectionSequenceNumber - is the unique number of this connection within the job.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionpublic void viewSpecification(org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.Specification os,
int connectionSequenceNumber)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
java.io.IOException
viewSpecification in interface org.apache.manifoldcf.agents.interfaces.IPipelineConnectorviewSpecification in class org.apache.manifoldcf.agents.output.BaseOutputConnectorout - is the output to which any HTML should be sent.locale - is the preferred local of the output.connectionSequenceNumber - is the unique number of this connection within the job.os - is the current pipeline specification for this job.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionjava.io.IOExceptionprotected static int fingerprint(java.io.File file)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionprotected static java.lang.String getAppName(java.io.File documentPath)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionprotected static int recognizeApp(java.lang.String appName)
protected static boolean isText(byte[] beginChunk,
int chunkLength)
protected static boolean isStrange(byte x)
protected static boolean isWhiteSpace(byte x)
protected static java.lang.String hexprint(byte x)
protected static char nibbleprint(int x)