TYPO3
7.6
Users
bogdan
Projects
Kapeli
Resources
Dash
Docsets
TYPO3
src
typo3
sysext
scheduler
Classes
Task
OptimizeDatabaseTableTask.php
Go to the documentation of this file.
1
<?php
2
namespace
TYPO3\CMS\Scheduler\Task;
3
4
/*
5
* This file is part of the TYPO3 CMS project.
6
*
7
* It is free software; you can redistribute it and/or modify it under
8
* the terms of the GNU General Public License, either version 2
9
* of the License, or any later version.
10
*
11
* For the full copyright and license information, please read the
12
* LICENSE.txt file that was distributed with this source code.
13
*
14
* The TYPO3 project - inspiring people to share!
15
*/
16
24
class
OptimizeDatabaseTableTask
extends
\TYPO3\CMS\Scheduler\Task\AbstractTask
25
{
32
public
$selectedTables
= array();
33
39
public
function
execute
()
40
{
41
foreach
($this->selectedTables as $tableName) {
42
$result = $this->
getDatabaseConnection
()->admin_query(
'OPTIMIZE TABLE '
. $tableName .
';'
);
43
if
($result ===
false
) {
44
throw
new \RuntimeException(
45
\TYPO3\CMS\
Scheduler
\Task\TableGarbageCollectionTask::class .
' failed for: '
. $tableName .
': '
.
46
$this->
getDatabaseConnection
()->sql_error(),
47
1441390263
48
);
49
}
50
}
51
52
return
true
;
53
}
54
60
public
function
getAdditionalInformation
()
61
{
62
return
implode(
', '
, $this->selectedTables);
63
}
64
68
protected
function
getDatabaseConnection
()
69
{
70
return
$GLOBALS
[
'TYPO3_DB'
];
71
}
72
}
Generated on Wed Nov 11 2015 01:52:00 for TYPO3 by
1.8.3