Browse Source

Fixes issue related to the cache dependencies constructor parameters. (Discussed via Skype with Qiang.)

tags/2.0.0-beta
resurtm 12 years ago
parent
commit
b9a835518a
  1. 18
      framework/caching/DbDependency.php
  2. 13
      framework/caching/ExpressionDependency.php
  3. 16
      framework/caching/FileDependency.php

18
framework/caching/DbDependency.php

@ -28,25 +28,23 @@ class DbDependency extends Dependency
public $db = 'db';
/**
* @var string the SQL query whose result is used to determine if the dependency has been changed.
* Only the first row of the query result will be used.
* Only the first row of the query result will be used. This property must be always set, otherwise
* an exception would be raised.
*/
public $sql;
/**
* @var array the parameters (name=>value) to be bound to the SQL statement specified by [[sql]].
*/
public $params;
public $params = array();
/**
* Constructor.
* @param string $sql the SQL query whose result is used to determine if the dependency has been changed.
* @param array $params the parameters (name=>value) to be bound to the SQL statement specified by [[sql]].
* @param array $config name-value pairs that will be used to initialize the object properties
* Initializes the database dependency object.
*/
public function __construct($sql, $params = array(), $config = array())
public function init()
{
$this->sql = $sql;
$this->params = $params;
parent::__construct($config);
if ($this->sql === null) {
throw new InvalidConfigException('DbDependency::sql must be set.');
}
}
/**

13
framework/caching/ExpressionDependency.php

@ -22,18 +22,7 @@ class ExpressionDependency extends Dependency
/**
* @var string the PHP expression whose result is used to determine the dependency.
*/
public $expression;
/**
* Constructor.
* @param string $expression the PHP expression whose result is used to determine the dependency.
* @param array $config name-value pairs that will be used to initialize the object properties
*/
public function __construct($expression = 'true', $config = array())
{
$this->expression = $expression;
parent::__construct($config);
}
public $expression = 'true';
/**
* Generates the data needed to determine if dependency has been changed.

16
framework/caching/FileDependency.php

@ -7,6 +7,8 @@
namespace yii\caching;
use yii\base\InvalidConfigException;
/**
* FileDependency represents a dependency based on a file's last modification time.
*
@ -20,19 +22,19 @@ class FileDependency extends Dependency
{
/**
* @var string the name of the file whose last modification time is used to
* check if the dependency has been changed.
* check if the dependency has been changed. This property must be always set,
* otherwise an exception would be raised.
*/
public $fileName;
/**
* Constructor.
* @param string $fileName name of the file whose change is to be checked.
* @param array $config name-value pairs that will be used to initialize the object properties
* Initializes the database dependency object.
*/
public function __construct($fileName = null, $config = array())
public function init()
{
$this->fileName = $fileName;
parent::__construct($config);
if ($this->file === null) {
throw new InvalidConfigException('FileDependency::fileName must be set.');
}
}
/**

Loading…
Cancel
Save