1 | // ConcurrentModificationException.js |
||
2 | "use strict"; |
||
3 | |||
4 | // :: DEPENDENCIES |
||
5 | |||
6 | // load native dependencies |
||
7 | 1 | const path = require("path"); |
|
8 | |||
9 | // load local dependencies |
||
10 | 1 | const RuntimeException = require(path.join(__dirname, "RuntimeException.js")); |
|
11 | |||
12 | // :: BASIC SETUP |
||
13 | |||
14 | /** |
||
15 | * This exception may be thrown by methods that have detected concurrent modification of an object when such |
||
16 | * modification is not permissible. |
||
17 | * @param {String} message - The message describing the <tt>ConcurrentModificationException</tt>. |
||
18 | * @param {Number} code - The unique code that identifies the cause of the <tt>ConcurrentModificationException</tt>. |
||
19 | * @augments RuntimeException |
||
20 | * @constructor |
||
21 | * @see https://docs.oracle.com/javase/8/docs/api/java/util/ConcurrentModificationException.html |
||
22 | */ |
||
23 | 1 | const ConcurrentModificationException = function (message, code) { |
|
24 | 196 | RuntimeException.call(this, null, message, code); |
|
25 | }; |
||
26 | |||
27 | // :: INHERITANCE |
||
28 | |||
29 | // set the RuntimeException 'class' as the parent in the prototype chain |
||
30 | 1 | ConcurrentModificationException.prototype = Object.create(RuntimeException.prototype); |
|
31 | 1 | ConcurrentModificationException.prototype.constructor = RuntimeException; |
|
32 | |||
33 | // :: PROTOTYPE |
||
34 | |||
35 | /** |
||
36 | * The name used to identify an <tt>ConcurrentModificationException</tt>. |
||
37 | * @type {String} |
||
38 | * @default |
||
39 | */ |
||
40 | 1 | ConcurrentModificationException.prototype.name = "ConcurrentModificationException"; |
|
41 | |||
42 | // :: EXPORT |
||
43 | |||
44 | // export the ConcurrentModificationException 'class' |
||
45 | module.exports = ConcurrentModificationException; |