* @version 0.0 * @copyright Copyright(c) 2007 - 2009 Roland Haeder, this is free software * @license GNU GPL 3.0 or any newer version * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ // Is there an application helper instance? We need the method main() for // maining the application $app = ApplicationHelper::getInstance(); // Some sanity checks if ((empty($app)) || (is_null($app))) { // Something went wrong! ApplicationEntryPoint::app_die(sprintf("[Main:] Die Applikation %s kann nicht gestartet werden, da die Hilfsklasse %s nicht geladen ist!", $application, FrameworkConfiguration::getInstance()->readConfig("app_helper_class") )); } elseif (!is_object($app)) { // No object! ApplicationEntryPoint::app_die(sprintf("[Main:] Die Applikation %s kann nicht gestartet werden, da die 'app' kein Objekt ist!", $application )); } elseif (!method_exists($app, FrameworkConfiguration::getInstance()->readConfig("entry_method"))) { // Method not found! ApplicationEntryPoint::app_die(sprintf("[Main:] Die Applikation %s kann nicht gestartet werden, da die Methode %s fehlt!", $application, FrameworkConfiguration::getInstance()->readConfig("entry_method") )); } // Call the entry point method try { $eval = sprintf("%s::getInstance()->%s();", FrameworkConfiguration::getInstance()->readConfig("app_helper_class"), FrameworkConfiguration::getInstance()->readConfig("entry_method") ); eval($eval); } catch (SocketCreationException $e) { // Problems while creating sockets ApplicationEntryPoint::app_die(sprintf("[Main:] Das Hub konnte nicht initialisiert werden. Reason: %s, Code: %s", $e->getMessage(), $e->getHexCode() )); } catch (SocketSetupException $e) { // Problems while setting up sockets ApplicationEntryPoint::app_die(sprintf("[Main:] Das Hub konnte nicht initialisiert werden. Reason: %s, Code: %s", $e->getMessage(), $e->getHexCode() )); } catch (SocketBindException $e) { // Problems while binding to address/port ApplicationEntryPoint::app_die(sprintf("[Main:] Das Hub konnte nicht initialisiert werden. Reason: %s, Code: %s", $e->getMessage(), $e->getHexCode() )); } catch (SocketListeningException $e) { // Problems while starting listen to the socket ApplicationEntryPoint::app_die(sprintf("[Main:] Das Hub konnte nicht initialisiert werden. Reason: %s, Code: %s", $e->getMessage(), $e->getHexCode() )); } // [EOF] ?>