/** * @return AbstractOptions */ public function getAdapterOptions() { if (is_array($this->adapterOptions)) { $optClass = $this->getAbstractOptions(); $this->adapterOptions = $optClass->setFromArray($this->adapterOptions); return $this->adapterOptions; } $wantedOptionsClass = self::getOptionsFullQualifiedClassName($this->adapter); if (get_class($this->adapterOptions) !== $wantedOptionsClass) { throw new Exception\DomainException(sprintf('"%s" expects that options set are an array or a valid "%s" instance; received "%s"', __METHOD__, $wantedOptionsClass, get_class($this->adapterOptions))); } $this->options = $this->adapterOptions->toArray(); return $this->adapterOptions; }