Skip to content

Commit 50923db

Browse files
committed
Merge pull request #25 from LExpress/late-static-config
Use late static binding for config classes (PHP 5.3+)
2 parents d29d360 + ea5fe70 commit 50923db

18 files changed

+46
-44
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
CHANGELOG
22
=========
33

4+
* use late static binding for config classes.
5+
46
01/17/2014: Version 1.5.3
57
-----------------------
68

lib/config/sfAutoloadConfigHandler.class.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ public function evaluate($configFiles)
6969
protected function parse(array $configFiles)
7070
{
7171
// parse the yaml
72-
$config = self::getConfiguration($configFiles);
72+
$config = static::getConfiguration($configFiles);
7373

7474
$mappings = array();
7575
foreach ($config['autoload'] as $name => $entry)
@@ -170,13 +170,13 @@ static public function getConfiguration(array $configFiles)
170170

171171
$configFiles = array_merge($pluginConfigFiles, $configFiles);
172172

173-
$config = self::replaceConstants(self::parseYamls($configFiles));
173+
$config = static::replaceConstants(static::parseYamls($configFiles));
174174

175175
foreach ($config['autoload'] as $name => $values)
176176
{
177177
if (isset($values['path']))
178178
{
179-
$config['autoload'][$name]['path'] = self::replacePath($values['path']);
179+
$config['autoload'][$name]['path'] = static::replacePath($values['path']);
180180
}
181181
}
182182

lib/config/sfCacheConfigHandler.class.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ class sfCacheConfigHandler extends sfYamlConfigHandler
3535
public function execute($configFiles)
3636
{
3737
// parse the yaml
38-
$this->yamlConfig = self::getConfiguration($configFiles);
38+
$this->yamlConfig = static::getConfiguration($configFiles);
3939

4040
// iterate through all action names
4141
$data = array();
@@ -109,6 +109,6 @@ protected function addCache($actionName = '')
109109
*/
110110
static public function getConfiguration(array $configFiles)
111111
{
112-
return self::flattenConfiguration(self::parseYamls($configFiles));
112+
return static::flattenConfiguration(static::parseYamls($configFiles));
113113
}
114114
}

lib/config/sfCompileConfigHandler.class.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ class sfCompileConfigHandler extends sfYamlConfigHandler
3434
public function execute($configFiles)
3535
{
3636
// parse the yaml
37-
$config = self::getConfiguration($configFiles);
37+
$config = static::getConfiguration($configFiles);
3838

3939
// init our data
4040
$data = '';
@@ -85,9 +85,9 @@ static public function getConfiguration(array $configFiles)
8585
$config = array();
8686
foreach ($configFiles as $configFile)
8787
{
88-
$config = array_merge($config, self::parseYaml($configFile));
88+
$config = array_merge($config, static::parseYaml($configFile));
8989
}
9090

91-
return self::replacePath(self::replaceConstants($config));
91+
return static::replacePath(static::replaceConstants($config));
9292
}
9393
}

lib/config/sfConfig.class.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
/*
44
* This file is part of the symfony package.
55
* (c) 2004-2006 Fabien Potencier <fabien.potencier@symfony-project.com>
6-
*
6+
*
77
* For the full copyright and license information, please view the LICENSE
88
* file that was distributed with this source code.
99
*/

lib/config/sfDatabaseConfigHandler.class.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ public function evaluate($configFiles)
7474
protected function parse($configFiles)
7575
{
7676
// parse the yaml
77-
$config = self::getConfiguration($configFiles);
77+
$config = static::getConfiguration($configFiles);
7878

7979
// init our data and includes arrays
8080
$data = array();
@@ -134,13 +134,13 @@ protected function parse($configFiles)
134134
*/
135135
static public function getConfiguration(array $configFiles)
136136
{
137-
$config = self::replaceConstants(self::flattenConfigurationWithEnvironment(self::parseYamls($configFiles)));
137+
$config = static::replaceConstants(static::flattenConfigurationWithEnvironment(static::parseYamls($configFiles)));
138138

139139
foreach ($config as $name => $dbConfig)
140140
{
141141
if (isset($dbConfig['file']))
142142
{
143-
$config[$name]['file'] = self::replacePath($dbConfig['file']);
143+
$config[$name]['file'] = static::replacePath($dbConfig['file']);
144144
}
145145
}
146146

lib/config/sfDefineEnvironmentConfigHandler.class.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public function execute($configFiles)
4242
}
4343

4444
// parse the yaml
45-
$config = self::getConfiguration($configFiles);
45+
$config = static::getConfiguration($configFiles);
4646

4747
$values = array();
4848
foreach ($config as $category => $keys)
@@ -143,6 +143,6 @@ protected function fixCategoryName($category, $prefix)
143143
*/
144144
static public function getConfiguration(array $configFiles)
145145
{
146-
return self::replaceConstants(self::flattenConfigurationWithEnvironment(self::parseYamls($configFiles)));
146+
return static::replaceConstants(static::flattenConfigurationWithEnvironment(static::parseYamls($configFiles)));
147147
}
148148
}

