public class LivelinkConnector
extends org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnector
| Modifier and Type | Class and Description |
|---|---|
protected class |
LivelinkConnector.CategoryPathAccumulator
This class caches the category path strings associated with a given category object identifier.
|
protected class |
LivelinkConnector.DocumentReadingThread
This thread performs a LAPI FetchVersion command, streaming the resulting
document back through a XThreadInputStream to the invoking thread.
|
protected static class |
LivelinkConnector.ExecuteMethodThread
This thread does the actual socket communication with the server.
|
protected class |
LivelinkConnector.GetAttributeValueThread |
protected class |
LivelinkConnector.GetCategoryAttributesThread |
protected class |
LivelinkConnector.GetCategoryVersionThread |
protected class |
LivelinkConnector.GetObjectCategoryIDsThread |
protected class |
LivelinkConnector.GetObjectInfoThread
Thread we can abandon that gets object information for a volume and an id.
|
protected class |
LivelinkConnector.GetObjectRightsThread |
protected class |
LivelinkConnector.GetSessionThread |
protected class |
LivelinkConnector.GetUserInfoThread
Thread we can abandon that gets user information for a userID.
|
protected class |
LivelinkConnector.GetVersionInfoThread
Thread we can abandon that gets version information for a volume and an id and a revision.
|
protected class |
LivelinkConnector.ListObjectsThread |
protected class |
LivelinkConnector.ListUsersThread
Thread we can abandon that lists all users (except admin).
|
protected class |
LivelinkConnector.LivelinkContext
Local cache for various kinds of objects that may be useful more than once.
|
protected class |
LivelinkConnector.MetadataDescription
Class that manages to find catid's and attribute names that have been specified.
|
protected static class |
LivelinkConnector.MetadataItem
Class that describes a metadata catid and attribute set.
|
protected static class |
LivelinkConnector.MetadataPathItem
Class that describes a metadata catid and path.
|
protected class |
LivelinkConnector.ObjectInformation
This object represents an object information cache.
|
static class |
LivelinkConnector.Pair<L,R>
A class to store a pair structure, where none of the properties can behave as a key.
|
protected class |
LivelinkConnector.RootValue
Class representing a root value object, plus remainder string.
|
protected class |
LivelinkConnector.SystemMetadataDescription
Class that tracks paths associated with nodes, and also keeps track of the name
of the metadata attribute to use for the path.
|
protected class |
LivelinkConnector.UserInformation
This object represents a cache of user information.
|
protected class |
LivelinkConnector.VersionInformation
This object represents a cache of version information.
|
protected static class |
LivelinkConnector.VolumeAndId
Class for returning volume id/folder id combination on path lookup.
|
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
_rcsid |
protected static java.lang.String |
CATEGORY_NAME |
protected static java.lang.String |
ENTWKSPACE_NAME |
protected static java.lang.String |
GENERAL_CREATIONDATE_FIELD |
protected static java.lang.String |
GENERAL_CREATOR |
protected static java.lang.String |
GENERAL_DESCRIPTION_FIELD |
protected static java.lang.String |
GENERAL_MODIFIER |
protected static java.lang.String |
GENERAL_MODIFYDATE_FIELD |
protected static java.lang.String |
GENERAL_NAME_FIELD |
protected static java.lang.String |
GENERAL_OWNER |
protected static java.lang.String |
GENERAL_PARENTID |
currentContext, paramsGLOBAL_DENY_TOKEN, JOBMODE_CONTINUOUS, JOBMODE_ONCEONLY, MODEL_ADD, MODEL_ADD_CHANGE, MODEL_ADD_CHANGE_DELETE, MODEL_ALL, MODEL_CHAINED_ADD, MODEL_CHAINED_ADD_CHANGE, MODEL_CHAINED_ADD_CHANGE_DELETE, MODEL_PARTIAL| Constructor and Description |
|---|
LivelinkConnector()
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
addSeedDocuments(org.apache.manifoldcf.crawler.interfaces.ISeedingActivity activities,
org.apache.manifoldcf.core.interfaces.Specification spec,
java.lang.String lastSeedVersion,
long seedTime,
int jobMode)
Queue "seed" documents.
|
protected static int |
assessRetry(int sanityRetryCount,
org.apache.manifoldcf.core.interfaces.ManifoldCFException e)
Do a retry, or throw an exception if the retry count has been exhausted
|
java.lang.String |
check()
Check status of connection.
|
protected static boolean |
checkInclude(java.lang.String filename,
org.apache.manifoldcf.core.interfaces.Specification documentSpecification)
Check if a file or directory should be included, given a document specification.
|
protected boolean |
checkIngest(LivelinkConnector.LivelinkContext llc,
int objID,
org.apache.manifoldcf.core.interfaces.Specification documentSpecification)
Check if a file should be ingested, given a document specification.
|
protected static boolean |
checkMatch(java.lang.String sourceMatch,
int sourceIndex,
java.lang.String match)
Check a match between two strings with wildcards.
|
void |
connect(org.apache.manifoldcf.core.interfaces.ConfigParams configParams)
Connect.
|
protected java.lang.String |
convertToIngestURI(java.lang.String documentIdentifier)
Convert a document identifier to a relative URI to read data from.
|
protected java.lang.String |
convertToViewURI(java.lang.String documentIdentifier)
Convert a document identifier to a URI to view.
|
protected java.lang.String |
createLivelinkLoginURI()
Create the login URI.
|
void |
disconnect()
Close the connection.
|
protected static int |
executeMethodViaThread(org.apache.http.client.HttpClient client,
org.apache.http.client.methods.HttpRequestBase executeMethod) |
protected static void |
fillInDocumentAccessTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters)
Fill in Document Access tab
|
protected static void |
fillInDocumentViewTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters)
Fill in Document View tab
|
protected static void |
fillInFiltersTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.Specification ds)
Fill in filters tab
|
protected static void |
fillInMetadataTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.Specification ds)
Fill in Metadata tab
|
protected static void |
fillInPathsTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.Specification ds)
Fill in paths tab
|
protected static void |
fillInSecurityTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.Specification ds)
Fill in security tab
|
protected static void |
fillInServerTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters)
Fill in Server tab
|
protected void |
fillInTransientMetadataInfo(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
int connectionSequenceNumber)
Fill in the transient portion of the Metadata tab
|
protected void |
fillInTransientPathsInfo(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
int connectionSequenceNumber)
Fill in the transient portion of the Paths tab
|
java.lang.String[] |
getActivitiesList()
List the activities we might report on.
|
protected java.lang.String[] |
getAttributeValue(com.opentext.api.LLValue categoryVersion,
java.lang.String attributeName)
Get an attribute value from a category version.
|
java.lang.String[] |
getBinNames(java.lang.String documentIdentifier)
Get the bin name string for a document identifier.
|
protected java.lang.String[] |
getCategoryAttributes(int catObjectID)
Given a category path, get a list of legal attribute names.
|
protected java.lang.String[] |
getCategoryAttributes(LivelinkConnector.LivelinkContext llc,
java.lang.String pathString) |
java.lang.String[] |
getCategoryAttributes(java.lang.String pathString)
Given a category path, get a list of legal attribute names.
|
protected int |
getCategoryId(LivelinkConnector.RootValue rv)
Rootvalue version of getCategoryId.
|
protected com.opentext.api.LLValue |
getCatVersion(int objID,
int catID)
Get a category version for document.
|
protected java.lang.String[] |
getChildCategories(LivelinkConnector.LivelinkContext llc,
java.lang.String pathString)
Given a path string, get a list of categories under that node.
|
java.lang.String[] |
getChildCategoryNames(java.lang.String pathString)
Given a path string, get a list of categories under that node.
|
java.lang.String[] |
getChildFolderNames(java.lang.String pathString)
Given a path string, get a list of folders and projects under that node.
|
protected java.lang.String[] |
getChildFolders(LivelinkConnector.LivelinkContext llc,
java.lang.String pathString)
Given a path string, get a list of folders and projects under that node.
|
int |
getConnectorModel()
Tell the world what model this connector uses for getDocumentIdentifiers().
|
protected org.apache.http.HttpHost |
getHost() |
protected org.apache.http.client.HttpClient |
getInitializedClient(java.lang.String contextMsg)
Initialize a livelink client connection
|
int |
getMaxDocumentRequest()
Get the maximum number of documents to amalgamate together into one batch, for this connector.
|
protected int[] |
getObjectCategoryIDs(int vol,
int id)
Get category IDs associated with an object.
|
protected int[] |
getObjectRights(int vol,
int objID)
Get an object's rights.
|
protected LivelinkConnector.VolumeAndId |
getPathId(LivelinkConnector.RootValue rv)
RootValue version of getPathId.
|
protected void |
getSession() |
protected void |
getSessionParameters() |
java.lang.String[] |
getWorkspaceNames()
Get the allowed workspace names.
|
protected static void |
handleHttpException(java.lang.String contextMsg,
org.apache.http.HttpException e) |
protected static void |
handleIOException(java.lang.String contextMsg,
java.io.IOException e) |
protected int |
handleLivelinkRuntimeException(java.lang.RuntimeException e,
int sanityRetryCount,
boolean failIfTimeout)
Interpret runtimeexception to search for livelink API errors.
|
protected void |
ingestFromLiveLink(LivelinkConnector.LivelinkContext llc,
java.lang.String documentIdentifier,
java.lang.String version,
java.lang.String[] actualAcls,
java.lang.String[] denyAcls,
java.lang.String[] categoryPaths,
org.apache.manifoldcf.crawler.interfaces.IProcessActivity activities,
LivelinkConnector.MetadataDescription desc,
LivelinkConnector.SystemMetadataDescription sDesc)
Connects to the specified Livelink document using HTTP protocol
|
boolean |
isConnected()
This method is called to assess whether to count this connector instance should
actually be counted as being connected.
|
protected java.lang.String[] |
lookupTokens(int[] rights,
LivelinkConnector.ObjectInformation objInfo)
Build a set of actual acls given a set of rights
|
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 ds,
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 ds,
int connectionSequenceNumber,
java.util.List<java.lang.String> tabsArray)
Output the specification header section.
|
protected static java.lang.String |
packCategoryAttribute(java.lang.String category,
java.lang.String attribute)
Pack category and attribute
|
void |
poll()
This method is periodically called for all connectors that are connected but not
in active use.
|
protected static boolean |
processCheck(boolean caseSensitive,
java.lang.String sourceMatch,
int sourceIndex,
java.lang.String match,
int matchIndex)
Recursive worker method for checkMatch.
|
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.
|
void |
processDocuments(java.lang.String[] documentIdentifiers,
org.apache.manifoldcf.crawler.interfaces.IExistingVersions statuses,
org.apache.manifoldcf.core.interfaces.Specification spec,
org.apache.manifoldcf.crawler.interfaces.IProcessActivity activities,
int jobMode,
boolean usesDefaultAuthority)
Process a set of documents.
|
java.lang.String |
processSpecificationPost(org.apache.manifoldcf.core.interfaces.IPostParameters variableContext,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.Specification ds,
int connectionSequenceNumber)
Process a specification post.
|
boolean |
requestInfo(org.apache.manifoldcf.core.interfaces.Configuration output,
java.lang.String command)
Request arbitrary connector information.
|
protected static void |
unpackCategoryAttribute(java.lang.StringBuilder category,
java.lang.StringBuilder attribute,
java.lang.String value)
Unpack category and attribute
|
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 ds,
int connectionSequenceNumber)
View specification.
|
getFormCheckJavascriptMethodName, getFormPresaveCheckJavascriptMethodName, getRelationshipTypesclearThreadContext, deinstall, getConfiguration, install, outputConfigurationBody, outputConfigurationHeader, outputConfigurationHeader, pack, packFixedList, packList, packList, processConfigurationPost, setThreadContext, unpack, unpackFixedList, unpackList, viewConfigurationpublic static final java.lang.String _rcsid
protected static final java.lang.String GENERAL_NAME_FIELD
protected static final java.lang.String GENERAL_DESCRIPTION_FIELD
protected static final java.lang.String GENERAL_CREATIONDATE_FIELD
protected static final java.lang.String GENERAL_MODIFYDATE_FIELD
protected static final java.lang.String GENERAL_OWNER
protected static final java.lang.String GENERAL_CREATOR
protected static final java.lang.String GENERAL_MODIFIER
protected static final java.lang.String GENERAL_PARENTID
protected static final java.lang.String CATEGORY_NAME
protected static final java.lang.String ENTWKSPACE_NAME
public int getConnectorModel()
getConnectorModel in interface org.apache.manifoldcf.crawler.interfaces.IRepositoryConnectorgetConnectorModel in class org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnectorpublic void connect(org.apache.manifoldcf.core.interfaces.ConfigParams configParams)
connect in interface org.apache.manifoldcf.core.interfaces.IConnectorconnect in class org.apache.manifoldcf.core.connector.BaseConnectorconfigParams - are the configuration parameters for this connection.public java.lang.String[] getBinNames(java.lang.String documentIdentifier)
getBinNames in interface org.apache.manifoldcf.crawler.interfaces.IRepositoryConnectorgetBinNames in class org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnectordocumentIdentifier - is the document identifier.protected org.apache.http.HttpHost getHost()
protected void getSessionParameters()
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionprotected void getSession()
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected static int executeMethodViaThread(org.apache.http.client.HttpClient client,
org.apache.http.client.methods.HttpRequestBase executeMethod)
throws java.lang.InterruptedException,
org.apache.http.HttpException,
java.io.IOException
java.lang.InterruptedExceptionorg.apache.http.HttpExceptionjava.io.IOExceptionpublic 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 void poll()
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
poll in interface org.apache.manifoldcf.core.interfaces.IConnectorpoll in class org.apache.manifoldcf.core.connector.BaseConnectororg.apache.manifoldcf.core.interfaces.ManifoldCFExceptionpublic boolean isConnected()
isConnected in interface org.apache.manifoldcf.core.interfaces.IConnectorisConnected in class org.apache.manifoldcf.core.connector.BaseConnectorpublic 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.ManifoldCFExceptionpublic java.lang.String[] getActivitiesList()
getActivitiesList in interface org.apache.manifoldcf.crawler.interfaces.IRepositoryConnectorgetActivitiesList in class org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnectorprotected java.lang.String convertToIngestURI(java.lang.String documentIdentifier)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
documentIdentifier - is the document identifier.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionprotected java.lang.String convertToViewURI(java.lang.String documentIdentifier)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
documentIdentifier - is the document identifier.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionpublic boolean requestInfo(org.apache.manifoldcf.core.interfaces.Configuration output,
java.lang.String command)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
requestInfo in interface org.apache.manifoldcf.crawler.interfaces.IRepositoryConnectorrequestInfo in class org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnectoroutput - is the response object, to be filled in by this method.command - is the command, which is taken directly from the API request.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionpublic java.lang.String addSeedDocuments(org.apache.manifoldcf.crawler.interfaces.ISeedingActivity activities,
org.apache.manifoldcf.core.interfaces.Specification spec,
java.lang.String lastSeedVersion,
long seedTime,
int jobMode)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
addSeedDocuments in interface org.apache.manifoldcf.crawler.interfaces.IRepositoryConnectoraddSeedDocuments in class org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnectoractivities - is the interface this method should use to perform whatever framework actions are desired.spec - is a document specification (that comes from the job).seedTime - is the end of the time range of documents to consider, exclusive.lastSeedVersion - is the last seeding version string for this job, or null if the job has no previous seeding version string.jobMode - is an integer describing how the job is being run, whether continuous or once-only.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionpublic void processDocuments(java.lang.String[] documentIdentifiers,
org.apache.manifoldcf.crawler.interfaces.IExistingVersions statuses,
org.apache.manifoldcf.core.interfaces.Specification spec,
org.apache.manifoldcf.crawler.interfaces.IProcessActivity activities,
int jobMode,
boolean usesDefaultAuthority)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
processDocuments in interface org.apache.manifoldcf.crawler.interfaces.IRepositoryConnectorprocessDocuments in class org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnectordocumentIdentifiers - is the set of document identifiers to process.statuses - are the currently-stored document versions for each document in the set of document identifiers
passed in above.activities - is the interface this method should use to queue up new document references
and ingest documents.jobMode - is an integer describing how the job is being run, whether continuous or once-only.usesDefaultAuthority - will be true only if the authority in use for these documents is the default one.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionpublic int getMaxDocumentRequest()
getMaxDocumentRequest in interface org.apache.manifoldcf.crawler.interfaces.IRepositoryConnectorgetMaxDocumentRequest in class org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnectorpublic 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.IOExceptionprotected static void fillInServerTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters)
protected static void fillInDocumentAccessTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters)
protected static void fillInDocumentViewTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.ConfigParams parameters)
public 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 ds,
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.crawler.interfaces.IRepositoryConnectoroutputSpecificationHeader in class org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnectorout - is the output to which any HTML should be sent.locale - is the locale the output is preferred to be in.ds - is the current document specification for this job.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 ds,
int connectionSequenceNumber,
int actualSequenceNumber,
java.lang.String tabName)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
java.io.IOException
outputSpecificationBody in interface org.apache.manifoldcf.crawler.interfaces.IRepositoryConnectoroutputSpecificationBody in class org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnectorout - is the output to which any HTML should be sent.locale - is the locale the output is preferred to be in.ds - is the current document 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. (actualSequenceNumber, tabName) form a unique tuple within
the job.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionjava.io.IOExceptionprotected static void fillInPathsTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.Specification ds)
protected void fillInTransientPathsInfo(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
int connectionSequenceNumber)
protected static void fillInFiltersTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.Specification ds)
protected static void fillInSecurityTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.Specification ds)
protected static void fillInMetadataTab(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
org.apache.manifoldcf.core.interfaces.IHTTPOutput out,
org.apache.manifoldcf.core.interfaces.Specification ds)
protected void fillInTransientMetadataInfo(java.util.Map<java.lang.String,java.lang.Object> velocityContext,
int connectionSequenceNumber)
public java.lang.String processSpecificationPost(org.apache.manifoldcf.core.interfaces.IPostParameters variableContext,
java.util.Locale locale,
org.apache.manifoldcf.core.interfaces.Specification ds,
int connectionSequenceNumber)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
processSpecificationPost in interface org.apache.manifoldcf.crawler.interfaces.IRepositoryConnectorprocessSpecificationPost in class org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnectorvariableContext - contains the post data, including binary file-upload information.locale - is the locale the output is preferred to be in.ds - is the current document 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 ds,
int connectionSequenceNumber)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
java.io.IOException
viewSpecification in interface org.apache.manifoldcf.crawler.interfaces.IRepositoryConnectorviewSpecification in class org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnectorout - is the output to which any HTML should be sent.locale - is the locale the output is preferred to be in.ds - is the current document specification for this job.connectionSequenceNumber - is the unique number of this connection within the job.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionjava.io.IOExceptionpublic java.lang.String[] getWorkspaceNames()
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionpublic java.lang.String[] getChildFolderNames(java.lang.String pathString)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
pathString - is the current path (folder names and project names, separated by dots (.)).org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionpublic java.lang.String[] getChildCategoryNames(java.lang.String pathString)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
pathString - is the current path (folder names and project names, separated by dots (.)).org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionpublic java.lang.String[] getCategoryAttributes(java.lang.String pathString)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
pathString - is the current path of a category (with path components separated by dots).org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected java.lang.String[] getCategoryAttributes(LivelinkConnector.LivelinkContext llc, java.lang.String pathString) throws org.apache.manifoldcf.core.interfaces.ManifoldCFException, org.apache.manifoldcf.agents.interfaces.ServiceInterruption
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected java.lang.String createLivelinkLoginURI()
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionprotected void ingestFromLiveLink(LivelinkConnector.LivelinkContext llc, java.lang.String documentIdentifier, java.lang.String version, java.lang.String[] actualAcls, java.lang.String[] denyAcls, java.lang.String[] categoryPaths, org.apache.manifoldcf.crawler.interfaces.IProcessActivity activities, LivelinkConnector.MetadataDescription desc, LivelinkConnector.SystemMetadataDescription sDesc) throws org.apache.manifoldcf.core.interfaces.ManifoldCFException, org.apache.manifoldcf.agents.interfaces.ServiceInterruption
documentIdentifier - is the document identifier (as far as the crawler knows).activities - is the process activity structure, so we can ingestorg.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected static void handleHttpException(java.lang.String contextMsg,
org.apache.http.HttpException e)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected static void handleIOException(java.lang.String contextMsg,
java.io.IOException e)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected org.apache.http.client.HttpClient getInitializedClient(java.lang.String contextMsg)
throws org.apache.manifoldcf.agents.interfaces.ServiceInterruption,
org.apache.manifoldcf.core.interfaces.ManifoldCFException
org.apache.manifoldcf.agents.interfaces.ServiceInterruptionorg.apache.manifoldcf.core.interfaces.ManifoldCFExceptionprotected static java.lang.String packCategoryAttribute(java.lang.String category,
java.lang.String attribute)
protected static void unpackCategoryAttribute(java.lang.StringBuilder category,
java.lang.StringBuilder attribute,
java.lang.String value)
protected java.lang.String[] getChildFolders(LivelinkConnector.LivelinkContext llc, java.lang.String pathString) throws org.apache.manifoldcf.core.interfaces.ManifoldCFException, org.apache.manifoldcf.agents.interfaces.ServiceInterruption
pathString - is the current path (folder names and project names, separated by dots (.)).org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected java.lang.String[] getChildCategories(LivelinkConnector.LivelinkContext llc, java.lang.String pathString) throws org.apache.manifoldcf.core.interfaces.ManifoldCFException, org.apache.manifoldcf.agents.interfaces.ServiceInterruption
pathString - is the current path (folder names and project names, separated by dots (.)).org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected java.lang.String[] getCategoryAttributes(int catObjectID)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
catObjectID - is the object id of the category.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected com.opentext.api.LLValue getCatVersion(int objID,
int catID)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected java.lang.String[] getAttributeValue(com.opentext.api.LLValue categoryVersion,
java.lang.String attributeName)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected int[] getObjectRights(int vol,
int objID)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
vol - is the volume idobjID - is the object idorg.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected java.lang.String[] lookupTokens(int[] rights,
LivelinkConnector.ObjectInformation objInfo)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected int[] getObjectCategoryIDs(int vol,
int id)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
vol - is the volume IDid - the object IDorg.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected LivelinkConnector.VolumeAndId getPathId(LivelinkConnector.RootValue rv) throws org.apache.manifoldcf.core.interfaces.ManifoldCFException, org.apache.manifoldcf.agents.interfaces.ServiceInterruption
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected int getCategoryId(LivelinkConnector.RootValue rv) throws org.apache.manifoldcf.core.interfaces.ManifoldCFException, org.apache.manifoldcf.agents.interfaces.ServiceInterruption
org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected static boolean checkInclude(java.lang.String filename,
org.apache.manifoldcf.core.interfaces.Specification documentSpecification)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
filename - is the name of the "file".documentSpecification - is the specification.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionprotected boolean checkIngest(LivelinkConnector.LivelinkContext llc, int objID, org.apache.manifoldcf.core.interfaces.Specification documentSpecification) throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
objID - is the file ID.documentSpecification - is the specification.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionprotected static boolean checkMatch(java.lang.String sourceMatch,
int sourceIndex,
java.lang.String match)
sourceMatch - is the expanded string (no wildcards)sourceIndex - is the starting point in the expanded string.match - is the wildcard-based string.protected static boolean processCheck(boolean caseSensitive,
java.lang.String sourceMatch,
int sourceIndex,
java.lang.String match,
int matchIndex)
caseSensitive - is true if file names are case sensitive.sourceMatch - is the source string (w/o wildcards)sourceIndex - is the current point in the source string.match - is the match string (w/wildcards)matchIndex - is the current point in the match string.protected int handleLivelinkRuntimeException(java.lang.RuntimeException e,
int sanityRetryCount,
boolean failIfTimeout)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException,
org.apache.manifoldcf.agents.interfaces.ServiceInterruption
e - is the RuntimeException caughtfailIfTimeout - is true if, for transient conditions, we want to signal failure if the timeout condition is acheived.org.apache.manifoldcf.core.interfaces.ManifoldCFExceptionorg.apache.manifoldcf.agents.interfaces.ServiceInterruptionprotected static int assessRetry(int sanityRetryCount,
org.apache.manifoldcf.core.interfaces.ManifoldCFException e)
throws org.apache.manifoldcf.core.interfaces.ManifoldCFException
org.apache.manifoldcf.core.interfaces.ManifoldCFException