CChainedCacheDependency


system.caching.dependencies
继承 class CChainedCacheDependency » CComponent
实现 ICacheDependency
源自 1.0
版本 $Id: CChainedCacheDependency.php 3515 2011-12-28 12:29:24Z mdomba $
源码
CChainedCacheDependency指一系列缓存依赖项。

若任何依赖项报告有依赖项变化了, CChainedCacheDependency在检查时将返回true。

使用Dependencies往CChainedCacheDependency添加依赖项, 它提供一个CTypedList实力并且可以像数组一样使用它 (参见CList以了解更多详情)。

公共属性

属性 类型 描述 定义在
dependencies CTypedList 依赖项对象列表。 CChainedCacheDependency
hasChanged boolean 执行实际的依赖项检查。 CChainedCacheDependency

公共方法

方法 描述 定义在
__call() 如果类中没有调的方法名,则调用这个方法。 CComponent
__construct() 构造器。 CChainedCacheDependency
__get() 返回一个属性值、一个事件处理程序列表或一个行为名称。 CComponent
__isset() 检查一个属性是否为null。 CComponent
__set() 设置一个组件的属性值。 CComponent
__unset() 设置一个组件的属性为null。 CComponent
asa() 返回这个名字的行为对象。 CComponent
attachBehavior() 附加一个行为到组件。 CComponent
attachBehaviors() 附加一个行为列表到组件。 CComponent
attachEventHandler() 为事件附加一个事件处理程序。 CComponent
canGetProperty() 确定属性是否可读。 CComponent
canSetProperty() 确定属性是否可写。 CComponent
detachBehavior() 从组件中分离一个行为。 CComponent
detachBehaviors() 从组件中分离所有行为。 CComponent
detachEventHandler() 分离一个存在的事件处理程序。 CComponent
disableBehavior() 禁用一个附加行为。 CComponent
disableBehaviors() 禁用组件附加的所有行为。 CComponent
enableBehavior() 启用一个附加行为。 CComponent
enableBehaviors() 启用组件附加的所有行为。 CComponent
evaluateDependency() 根据依赖关系来生存和保存数据以计算依赖项。 CChainedCacheDependency
evaluateExpression() 计算一个PHP表达式,或根据组件上下文执行回调。 CComponent
getDependencies() 返回依赖项对象列表。 CChainedCacheDependency
getEventHandlers() 返回一个事件的附加处理程序列表。 CComponent
getHasChanged() 执行实际的依赖项检查。 CChainedCacheDependency
hasEvent() 确定一个事件是否定义。 CComponent
hasEventHandler() 检查事件是否有附加的处理程序。 CComponent
hasProperty() 确定属性是否被定义。 CComponent
raiseEvent() 发起一个事件。 CComponent
setDependencies() 设置往本chain添加的依赖项对象或者配置列表用。 若一个依赖项以配置的方式指定,它必须是一个可以 被YiiBase::createComponent识别的数组。 CChainedCacheDependency

属性详细

dependencies 属性
public CTypedList getDependencies()
public void setDependencies(array $values)

依赖项对象列表。

hasChanged 属性 只读
public boolean getHasChanged()

执行实际的依赖项检查。 该方法返回true在任何依赖项 报告有依赖项变化了。

方法详细

__construct() 方法 (可用自 v1.1.4)
public void __construct(array $dependencies=array ( ))
$dependencies array 往本chain添加的依赖项。
public function __construct($dependencies=array())
{
    if(!empty(
$dependencies))
        
$this->setDependencies($dependencies);
}

构造器。

evaluateDependency() 方法
public void evaluateDependency()
public function evaluateDependency()
{
    if(
$this->_dependencies!==null)
    {
        foreach(
$this->_dependencies as $dependency)
            
$dependency->evaluateDependency();
    }
}

根据依赖关系来生存和保存数据以计算依赖项。

getDependencies() 方法
public CTypedList getDependencies()
{return} CTypedList 依赖项对象列表。
public function getDependencies()
{
    if(
$this->_dependencies===null)
        
$this->_dependencies=new CTypedList('ICacheDependency');
    return 
$this->_dependencies;
}

getHasChanged() 方法
public boolean getHasChanged()
{return} boolean 依赖项是否被改变。
public function getHasChanged()
{
    if(
$this->_dependencies!==null)
    {
        foreach(
$this->_dependencies as $dependency)
            if(
$dependency->getHasChanged())
                return 
true;
    }
    return 
false;
}

执行实际的依赖项检查。 该方法返回true在任何依赖项 报告有依赖项变化了。

setDependencies() 方法
public void setDependencies(array $values)
$values array 往本chain添加的依赖项对象或者配置列表用。 若一个依赖项以配置的方式指定,它必须是一个可以 被YiiBase::createComponent识别的数组。
public function setDependencies($values)
{
    
$dependencies=$this->getDependencies();
    foreach(
$values as $value)
    {
        if(
is_array($value))
            
$value=Yii::createComponent($value);
        
$dependencies->add($value);
    }
}