org.apache.manifoldcf.crawler.jobs
Class HopDeleteDeps

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

public class HopDeleteDeps
extends BaseTable

This class manages the table that keeps track of link deletion dependencies for cached hopcounts.


Field Summary
static java.lang.String _rcsid
           
static java.lang.String childIDHashField
           
static java.lang.String jobIDField
           
static java.lang.String linkTypeField
           
static java.lang.String ownerIDField
           
static java.lang.String parentIDHashField
           
 
Fields inherited from class org.apache.manifoldcf.core.database.BaseTable
dbInterface, tableName
 
Constructor Summary
HopDeleteDeps(IDBInterface database)
          Constructor.
 
Method Summary
 void analyzeTables()
          Analyze job tables that need analysis.
 void deinstall()
          Uninstall.
 void deleteDependency(java.lang.Long ownerID, DeleteDependency dd)
          Delete a dependency
 void deleteJob(java.lang.Long jobID)
          Delete a job.
 void deleteOwnerRows(java.lang.Long[] ownerIDs)
          Delete rows related to specified owners.
 DeleteDependency[] getDeleteDependencies(java.lang.Long ownerID)
          Get the delete dependencies for an owner.
 void install(java.lang.String jobsTable, java.lang.String jobsColumn, java.lang.String hopCountTable, java.lang.String idColumn)
          Install or upgrade.
 void removeMarkedRows(java.lang.String parentTable, java.lang.String parentIDHashField, java.lang.String query, java.util.ArrayList queryList)
          Remove rows that correspond to specific hopcount records.
 void writeDependency(java.lang.Long ownerID, java.lang.Long jobID, DeleteDependency dd)
          Write a delete dependency.
 
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

jobIDField

public static final java.lang.String jobIDField
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

parentIDHashField

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

childIDHashField

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

HopDeleteDeps

public HopDeleteDeps(IDBInterface database)
              throws ManifoldCFException
Constructor.

Parameters:
database - is the database handle.
Throws:
ManifoldCFException
Method Detail

install

public void install(java.lang.String jobsTable,
                    java.lang.String jobsColumn,
                    java.lang.String hopCountTable,
                    java.lang.String idColumn)
             throws ManifoldCFException
Install or upgrade.

Throws:
ManifoldCFException

deinstall

public void deinstall()
               throws ManifoldCFException
Uninstall.

Throws:
ManifoldCFException

analyzeTables

public void analyzeTables()
                   throws ManifoldCFException
Analyze job tables that need analysis.

Throws:
ManifoldCFException

deleteJob

public void deleteJob(java.lang.Long jobID)
               throws ManifoldCFException
Delete a job.

Throws:
ManifoldCFException

removeMarkedRows

public void removeMarkedRows(java.lang.String parentTable,
                             java.lang.String parentIDHashField,
                             java.lang.String query,
                             java.util.ArrayList queryList)
                      throws ManifoldCFException
Remove rows that correspond to specific hopcount records.

Throws:
ManifoldCFException

deleteOwnerRows

public void deleteOwnerRows(java.lang.Long[] ownerIDs)
                     throws ManifoldCFException
Delete rows related to specified owners. The list of specified owners does not exceed the maximum database in-clause size.

Throws:
ManifoldCFException

getDeleteDependencies

public DeleteDependency[] getDeleteDependencies(java.lang.Long ownerID)
                                         throws ManifoldCFException
Get the delete dependencies for an owner.

Returns:
the links
Throws:
ManifoldCFException

deleteDependency

public void deleteDependency(java.lang.Long ownerID,
                             DeleteDependency dd)
                      throws ManifoldCFException
Delete a dependency

Throws:
ManifoldCFException

writeDependency

public void writeDependency(java.lang.Long ownerID,
                            java.lang.Long jobID,
                            DeleteDependency dd)
                     throws ManifoldCFException
Write a delete dependency.

Throws:
ManifoldCFException