Return to domexception.c CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / dom |
1.1 misho 1: /*
2: +----------------------------------------------------------------------+
3: | PHP Version 5 |
4: +----------------------------------------------------------------------+
5: | Copyright (c) 1997-2012 The PHP Group |
6: +----------------------------------------------------------------------+
7: | This source file is subject to version 3.01 of the PHP license, |
8: | that is bundled with this package in the file LICENSE, and is |
9: | available through the world-wide-web at the following url: |
10: | http://www.php.net/license/3_01.txt |
11: | If you did not receive a copy of the PHP license and are unable to |
12: | obtain it through the world-wide-web, please send a note to |
13: | license@php.net so we can mail you a copy immediately. |
14: +----------------------------------------------------------------------+
15: | Authors: Christian Stocker <chregu@php.net> |
16: | Rob Richards <rrichards@php.net> |
17: +----------------------------------------------------------------------+
18: */
19:
1.1.1.2 ! misho 20: /* $Id$ */
1.1 misho 21:
22: #ifdef HAVE_CONFIG_H
23: #include "config.h"
24: #endif
25:
26: #include "php.h"
27: #if HAVE_LIBXML && HAVE_DOM
28: #include "php_dom.h"
29:
30: /*
31: * class DOMException
32: *
33: * URL: http://www.w3.org/TR/2003/WD-DOM-Level-3-Core-20030226/DOM3-Core.html#core-ID-17189187
34: * Since:
35: */
36:
37: extern zend_class_entry *dom_domexception_class_entry;
38:
39: const zend_function_entry php_dom_domexception_class_functions[] = {
40: PHP_FE_END
41: };
42:
43: void php_dom_throw_error_with_message(int error_code, char *error_message, int strict_error TSRMLS_DC) /* {{{ */
44: {
45: if (strict_error == 1) {
46: zend_throw_exception(dom_domexception_class_entry, error_message, error_code TSRMLS_CC);
47: } else {
48: php_libxml_issue_error(E_WARNING, error_message TSRMLS_CC);
49: }
50: }
51: /* }}} */
52:
53: /* {{{ php_dom_throw_error */
54: void php_dom_throw_error(int error_code, int strict_error TSRMLS_DC)
55: {
56: char *error_message;
57:
58: switch (error_code)
59: {
60: case INDEX_SIZE_ERR:
61: error_message = "Index Size Error";
62: break;
63: case DOMSTRING_SIZE_ERR:
64: error_message = "DOM String Size Error";
65: break;
66: case HIERARCHY_REQUEST_ERR:
67: error_message = "Hierarchy Request Error";
68: break;
69: case WRONG_DOCUMENT_ERR:
70: error_message = "Wrong Document Error";
71: break;
72: case INVALID_CHARACTER_ERR:
73: error_message = "Invalid Character Error";
74: break;
75: case NO_DATA_ALLOWED_ERR:
76: error_message = "No Data Allowed Error";
77: break;
78: case NO_MODIFICATION_ALLOWED_ERR:
79: error_message = "No Modification Allowed Error";
80: break;
81: case NOT_FOUND_ERR:
82: error_message = "Not Found Error";
83: break;
84: case NOT_SUPPORTED_ERR:
85: error_message = "Not Supported Error";
86: break;
87: case INUSE_ATTRIBUTE_ERR:
88: error_message = "Inuse Attribute Error";
89: break;
90: case INVALID_STATE_ERR:
91: error_message = "Invalid State Error";
92: break;
93: case SYNTAX_ERR:
94: error_message = "Syntax Error";
95: break;
96: case INVALID_MODIFICATION_ERR:
97: error_message = "Invalid Modification Error";
98: break;
99: case NAMESPACE_ERR:
100: error_message = "Namespace Error";
101: break;
102: case INVALID_ACCESS_ERR:
103: error_message = "Invalid Access Error";
104: break;
105: case VALIDATION_ERR:
106: error_message = "Validation Error";
107: break;
108: default:
109: error_message = "Unhandled Error";
110: }
111:
112: php_dom_throw_error_with_message(error_code, error_message, strict_error TSRMLS_CC);
113: }
114: /* }}} end php_dom_throw_error */
115:
116: #endif /* HAVE_LIBXML && HAVE_DOM */
117:
118: /*
119: * Local variables:
120: * tab-width: 4
121: * c-basic-offset: 4
122: * End:
123: * vim600: noet sw=4 ts=4 fdm=marker
124: * vim<600: noet sw=4 ts=4
125: */