/** * Prepare a phramework instance * @uses Bootstrap::getSettings() to fetch the settings * @return Phramework */ public static function prepare() { $settings = self::getSettings(); $phramework = new Phramework($settings, new \Phramework\URIStrategy\URITemplate([['/', '\\Phramework\\SystemLog\\APP\\Controllers\\DummyController', 'GET', Phramework::METHOD_ANY], ['/dummy/', '\\Phramework\\SystemLog\\APP\\Controllers\\DummyController', 'GET', Phramework::METHOD_ANY], ['/dummy/{id}', '\\Phramework\\SystemLog\\APP\\Controllers\\DummyController', 'GETById', Phramework::METHOD_ANY]])); \Phramework\Database\Database::setAdapter(new \Phramework\Database\MySQL($settings['database'])); return $phramework; }
/** * Activate query-log * @param null|object $additionalParameters * Additional parameters to be stored in query logs * @return boolean Returns false if query log is disabled * @throws \Exception * @uses Phramework\Database\Database */ public function register($additionalParameters = null) { if ($additionalParameters && !is_object($additionalParameters)) { throw new \Exception('additionalParameters must be an object'); } //Ignore registration if disabled setting is set to true if (isset($this->settings->disabled) && $this->settings->disabled) { return false; } //Get current global adapter $internalAdapter = \Phramework\Database\Database::getAdapter(); if (!$internalAdapter) { throw new \Exception('Global database adapter is not initialized'); } //Create new QueryLogAdapter instance, using current global adapter $queryLogAdapter = new QueryLogAdapter($this->settings, $internalAdapter, $additionalParameters); //Set newly created QueryLogAdapter instance as global adapter \Phramework\Database\Database::setAdapter($queryLogAdapter); return true; }