81 lines
2.3 KiB
JavaScript
81 lines
2.3 KiB
JavaScript
/**
|
||
*
|
||
* @namespace Errors
|
||
*/
|
||
var Errors = function () {
|
||
|
||
};
|
||
|
||
/**
|
||
* Описание объекта ошибки.
|
||
*
|
||
* Важно понимать, что такой объект существует только в документации,
|
||
*
|
||
* для того что бы описать результат отмены промиса.
|
||
*
|
||
* @example
|
||
* // Подключаем бибилиотеку инструментов
|
||
* var tools = require("providers/tools/lib");
|
||
*
|
||
* // Создаем промис
|
||
* var my_promise = new tools.promise();
|
||
*
|
||
* my_promise.native.then(function(successData){
|
||
* // Удачный сценарий в данном случае не рассматривается.
|
||
* },function(_err){
|
||
* console.log(JSON.stringify(_err, true, 4));*
|
||
* });
|
||
*
|
||
* // Производим сброс промиса.
|
||
* // Вот таким должно быть описание для ошибки.
|
||
* // При этом, поле sub может быть как null так и undefined
|
||
* // Но если к возникновению этой ошибки причасен другой промис или событие внутри провайдеров, то
|
||
* // в переменную sub надо его передать.
|
||
* my_promise.reject({
|
||
* err: 0,
|
||
* message: "my_error",
|
||
* sub: null
|
||
* })
|
||
*
|
||
* // Вывод в данном случае будет вот такой
|
||
* // {
|
||
* // "err": 0,
|
||
* // "message": "my_error",
|
||
* // "sub": null
|
||
* // }
|
||
*
|
||
* @class PromiseReject
|
||
* @memberof Errors
|
||
*/
|
||
Errors.PromiseReject = {
|
||
/**
|
||
* Код ошибки
|
||
*
|
||
* @public
|
||
* @name err
|
||
* @type {number}
|
||
* @memberof Errors.PromiseReject
|
||
*/
|
||
err: 0,
|
||
|
||
/**
|
||
* Краткое описание, почему произошла ошибка
|
||
* @public
|
||
* @name message
|
||
* @type {string}
|
||
* @memberof Errors.PromiseReject
|
||
*/
|
||
message: "",
|
||
|
||
/**
|
||
* Ссылка на ошибку, которая стала причиной текущей ошибки.
|
||
*
|
||
* Если этот параметр есть, то эта ошибка является проксирующей
|
||
*
|
||
* @public
|
||
* @name sub
|
||
* @type {Errors.PromiseReject}
|
||
* @memberof Errors.PromiseReject
|
||
*/
|
||
sub: new Errors.PromiseReject()
|
||
}; |