navidev-adt-api
Version:
API de conexión al Abap Developer Tools
91 lines (90 loc) • 3.75 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.AUTHTYPEID = exports.GENERALTYPEID = exports.NATIVETYPEID = exports.HTTPTYPEID = exports.CSRFEXTYPEID = exports.ADTEXTYPEID = void 0;
const isValidations_1 = __importDefault(require("../utilities/general/isValidations"));
exports.ADTEXTYPEID = Symbol();
exports.CSRFEXTYPEID = Symbol();
exports.HTTPTYPEID = Symbol();
exports.NATIVETYPEID = Symbol();
exports.GENERALTYPEID = Symbol();
exports.AUTHTYPEID = Symbol();
class AdtException extends Error {
/**
* Crea una excepción de tipo ADT
* @param errOrResponse | Numero de mensaje o respuesta HTTP
* @param properties | Propiedades
* @param type | Tipo
* @param message | Mensaje
* @param parent | Error padre
* @param namespace | Namespace
* @param localizedMessage | Mensaje localizado
* @param response | Respuesta del servicio
* @param typeID | ID interno del tipo de excepción
* @returns Excepción
*/
static create(errOrResponse, properties, type, message, parent, namespace, localizedMessage, response, typeID) {
if (!isValidations_1.default.isNumber(errOrResponse)) {
return this.create(errOrResponse.status, properties, "", errOrResponse.statusText || "Unknown error in adt client", undefined, undefined, undefined, errOrResponse, typeID);
}
else {
return new AdtException(errOrResponse, properties, type, message, parent, namespace, localizedMessage, response, typeID);
}
}
/**
* Generación error de tipo CSRFC
* @param message | Mensaje
* @param parent | Error padre
* @returns Excepción
*/
static createCsrfError(message, response, parent) {
return new AdtException(0, {}, "", message, parent, undefined, undefined, response, exports.CSRFEXTYPEID);
}
/**
* Creación simple de una excepción
* @param message
* @returns Excepción
*/
static simpleError(number = 0, message, typeID = exports.ADTEXTYPEID) {
return new AdtException(number, {}, "", message, undefined, undefined, undefined, undefined, typeID);
}
/**
* Error nativo
* @param err | Numero de error por defecto 500
* @param message | Mensaje
* @param parent | Objeto del error
* @returns Excepción
*/
static nativeError(err = 500, message, parent) {
return new AdtException(err, {}, "Unknown error", message, parent, undefined, undefined, undefined, exports.NATIVETYPEID);
}
/**
* Error general para casos desconocidos o excepciones raras
* @param err | Numero de mensake
* @param type | Tipo
* @param message | Mensaje
* @param parent | Error padre
* @returns Excepción
*/
static generalError(err = 500, type = "", message, parent) {
return new AdtException(err, {}, type, message, parent, undefined, undefined, undefined, exports.GENERALTYPEID);
}
static authError(err, message, response) {
return new AdtException(err, {}, "", message, undefined, undefined, undefined, response, exports.AUTHTYPEID);
}
constructor(err, properties, type, message, parent, namespace, localizedMessage, response, typeID) {
super();
this.err = err;
this.properties = properties;
this.type = type;
this.message = message;
this.parent = parent;
this.namespace = namespace;
this.localizedMessage = localizedMessage;
this.response = response;
this.typeID = typeID;
}
}
exports.default = AdtException;