Upgrade to ExtJS 3.0.0 - Released 07/06/2009
[extjs.git] / docs / source / Error.html
1 <html>\r
2 <head>\r
3   <title>The source code</title>\r
4     <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />\r
5     <script type="text/javascript" src="../resources/prettify/prettify.js"></script>\r
6 </head>\r
7 <body  onload="prettyPrint();">\r
8     <pre class="prettyprint lang-js"><div id="method-Ext.Element-handleError"></div>/**
9  * Framework-wide error-handler.  Developers can override this method to provide
10  * custom exception-handling.  Framework errors will often extend from the base
11  * Ext.Error class.
12  * @param {Object/Error} e The thrown exception object.
13  */
14 Ext.handleError = function(e) {
15     throw e;
16 };
17
18 <div id="cls-Ext.Error"></div>/**
19  * @class Ext.Error
20  * @extends Error
21  * <p>A base error class. Future implementations are intended to provide more
22  * robust error handling throughout the framework (<b>in the debug build only</b>)
23  * to check for common errors and problems. The messages issued by this class
24  * will aid error checking. Error checks will be automatically removed in the
25  * production build so that performance is not negatively impacted.</p>
26  * <p>Some sample messages currently implemented:</p><pre>
27 "DataProxy attempted to execute an API-action but found an undefined
28 url / function. Please review your Proxy url/api-configuration."
29  * </pre><pre>
30 "Could not locate your "root" property in your server response.
31 Please review your JsonReader config to ensure the config-property
32 "root" matches the property your server-response.  See the JsonReader
33 docs for additional assistance."
34  * </pre>
35  * <p>An example of the code used for generating error messages:</p><pre><code>
36 try {
37     generateError({
38         foo: 'bar'
39     });
40 }
41 catch (e) {
42     console.error(e);
43 }
44 function generateError(data) {
45     throw new Ext.Error('foo-error', data);
46 }
47  * </code></pre>
48  * @param {String} message
49  */
50 Ext.Error = function(message) {
51     // Try to read the message from Ext.Error.lang
52     this.message = (this.lang[message]) ? this.lang[message] : message;
53 }
54 Ext.Error.prototype = new Error();
55 Ext.apply(Ext.Error.prototype, {
56     // protected.  Extensions place their error-strings here.
57     lang: {},
58
59     name: 'Ext.Error',
60     <div id="method-Ext.Error-getName"></div>/**
61      * getName
62      * @return {String}
63      */
64     getName : function() {
65         return this.name;
66     },
67     <div id="method-Ext.Error-getMessage"></div>/**
68      * getMessage
69      * @return {String}
70      */
71     getMessage : function() {
72         return this.message;
73     },
74     <div id="method-Ext.Error-toJson"></div>/**
75      * toJson
76      * @return {String}
77      */
78     toJson : function() {
79         return Ext.encode(this);
80     }
81 });
82
83 </pre>    \r
84 </body>\r
85 </html>