org.apache.manifoldcf.crawler.jobs
Class HopFilterManager

java.lang.Object
  extended by org.apache.manifoldcf.core.database.BaseTable
      extended by org.apache.manifoldcf.crawler.jobs.HopFilterManager

public class HopFilterManager
extends BaseTable

This class manages the "hopfilters" table, which contains the hopcount filters for each job. It's separated from the main jobs table because we will need multiple hop filters per job.


Field Summary
static java.lang.String _rcsid
           
static java.lang.String linkTypeField
           
static java.lang.String maxHopsField
           
static java.lang.String ownerIDField
           
 
Fields inherited from class org.apache.manifoldcf.core.database.BaseTable
dbInterface, tableName
 
Constructor Summary
HopFilterManager(IThreadContext threadContext, IDBInterface database)
          Constructor.
 
Method Summary
 void deinstall()
          Uninstall.
 void deleteRows(java.lang.Long ownerID)
          Delete rows.
 void getRows(java.util.Map returnValues, java.lang.String ownerIDList, java.util.ArrayList ownerIDParams)
          Fill in a set of filters corresponding to a set of owner id's.
 void install(java.lang.String ownerTable, java.lang.String owningTablePrimaryKey)
          Install or upgrade.
 java.util.Map readRows(java.lang.Long id)
          Read rows for a given owner id.
 void writeRows(java.lang.Long ownerID, IJobDescription list)
          Write a filter list into the database.
 
Methods inherited from class org.apache.manifoldcf.core.database.BaseTable
addTableIndex, analyzeTable, beginTransaction, constructDistinctOnClause, constructOffsetLimitClause, constructRegexpClause, constructSubstringClause, endTransaction, getDatabaseCacheKey, getDBInterface, getMaxInClause, getMaxOrClause, getTableIndexes, getTableName, getTableSchema, getTransactionID, makeTableKey, noteModifications, performAddIndex, performAlter, performCreate, performDelete, performDrop, performInsert, performLock, performModification, performQuery, performQuery, performRemoveIndex, performUpdate, prepareRowForSave, readRow, reindexTable, signalRollback
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_rcsid

public static final java.lang.String _rcsid
See Also:
Constant Field Values

ownerIDField

public static final java.lang.String ownerIDField
See Also:
Constant Field Values

linkTypeField

public static final java.lang.String linkTypeField
See Also:
Constant Field Values

maxHopsField

public static final java.lang.String maxHopsField
See Also:
Constant Field Values
Constructor Detail

HopFilterManager

public HopFilterManager(IThreadContext threadContext,
                        IDBInterface database)
                 throws ManifoldCFException
Constructor.

Parameters:
threadContext - is the thread context.
database - is the database instance.
Throws:
ManifoldCFException
Method Detail

install

public void install(java.lang.String ownerTable,
                    java.lang.String owningTablePrimaryKey)
             throws ManifoldCFException
Install or upgrade.

Parameters:
ownerTable - is the name of the table that owns this one.
owningTablePrimaryKey - is the primary key of the owning table.
Throws:
ManifoldCFException

deinstall

public void deinstall()
               throws ManifoldCFException
Uninstall.

Throws:
ManifoldCFException

readRows

public java.util.Map readRows(java.lang.Long id)
                       throws ManifoldCFException
Read rows for a given owner id.

Parameters:
id - is the owner id.
Returns:
a map of link type to max hop count (as a Long).
Throws:
ManifoldCFException

getRows

public void getRows(java.util.Map returnValues,
                    java.lang.String ownerIDList,
                    java.util.ArrayList ownerIDParams)
             throws ManifoldCFException
Fill in a set of filters corresponding to a set of owner id's.

Parameters:
returnValues - is a map keyed by ownerID, with value of JobDescription.
ownerIDList - is the list of owner id's.
ownerIDParams - is the corresponding set of owner id parameters.
Throws:
ManifoldCFException

writeRows

public void writeRows(java.lang.Long ownerID,
                      IJobDescription list)
               throws ManifoldCFException
Write a filter list into the database.

Parameters:
ownerID - is the owning identifier.
list - is the job description to write hopcount filters for.
Throws:
ManifoldCFException

deleteRows

public void deleteRows(java.lang.Long ownerID)
                throws ManifoldCFException
Delete rows.

Parameters:
ownerID - is the owner whose rows to delete.
Throws:
ManifoldCFException