log = new Logger(); } catch (Exception $e) { throw new Exception("Can't create logger instance"); } $this->log->d("Base class instance successfull created"); /** * Instanz der Klasse Config erstellen und Konfigurationsdatei * einlesen lassen. */ try { $this->config = new Config(); $this->log->d("Configuration object successfull created"); $this->config->loadConfig($this->config_path); $this->log->d("Configuration file parsed"); } catch (Exception $e) { $this->log->e("Error: {$e->getMessage()}"); } $this->log->setLogLevel($this->config->getLogLevel()); /** * Instanz der Klasse Datenbank erstellen. Die Datenbank bekommt die * Instanzen der Klassen Config und Logger übergeben. */ try { $this->db = getDatabase($this->config, $this->log); } catch (Exception $e) { $this->log->e("Error: {$e->getMessage()}"); } } public function generateToken(int $length): bool { /** * Generiert einen Token aus zufälligen Bits der Länge 'length'. * Speichert diesen Token in der als Refeenz übergebenen Variable. * TODO: Die Funktion nach common.php auslagern? */ try { $this->token = bin2hex(random_bytes($length)); } catch (Exception $e) { $this->log->e("Token creation failed"); return false; } return true; } }