lib/config/sfFactoryConfigHandler.class.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ class sfFactoryConfigHandler extends sfYamlConfigHandler
3434
public function execute($configFiles)
3535
{
3636
// parse the yaml
37-
$config = self::getConfiguration($configFiles);
37+
$config = static::getConfiguration($configFiles);
3838

3939
// init our data and includes arrays
4040
$includes = array();
@@ -250,13 +250,13 @@ public function execute($configFiles)
250250
*/
251251
static public function getConfiguration(array $configFiles)
252252
{
253-
$config = self::replaceConstants(self::flattenConfigurationWithEnvironment(self::parseYamls($configFiles)));
253+
$config = static::replaceConstants(static::flattenConfigurationWithEnvironment(static::parseYamls($configFiles)));
254254

255255
foreach ($config as $factory => $values)
256256
{
257257
if (isset($values['file']))
258258
{
259-
$config[$factory]['file'] = self::replacePath($values['file']);
259+
$config[$factory]['file'] = static::replacePath($values['file']);
260260
}
261261
}
262262

lib/config/sfFilterConfigHandler.class.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ class sfFilterConfigHandler extends sfYamlConfigHandler
3333
public function execute($configFiles)
3434
{
3535
// parse the yaml
36-
$config = self::getConfiguration($configFiles);
36+
$config = static::getConfiguration($configFiles);
3737

3838
// init our data and includes arrays
3939
$data = array();
@@ -169,14 +169,14 @@ protected function addSecurityFilter($category, $class, $parameters)
169169
*/
170170
static public function getConfiguration(array $configFiles)
171171
{
172-
$config = self::parseYaml($configFiles[0]);
172+
$config = static::parseYaml($configFiles[0]);
173173
foreach (array_slice($configFiles, 1) as $i => $configFile)
174174
{
175175
// we get the order of the new file and merge with the previous configurations
176176
$previous = $config;
177177

178178
$config = array();
179-
foreach (self::parseYaml($configFile) as $key => $value)
179+
foreach (static::parseYaml($configFile) as $key => $value)
180180
{
181181
$value = (array) $value;
182182
$config[$key] = isset($previous[$key]) ? sfToolkit::arrayDeepMerge($previous[$key], $value) : $value;
@@ -192,13 +192,13 @@ static public function getConfiguration(array $configFiles)
192192
}
193193
}
194194

195-
$config = self::replaceConstants($config);
195+
$config = static::replaceConstants($config);
196196

197197
foreach ($config as $category => $keys)
198198
{
199199
if (isset($keys['file']))
200200
{
201-
$config[$category]['file'] = self::replacePath($keys['file']);
201+
$config[$category]['file'] = static::replacePath($keys['file']);
202202
}
203203
}
204204

lib/config/sfGeneratorConfigHandler.class.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ class sfGeneratorConfigHandler extends sfYamlConfigHandler
3232
public function execute($configFiles)
3333
{
3434
// parse the yaml
35-
$config = self::getConfiguration($configFiles);
35+
$config = static::getConfiguration($configFiles);
3636
if (!$config)
3737
{
3838
return '';
@@ -72,7 +72,7 @@ public function execute($configFiles)
7272
$retval = "<?php\n".
7373
"// auto-generated by sfGeneratorConfigHandler\n".
7474
"// date: %s\n%s\n";
75-
$retval = sprintf($retval, date('Y/m/d H:i:s'), self::getContent($generatorManager, $config['class'], $generatorParam));
75+
$retval = sprintf($retval, date('Y/m/d H:i:s'), static::getContent($generatorManager, $config['class'], $generatorParam));
7676

7777
return $retval;
7878
}
@@ -87,6 +87,6 @@ static public function getContent(sfGeneratorManager $generatorManager, $class,
8787
*/
8888
static public function getConfiguration(array $configFiles)
8989
{
90-
return self::parseYamls($configFiles);
90+
return static::parseYamls($configFiles);
9191
}
9292
}

0 commit comments

Comments
 (0)