Copyright upgraded to 2010
[core.git] / inc / classes / exceptions / main / class_MissingMethodException.php
1 <?php
2 /**
3  * An exception thrown when a method is missing, this exception is used in
4  * guest/user login classes and thrown when a factory method is absend. I think
5  * we should still give it a try to rewrite these classes and again mark this
6  * method as deprecated because we have a more flexible ObjectFactory class.
7  *
8  * @author              Roland Haeder <webmaster@ship-simu.org>
9  * @version             0.0.0
10  * @copyright   Copyright (c) 2007, 2008 Roland Haeder, 2009, 2010 Core Developer Team
11  * @license             GNU GPL 3.0 or any newer version
12  * @link                http://www.ship-simu.org
13  * @todo                Try to rewrite user/guest login classes and mark this exception as deprecated
14  *
15  * This program is free software: you can redistribute it and/or modify
16  * it under the terms of the GNU General Public License as published by
17  * the Free Software Foundation, either version 3 of the License, or
18  * (at your option) any later version.
19  *
20  * This program is distributed in the hope that it will be useful,
21  * but WITHOUT ANY WARRANTY; without even the implied warranty of
22  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23  * GNU General Public License for more details.
24  *
25  * You should have received a copy of the GNU General Public License
26  * along with this program. If not, see <http://www.gnu.org/licenses/>.
27  */
28 class MissingMethodException extends FrameworkException {
29         /**
30          * The constructor
31          *
32          * @param       $classArray             Array holding the exception data
33          * @param       $code                   Code number for the exception
34          * @return      void
35          */
36         public function __construct (array $classArray, $code) {
37                 // Add a message around the missing class
38                 $message = sprintf("[%s:%d] This class has no method <u>%s()</u>!",
39                         $classArray[0]->__toString(),
40                         $this->getLine(),
41                         $classArray[1]
42                 );
43
44                 // Call parent constructor
45                 parent::__construct($message, $code);
46         }
47 }
48
49 // [EOF]
50 ?>