mixed) $options */ public function __construct( array $options = array() ) { $this->timeout = 5; // default value for timeout is 5 seconds $this->ssl = false; // default value for ssl is false parent::__construct( $options ); } /** * Sets the option $name to $value. * * @throws ezcBasePropertyNotFoundException * if the property $name is not defined * @throws ezcBaseValueException * if $value is not correct for the property $name * @param string $name * @param mixed $value * @ignore */ public function __set( $name, $value ) { switch ( $name ) { case 'timeout': if ( !is_numeric( $value ) || ( $value < 1 ) ) { throw new ezcBaseValueException( $name, $value, 'int >= 1' ); } $this->properties[$name] = (int) $value; break; case 'ssl': if ( !is_bool( $value ) ) { throw new ezcBaseValueException( $name, $value, 'bool' ); } $this->properties[$name] = $value; break; default: throw new ezcBasePropertyNotFoundException( $name ); } } } ?>