+ public final function unsetConfigEntry ($configEntry) {
+ // Convert dashes to underscore
+ $configEntry = $this->convertDashesToUnderscores($configEntry);
+
+ // Is the configuration entry there?
+ if (!$this->isConfigurationEntrySet($configEntry)) {
+ // Entry was not found!
+ throw new NoConfigEntryException(array(__CLASS__, $configEntry), self::EXCEPTION_CONFIG_ENTRY_WAS_NOT_FOUND);
+ } // END - if
+
+ // Unset it
+ unset($this->config[$configEntry]);
+ }
+
+ /**
+ * Detects the server address (SERVER_ADDR) and set it in configuration
+ *
+ * @return $serverAddress The detected server address
+ * @todo We have to add some more entries from $_SERVER here
+ */
+ public function detectServerAddress () {
+ // Is the entry set?
+ if (!$this->isConfigurationEntrySet('server_addr')) {
+ // Is it set in $_SERVER?
+ if (isset($_SERVER['SERVER_ADDR'])) {
+ // Set it from $_SERVER
+ $this->setServerAddress($_SERVER['SERVER_ADDR']);
+ } elseif (class_exists('ConsoleTools')) {
+ // Run auto-detecting through console tools lib
+ ConsoleTools::acquireSelfIPAddress();
+ }
+ } // END - if
+
+ // Now get it from configuration
+ $serverAddress = $this->getServerAddress();
+
+ // Return it
+ return $serverAddress;