/**
  * Override AbstractOptions::__set
  *
  * Validates value if save options are being set.
  *
  * @param string $key
  * @param mixed $value
  */
 public function __set($key, $value)
 {
     if (strtolower($key) !== 'saveoptions') {
         return parent::__set($key, $value);
     }
     if (!is_array($value)) {
         throw new InvalidArgumentException('Expected array for save options');
     }
     $this->setSaveOptions($value);
 }
 /**
  * {@inheritDoc}
  *
  * Normalizes dash-separated keys to underscore-separated to ensure
  * backwards compatibility with old options (even though dash-separated
  * were previously ignored!).
  *
  * @see \Zend\Stdlib\ParameterObject::__set()
  * @param string $key
  * @param mixed $value
  * @throws \Zend\Stdlib\Exception\BadMethodCallException
  * @return void
  */
 public function __set($key, $value)
 {
     parent::__set(str_replace('-', '_', $key), $value);
 }