mixed) $options The initial options to set. * * @throws ezcBasePropertyNotFoundException * If trying to assign a property which does not exist * @throws ezcBaseValueException * If the value for the property is incorrect */ public function __construct( $options = array() ) { $this->properties['ttl'] = 86400; $this->properties['extension'] = '.cache'; parent::__construct( $options ); } /** * Sets an option. * This method is called when an option is set. * * @param string $key The option name. * @param mixed $value The option value. * @ignore */ public function __set( $key, $value ) { switch ( $key ) { case "extension": if ( !is_string( $value ) || strlen( $value ) < 1 ) { throw new ezcBaseValueException( $key, $value, "string, size > 0" ); } break; case "ttl": if ( !is_int( $value ) && $value !== false ) { throw new ezcBaseValueException( $key, $value, "int > 0 or false" ); } break; default: throw new ezcBasePropertyNotFoundException( $key ); } $this->properties[$key] = $value; } } ?>