nextCloudBaseUrl = $this->getRequired($config, Config::NEXTCLOUD_BASE_URL); $this->secret = $this->getRequired($config, Config::SECRET); $this->username = $this->getRequired($config, Config::BASIC_AUTH_USERNAME); $this->password = $this->getRequired($config, Config::BASIC_AUTH_PASSWORD); } private function getRequired($config, $key) { if (array_key_exists($key, $config)) { return $config[$key]; } else { throw new Exception("missing configuration " . $key); } } public function getSecret() { return $this->secret; } public function getUrl() { return $this->nextCloudBaseUrl . '/ocs/v2.php/apps/spreed/api/v1'; } public function getUsername() { return $this->username; } public function getPassword() { return $this->password; } }