public function addMode(IMode $mode) { if (!empty($mode->getNamespace())) { $this->setNamespace($mode->getNamespace()); } if (!empty($mode->getProviders())) { $this->setProviders($mode->getProviders()); } if (!empty($mode->getGenerator())) { $this->setGenerator($mode->getGenerator()); } $this->modes[] = $mode; return $this; }