Class yii\caching\ChainedDependency

Inheritanceyii\caching\ChainedDependency » yii\caching\Dependency » yii\base\Object
Implementsyii\base\Configurable
Available since version2.0
Source Code https://github.com/yiisoft/yii2/blob/master/framework/caching/ChainedDependency.php

ChainedDependency represents a dependency which is composed of a list of other dependencies.

When $dependOnAll is true, if any of the dependencies has changed, this dependency is considered changed; When $dependOnAll is false, if one of the dependencies has NOT changed, this dependency is considered NOT changed.

Public Properties

Hide inherited properties

PropertyTypeDescriptionDefined By
$data mixed The dependency data that is saved in cache and later is compared with the latest dependency data. yii\caching\Dependency
$dependOnAll boolean Whether this dependency is depending on every dependency in $dependencies. yii\caching\ChainedDependency
$dependencies yii\caching\Dependency[] List of dependencies that this dependency is composed of. yii\caching\ChainedDependency
$reusable boolean Whether this dependency is reusable or not. yii\caching\Dependency

Public Methods

Hide inherited methods

MethodDescriptionDefined By
__call() Calls the named method which is not a class method. yii\base\Object
__construct() Constructor. yii\base\Object
__get() Returns the value of an object property. yii\base\Object
__isset() Checks if a property is set, i.e. defined and not null. yii\base\Object
__set() Sets value of an object property. yii\base\Object
__unset() Sets an object property to null. yii\base\Object
canGetProperty() Returns a value indicating whether a property can be read. yii\base\Object
canSetProperty() Returns a value indicating whether a property can be set. yii\base\Object
className() Returns the fully qualified name of this class. yii\base\Object
evaluateDependency() Evaluates the dependency by generating and saving the data related with dependency. yii\caching\ChainedDependency
getHasChanged() Performs the actual dependency checking. yii\caching\ChainedDependency
hasMethod() Returns a value indicating whether a method is defined. yii\base\Object
hasProperty() Returns a value indicating whether a property is defined. yii\base\Object
init() Initializes the object. yii\base\Object
resetReusableData() Resets all cached data for reusable dependencies. yii\caching\Dependency

Protected Methods

Hide inherited methods

MethodDescriptionDefined By
generateDependencyData() Generates the data needed to determine if dependency has been changed. yii\caching\ChainedDependency
generateReusableHash() Generates a unique hash that can be used for retrieving reusable dependency data. yii\caching\Dependency

Property Details

$dependOnAll public property

Whether this dependency is depending on every dependency in $dependencies. Defaults to true, meaning if any of the dependencies has changed, this dependency is considered changed. When it is set false, it means if one of the dependencies has NOT changed, this dependency is considered NOT changed.

$dependencies public property

List of dependencies that this dependency is composed of. Each array element must be a dependency object.

Method Details

evaluateDependency() public method

Evaluates the dependency by generating and saving the data related with dependency.

void evaluateDependency$cache )
$cache yii\caching\Cache

The cache component that is currently evaluating this dependency

generateDependencyData() protected method

Generates the data needed to determine if dependency has been changed.

This method does nothing in this class.

mixed generateDependencyData$cache )
$cache yii\caching\Cache

The cache component that is currently evaluating this dependency

return mixed

The data needed to determine if dependency has been changed.

getHasChanged() public method

Performs the actual dependency checking.

This method returns true if any of the dependency objects reports a dependency change.

boolean getHasChanged$cache )
$cache yii\caching\Cache

The cache component that is currently evaluating this dependency

return boolean

Whether the dependency is changed or not.