aboutsummaryrefslogtreecommitdiff
path: root/engine/lib/exceptions.php
blob: 0c9b9b0d700e154cff833abaa8369ab0f7a73603 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<?php
	/**
	 * Exceptions.
	 * Define some globally useful exception classes.
	 * 
	 * @package Elgg
	 * @subpackage Exceptions
	 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
	 * @author Marcus Povey <marcus@dushka.co.uk>
	 * @copyright Curverider Ltd 2008
	 * @link http://elgg.org/
	 */

	// Top level //////////////////////////////////////////////////////////////////////////////

	/**
	 * @class IOException 
	 * An IO Exception, throw when an IO Exception occurs. Subclass for specific IO Exceptions.
	 * @author Marcus Povey <marcus@dushka.co.uk>
	 */
	class IOException extends Exception {}

	/**
	 * @class ClassException 
	 * A class Exception, throw when there is a class error.
	 * @author Marcus Povey <marcus@dushka.co.uk>
	 */
	class ClassException extends Exception {}

	/**
	 * @class ConfigurationException 
	 * There is a configuration error
	 * @author Marcus Povey <marcus@dushka.co.uk>
	 */
	class ConfigurationException extends Exception {}

	/**
	 * @class SecurityException 
	 * An Security Exception, throw when a Security Exception occurs. Subclass for specific Security Execeptions (access problems etc)
	 * @author Marcus Povey <marcus@dushka.co.uk>
	 */
	class SecurityException extends Exception {}

	/**
	 * @class ClassNotFoundException 
	 * An database exception, throw when a database exception happens, subclass if more detail is needed.
	 * @author Marcus Povey <marcus@dushka.co.uk>
	 */
	class DatabaseException extends Exception {}

	/**
	 * @class APIException
	 * The API Exception class, thrown by the API layer when an API call has an issue.
	 * @author Marcus Povey <marcus@dushka.co.uk>
	 */
	class APIException extends Exception {}
	
	// Class exceptions ///////////////////////////////////////////////////////////////////////

	/**
	 * @class InvalidClassException 
	 * An invalid class Exception, throw when a class is invalid.
	 * @author Marcus Povey <marcus@dushka.co.uk>
	 */
	class InvalidClassException extends ClassException {}

	/**
	 * @class ClassNotFoundException 
	 * An Class not found Exception, throw when an class can not be found occurs.
	 * @author Marcus Povey <marcus@dushka.co.uk>
	 */
	class ClassNotFoundException extends ClassException {}
	
	// Configuration exceptions ///////////////////////////////////////////////////////////////

	/**
	 * @class InstallationException
	 * Thrown when there is a major problem with the installation.
	 * @author Marcus Povey <marcus@dushka.co.uk>
	 */
	class InstallationException extends ConfigurationException {}
?>