TYPO3
7.6
Users
bogdan
Projects
Kapeli
Resources
Dash
Docsets
TYPO3
src
typo3
sysext
core
Classes
Cache
DatabaseSchemaService.php
Go to the documentation of this file.
1
<?php
2
namespace
TYPO3\CMS\Core\Cache;
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
20
class
DatabaseSchemaService
21
{
29
public
function
getCachingFrameworkRequiredDatabaseSchema
()
30
{
31
// Use new to circumvent the singleton pattern of CacheManager
32
$cacheManager =
new
CacheManager
;
33
$cacheManager->
setCacheConfigurations
(
$GLOBALS
[
'TYPO3_CONF_VARS'
][
'SYS'
][
'caching'
][
'cacheConfigurations'
]);
34
// Cache manager needs cache factory. cache factory injects itself to manager in __construct()
35
new
CacheFactory
(
'production'
, $cacheManager);
36
37
$tableDefinitions =
''
;
38
foreach
(
$GLOBALS
[
'TYPO3_CONF_VARS'
][
'SYS'
][
'caching'
][
'cacheConfigurations'
] as $cacheName => $_) {
39
$backend = $cacheManager->getCache($cacheName)->getBackend();
40
if
(method_exists($backend,
'getTableDefinitions'
)) {
41
$tableDefinitions .= LF . $backend->getTableDefinitions();
42
}
43
}
44
45
return
$tableDefinitions;
46
}
47
56
public
function
addCachingFrameworkRequiredDatabaseSchemaForInstallUtility
(array $sqlString, $extensionKey)
57
{
58
$sqlString[] = $this->
getCachingFrameworkRequiredDatabaseSchema
();
59
return
array($sqlString, $extensionKey);
60
}
61
69
public
function
addCachingFrameworkRequiredDatabaseSchemaForSqlExpectedSchemaService
(array $sqlString)
70
{
71
$sqlString[] = $this->
getCachingFrameworkRequiredDatabaseSchema
();
72
return
array($sqlString);
73
}
74
}
Generated on Wed Nov 11 2015 01:51:53 for TYPO3 by
1.8.3