Class ScheduleManager
- java.lang.Object
-
- org.apache.manifoldcf.core.database.BaseTable
-
- org.apache.manifoldcf.crawler.jobs.ScheduleManager
-
public class ScheduleManager extends BaseTable
This class manages the "schedules" table, which contains the automatic execution schedule for each job. It's separated from the main jobs table because we will need multiple timeslots per job.
schedulesField Type Description ownerid BIGINT Reference:jobs.id ordinal BIGINT dayofweek VARCHAR(255) dayofmonth VARCHAR(255) monthofyear VARCHAR(255) yearlist VARCHAR(255) hourofday VARCHAR(255) minutesofhour VARCHAR(255) timezone VARCHAR(32) windowlength BIGINT requestminimum CHAR(1)
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
_rcsid
static java.lang.String
dayOfMonthField
static java.lang.String
dayOfWeekField
static java.lang.String
hourOfDayField
static java.lang.String
minutesOfHourField
static java.lang.String
monthOfYearField
static java.lang.String
ordinalField
static java.lang.String
ownerIDField
static java.lang.String
requestMinimumField
static java.lang.String
timezoneField
static java.lang.String
windowDurationField
static java.lang.String
yearField
-
Fields inherited from class org.apache.manifoldcf.core.database.BaseTable
dbInterface, tableName
-
-
Constructor Summary
Constructors Constructor Description ScheduleManager(IThreadContext threadContext, IDBInterface database)
Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
deinstall()
Uninstall.void
deleteRows(java.lang.Long ownerID)
Delete rows.static java.lang.String
enumeratedValueToString(EnumeratedValues values)
Go from enumerated value to string.void
getRows(java.util.Map<java.lang.Long,JobDescription> returnValues, java.lang.String ownerIDList, java.util.ArrayList ownerIDParams)
Fill in a set of schedules corresponding to a set of owner id's.void
getRowsAlternate(java.util.Map returnValues, java.util.ArrayList ownerIDParams)
Fill in a set of schedules corresponding to a set of owner id's.void
install(java.lang.String ownerTable, java.lang.String owningTablePrimaryKey)
Install or upgrade.int
maxClauseGetRowsAlternate()
Get the max clauses that can be used with getRowsAlternate.static java.lang.String
requestMinimumValueToString(boolean requestMinimum)
static EnumeratedValues
stringToEnumeratedValue(java.lang.String value)
Go from string to enumerated value.static boolean
stringToRequestMinimumValue(java.lang.String requestMinimum)
void
writeRows(java.lang.Long ownerID, IJobDescription list)
Write a schedule list into the database.-
Methods inherited from class org.apache.manifoldcf.core.database.BaseTable
addTableIndex, analyzeTable, beginTransaction, buildConjunctionClause, constructCountClause, constructDistinctOnClause, constructDoubleCastClause, constructOffsetLimitClause, constructRegexpClause, constructSubstringClause, endTransaction, findConjunctionClauseMax, getDatabaseCacheKey, getDBInterface, getMaxInClause, getMaxOrClause, getSleepAmt, getTableIndexes, getTableName, getTableSchema, getTransactionID, getWindowedReportMaxRows, makeTableKey, noteModifications, performAddIndex, performAlter, performCommit, performCreate, performDelete, performDrop, performInsert, performModification, performQuery, performQuery, performRemoveIndex, performUpdate, prepareRowForSave, readRow, reindexTable, signalRollback, sleepFor
-
-
-
-
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
-
ordinalField
public static final java.lang.String ordinalField
- See Also:
- Constant Field Values
-
dayOfWeekField
public static final java.lang.String dayOfWeekField
- See Also:
- Constant Field Values
-
dayOfMonthField
public static final java.lang.String dayOfMonthField
- See Also:
- Constant Field Values
-
monthOfYearField
public static final java.lang.String monthOfYearField
- See Also:
- Constant Field Values
-
yearField
public static final java.lang.String yearField
- See Also:
- Constant Field Values
-
hourOfDayField
public static final java.lang.String hourOfDayField
- See Also:
- Constant Field Values
-
minutesOfHourField
public static final java.lang.String minutesOfHourField
- See Also:
- Constant Field Values
-
timezoneField
public static final java.lang.String timezoneField
- See Also:
- Constant Field Values
-
windowDurationField
public static final java.lang.String windowDurationField
- See Also:
- Constant Field Values
-
requestMinimumField
public static final java.lang.String requestMinimumField
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ScheduleManager
public ScheduleManager(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
-
getRows
public void getRows(java.util.Map<java.lang.Long,JobDescription> returnValues, java.lang.String ownerIDList, java.util.ArrayList ownerIDParams) throws ManifoldCFException
Fill in a set of schedules 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
-
maxClauseGetRowsAlternate
public int maxClauseGetRowsAlternate()
Get the max clauses that can be used with getRowsAlternate.
-
getRowsAlternate
public void getRowsAlternate(java.util.Map returnValues, java.util.ArrayList ownerIDParams) throws ManifoldCFException
Fill in a set of schedules corresponding to a set of owner id's.- Parameters:
returnValues
- is a map keyed by ownerID, with a value that is an ArrayList of ScheduleRecord objects.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 schedule list into the database.- Parameters:
ownerID
- is the owning identifier.list
- is the job description that is the source of the schedule.- 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
-
stringToEnumeratedValue
public static EnumeratedValues stringToEnumeratedValue(java.lang.String value) throws ManifoldCFException
Go from string to enumerated value.- Parameters:
value
- is the input.- Returns:
- the enumerated value.
- Throws:
ManifoldCFException
-
enumeratedValueToString
public static java.lang.String enumeratedValueToString(EnumeratedValues values)
Go from enumerated value to string.- Parameters:
values
- is the enumerated value.- Returns:
- the string value.
-
requestMinimumValueToString
public static java.lang.String requestMinimumValueToString(boolean requestMinimum)
-
stringToRequestMinimumValue
public static boolean stringToRequestMinimumValue(java.lang.String requestMinimum) throws ManifoldCFException
- Throws:
ManifoldCFException
-
-