CleanerTask extends AbstractTask
A task that should be run regularly that permanently removes soft-deleted datasets from the DB.
This class is a specific scheduler task implementation and is not part of the Public TYPO3 API.
Table of Contents
Constants
- TYPE_RECURRING = 2
- TYPE_SINGLE = 1
Properties
- $description : string
- Description for the task
- $disabled : bool
- Disable flag, TRUE if task is disabled, FALSE otherwise
- $execution : Execution
- The execution object related to the task
- $executionTime : int
- This variable contains the time of next execution of the task
- $period : int
- $runOnNextCronJob : bool
- Run on next cron job flag, TRUE if task should run on next cronjob, FALSE otherwise
- $taskGroup : int|null
- Task group for this task
- $taskUid : int
- The unique id of the task used to identify it in the database.
- $tcaTables : array<string|int, mixed>
Methods
- __construct() : mixed
- execute() : bool
- The main method of the task. Iterates through the tables and calls the cleaning function
- getAdditionalInformation() : string
- Returns the information shown in the task-list
- getAllTcaTables() : void
- TCA Item Provider
- getDescription() : string
- This method returns the description of the task
- getExecution() : Execution|object|null
- Returns the execution object
- getExecutionTime() : int
- This method returns the timestamp corresponding to the next execution time of the task
- getPeriodAsTimestamp() : int
- getRunOnNextCronJob() : bool
- This method returns the run on next cron job status of the task
- getTaskClassName() : string
- This method returns the class name of the scheduler task Unused since TYPO3 v14.0, can be deprecated and removed once we migrate task registration away from TYPO3_CONF_VARS.
- getTaskDescription() : string
- This method returns the description of the scheduler task Unused since TYPO3 v14.0, can be deprecated and removed once we migrate task registration away from TYPO3_CONF_VARS.
- getTaskGroup() : int|null
- This method returns the task group (uid) of the task
- getTaskParameters() : array<string|int, mixed>
- It is recommended to implement this method in the respective task class.
- getTaskTitle() : string
- This method returns the title of the scheduler task.
- getTaskType() : string
- getTaskUid() : int
- This method returns the unique id of the task
- getType() : int
- Guess recurring type from the existing information If an interval or a cron command is defined, it's a recurring task
- isDisabled() : bool
- This method returns the disabled status of the task
- setDescription() : void
- This method is used to set the description of the task
- setDisabled() : mixed
- This method is used to set the disabled status of the task
- setExecution() : void
- Sets the internal execution object
- setExecutionTime() : mixed
- This method is used to set the timestamp corresponding to the next execution time of the task
- setRunOnNextCronJob() : mixed
- This method set the flag for next cron job execution
- setTaskGroup() : mixed
- This method is used to set the task group (uid) of the task
- setTaskParameters() : void
- Used to fill fields of this class, e.g. also when instantiating this class when no parameters are given but native DB fields are coming in.
- setTaskUid() : void
- This method is used to set the unique id of the task
- cleanTable() : bool
- Executes the delete-query for the given table
- getLanguageService() : LanguageService|null
- logException() : mixed
Constants
TYPE_RECURRING
public
mixed
TYPE_RECURRING
= 2
TYPE_SINGLE
public
mixed
TYPE_SINGLE
= 1
Properties
$description
Description for the task
protected
string
$description
= ''
$disabled
Disable flag, TRUE if task is disabled, FALSE otherwise
protected
bool
$disabled
= false
$execution
The execution object related to the task
protected
Execution
$execution
$executionTime
This variable contains the time of next execution of the task
protected
int
$executionTime
= 0
$period
protected
int
$period
= 0
The time period, after which the rows are deleted
$runOnNextCronJob
Run on next cron job flag, TRUE if task should run on next cronjob, FALSE otherwise
protected
bool
$runOnNextCronJob
= false
$taskGroup
Task group for this task
protected
int|null
$taskGroup
= 0
$taskUid
The unique id of the task used to identify it in the database.
protected
int
$taskUid
= 0
$tcaTables
protected
array<string|int, mixed>
$tcaTables
= []
The tables to clean
Methods
__construct()
public
__construct() : mixed
execute()
The main method of the task. Iterates through the tables and calls the cleaning function
public
execute() : bool
Return values
bool —Returns TRUE on successful execution, FALSE on error
getAdditionalInformation()
Returns the information shown in the task-list
public
getAdditionalInformation() : string
Return values
string —Information-text fot the scheduler task-list
getAllTcaTables()
TCA Item Provider
public
getAllTcaTables(array<string|int, mixed> &$config) : void
Parameters
- $config : array<string|int, mixed>
getDescription()
This method returns the description of the task
public
getDescription() : string
Return values
string —Description
getExecution()
Returns the execution object
public
getExecution() : Execution|object|null
since TYPO3 v12.3, not part of TYPO3 Public API anymore.
Return values
Execution|object|null —The internal execution object - when an invalid task is being unserialized, the Execution object might not be available
getExecutionTime()
This method returns the timestamp corresponding to the next execution time of the task
public
getExecutionTime() : int
Return values
int —Timestamp of next execution
getPeriodAsTimestamp()
public
getPeriodAsTimestamp() : int
Return values
intgetRunOnNextCronJob()
This method returns the run on next cron job status of the task
public
getRunOnNextCronJob() : bool
Return values
bool —TRUE if task should run on next cron job, FALSE otherwise
getTaskClassName()
This method returns the class name of the scheduler task Unused since TYPO3 v14.0, can be deprecated and removed once we migrate task registration away from TYPO3_CONF_VARS.
public
getTaskClassName() : string
Return values
stringgetTaskDescription()
This method returns the description of the scheduler task Unused since TYPO3 v14.0, can be deprecated and removed once we migrate task registration away from TYPO3_CONF_VARS.
public
getTaskDescription() : string
Note by benni in 2025: This method will cease to exist at some point, as the description is loaded from TCA eventually.
Return values
stringgetTaskGroup()
This method returns the task group (uid) of the task
public
getTaskGroup() : int|null
Return values
int|null —Uid of task group or null if it came back from the DB without the task group set.
getTaskParameters()
It is recommended to implement this method in the respective task class.
public
getTaskParameters() : array<string|int, mixed>
Return values
array<string|int, mixed>getTaskTitle()
This method returns the title of the scheduler task.
public
getTaskTitle() : string
Unused since TYPO3 v14.0, can be deprecated and removed once we migrate task registration away from TYPO3_CONF_VARS. Note by benni in 2025: This method will cease to exist at some point, as the title is loaded from TCA eventually.
Return values
stringgetTaskType()
public
getTaskType() : string
Return values
stringgetTaskUid()
This method returns the unique id of the task
public
getTaskUid() : int
Return values
int —The id of the task
getType()
Guess recurring type from the existing information If an interval or a cron command is defined, it's a recurring task
public
getType() : int
Return values
intisDisabled()
This method returns the disabled status of the task
public
isDisabled() : bool
Return values
bool —TRUE if task is disabled, FALSE otherwise
setDescription()
This method is used to set the description of the task
public
setDescription(string $description) : void
Parameters
- $description : string
-
Description
setDisabled()
This method is used to set the disabled status of the task
public
setDisabled(bool $flag) : mixed
Parameters
- $flag : bool
-
TRUE if task should be disabled, FALSE otherwise
setExecution()
Sets the internal execution object
public
setExecution(Execution $execution) : void
Parameters
- $execution : Execution
-
The execution to add
since TYPO3 v12.3, not part of TYPO3 Public API anymore.
setExecutionTime()
This method is used to set the timestamp corresponding to the next execution time of the task
public
setExecutionTime(int $timestamp) : mixed
Parameters
- $timestamp : int
-
Timestamp of next execution
setRunOnNextCronJob()
This method set the flag for next cron job execution
public
setRunOnNextCronJob(bool $flag) : mixed
Parameters
- $flag : bool
-
TRUE if task should run with the next cron job, FALSE otherwise
setTaskGroup()
This method is used to set the task group (uid) of the task
public
setTaskGroup(int $taskGroup) : mixed
Parameters
- $taskGroup : int
-
Uid of task group
setTaskParameters()
Used to fill fields of this class, e.g. also when instantiating this class when no parameters are given but native DB fields are coming in.
public
setTaskParameters(array<string|int, mixed> $parameters) : void
Parameters
- $parameters : array<string|int, mixed>
setTaskUid()
This method is used to set the unique id of the task
public
setTaskUid(int $id) : void
Parameters
- $id : int
-
Primary key (from the database record) of the scheduled task
cleanTable()
Executes the delete-query for the given table
protected
cleanTable(TcaSchema $schema) : bool
Parameters
- $schema : TcaSchema
Return values
boolgetLanguageService()
protected
getLanguageService() : LanguageService|null
Return values
LanguageService|nulllogException()
protected
logException(Exception $e) : mixed
Parameters
- $e : Exception