ionic-logging-service
Version:
Logging functionalities for apps built with Ionic framework
92 lines • 9.76 kB
JavaScript
import * as log4javascript from "log4javascript";
import { LogLevel } from "./log-level.model";
/**
* Helper class for converting log levels from and to different data type.
*/
export class LogLevelConverter {
/**
* Converts log4javascript.Level to internal LogLevel.
*
* @param level log4javascript's data type
* @return internal data type.
*/
static levelFromLog4Javascript(level) {
switch (level) {
case log4javascript.Level.ALL:
return LogLevel.ALL;
case log4javascript.Level.DEBUG:
return LogLevel.DEBUG;
case log4javascript.Level.ERROR:
return LogLevel.ERROR;
case log4javascript.Level.FATAL:
return LogLevel.FATAL;
case log4javascript.Level.INFO:
return LogLevel.INFO;
case log4javascript.Level.OFF:
return LogLevel.OFF;
case log4javascript.Level.TRACE:
return LogLevel.TRACE;
case log4javascript.Level.WARN:
return LogLevel.WARN;
default:
throw new Error(`invalid level ${level}`);
}
}
/**
* Converts string representation to internal LogLevel.
*
* @param level string representation
* @return internal data type.
*/
static levelFromString(level) {
switch (level) {
case "ALL":
return LogLevel.ALL;
case "DEBUG":
return LogLevel.DEBUG;
case "ERROR":
return LogLevel.ERROR;
case "FATAL":
return LogLevel.FATAL;
case "INFO":
return LogLevel.INFO;
case "OFF":
return LogLevel.OFF;
case "TRACE":
return LogLevel.TRACE;
case "WARN":
return LogLevel.WARN;
default:
throw new Error(`invalid level ${level}`);
}
}
/**
* Converts internal LogLevel to log4javascript.Level.
*
* @param internal data type.
* @return level log4javascript's data type
*/
static levelToLog4Javascript(level) {
switch (level) {
case LogLevel.ALL:
return log4javascript.Level.ALL;
case LogLevel.DEBUG:
return log4javascript.Level.DEBUG;
case LogLevel.ERROR:
return log4javascript.Level.ERROR;
case LogLevel.FATAL:
return log4javascript.Level.FATAL;
case LogLevel.INFO:
return log4javascript.Level.INFO;
case LogLevel.OFF:
return log4javascript.Level.OFF;
case LogLevel.TRACE:
return log4javascript.Level.TRACE;
case LogLevel.WARN:
return log4javascript.Level.WARN;
default:
throw new Error(`invalid level ${level}`);
}
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLWxldmVsLmNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2lvbmljLWxvZ2dpbmctc2VydmljZS9zcmMvbGliL2xvZy1sZXZlbC5jb252ZXJ0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLGNBQWMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFN0M7O0dBRUc7QUFDSCxNQUFNLE9BQU8saUJBQWlCO0lBRTdCOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLHVCQUF1QixDQUFDLEtBQTJCO1FBQ2hFLFFBQVEsS0FBSyxFQUFFLENBQUM7WUFDZixLQUFLLGNBQWMsQ0FBQyxLQUFLLENBQUMsR0FBRztnQkFDNUIsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDO1lBQ3JCLEtBQUssY0FBYyxDQUFDLEtBQUssQ0FBQyxLQUFLO2dCQUM5QixPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFDdkIsS0FBSyxjQUFjLENBQUMsS0FBSyxDQUFDLEtBQUs7Z0JBQzlCLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQztZQUN2QixLQUFLLGNBQWMsQ0FBQyxLQUFLLENBQUMsS0FBSztnQkFDOUIsT0FBTyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ3ZCLEtBQUssY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJO2dCQUM3QixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDdEIsS0FBSyxjQUFjLENBQUMsS0FBSyxDQUFDLEdBQUc7Z0JBQzVCLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQztZQUNyQixLQUFLLGNBQWMsQ0FBQyxLQUFLLENBQUMsS0FBSztnQkFDOUIsT0FBTyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ3ZCLEtBQUssY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJO2dCQUM3QixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDdEI7Z0JBQ0MsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0YsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUFhO1FBQzFDLFFBQVEsS0FBSyxFQUFFLENBQUM7WUFDZixLQUFLLEtBQUs7Z0JBQ1QsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDO1lBQ3JCLEtBQUssT0FBTztnQkFDWCxPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFDdkIsS0FBSyxPQUFPO2dCQUNYLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQztZQUN2QixLQUFLLE9BQU87Z0JBQ1gsT0FBTyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ3ZCLEtBQUssTUFBTTtnQkFDVixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDdEIsS0FBSyxLQUFLO2dCQUNULE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQztZQUNyQixLQUFLLE9BQU87Z0JBQ1gsT0FBTyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ3ZCLEtBQUssTUFBTTtnQkFDVixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDdEI7Z0JBQ0MsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0YsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLHFCQUFxQixDQUFDLEtBQWU7UUFDbEQsUUFBUSxLQUFLLEVBQUUsQ0FBQztZQUNmLEtBQUssUUFBUSxDQUFDLEdBQUc7Z0JBQ2hCLE9BQU8sY0FBYyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7WUFDakMsS0FBSyxRQUFRLENBQUMsS0FBSztnQkFDbEIsT0FBTyxjQUFjLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUNuQyxLQUFLLFFBQVEsQ0FBQyxLQUFLO2dCQUNsQixPQUFPLGNBQWMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQ25DLEtBQUssUUFBUSxDQUFDLEtBQUs7Z0JBQ2xCLE9BQU8sY0FBYyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDbkMsS0FBSyxRQUFRLENBQUMsSUFBSTtnQkFDakIsT0FBTyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztZQUNsQyxLQUFLLFFBQVEsQ0FBQyxHQUFHO2dCQUNoQixPQUFPLGNBQWMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO1lBQ2pDLEtBQUssUUFBUSxDQUFDLEtBQUs7Z0JBQ2xCLE9BQU8sY0FBYyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDbkMsS0FBSyxRQUFRLENBQUMsSUFBSTtnQkFDakIsT0FBTyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztZQUNsQztnQkFDQyxNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLENBQUM7SUFDRixDQUFDO0NBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBsb2c0amF2YXNjcmlwdCBmcm9tIFwibG9nNGphdmFzY3JpcHRcIjtcblxuaW1wb3J0IHsgTG9nTGV2ZWwgfSBmcm9tIFwiLi9sb2ctbGV2ZWwubW9kZWxcIjtcblxuLyoqXG4gKiBIZWxwZXIgY2xhc3MgZm9yIGNvbnZlcnRpbmcgbG9nIGxldmVscyBmcm9tIGFuZCB0byBkaWZmZXJlbnQgZGF0YSB0eXBlLlxuICovXG5leHBvcnQgY2xhc3MgTG9nTGV2ZWxDb252ZXJ0ZXIge1xuXG5cdC8qKlxuXHQgKiBDb252ZXJ0cyBsb2c0amF2YXNjcmlwdC5MZXZlbCB0byBpbnRlcm5hbCBMb2dMZXZlbC5cblx0ICpcblx0ICogQHBhcmFtIGxldmVsIGxvZzRqYXZhc2NyaXB0J3MgZGF0YSB0eXBlXG5cdCAqIEByZXR1cm4gaW50ZXJuYWwgZGF0YSB0eXBlLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBsZXZlbEZyb21Mb2c0SmF2YXNjcmlwdChsZXZlbDogbG9nNGphdmFzY3JpcHQuTGV2ZWwpOiBMb2dMZXZlbCB7XG5cdFx0c3dpdGNoIChsZXZlbCkge1xuXHRcdFx0Y2FzZSBsb2c0amF2YXNjcmlwdC5MZXZlbC5BTEw6XG5cdFx0XHRcdHJldHVybiBMb2dMZXZlbC5BTEw7XG5cdFx0XHRjYXNlIGxvZzRqYXZhc2NyaXB0LkxldmVsLkRFQlVHOlxuXHRcdFx0XHRyZXR1cm4gTG9nTGV2ZWwuREVCVUc7XG5cdFx0XHRjYXNlIGxvZzRqYXZhc2NyaXB0LkxldmVsLkVSUk9SOlxuXHRcdFx0XHRyZXR1cm4gTG9nTGV2ZWwuRVJST1I7XG5cdFx0XHRjYXNlIGxvZzRqYXZhc2NyaXB0LkxldmVsLkZBVEFMOlxuXHRcdFx0XHRyZXR1cm4gTG9nTGV2ZWwuRkFUQUw7XG5cdFx0XHRjYXNlIGxvZzRqYXZhc2NyaXB0LkxldmVsLklORk86XG5cdFx0XHRcdHJldHVybiBMb2dMZXZlbC5JTkZPO1xuXHRcdFx0Y2FzZSBsb2c0amF2YXNjcmlwdC5MZXZlbC5PRkY6XG5cdFx0XHRcdHJldHVybiBMb2dMZXZlbC5PRkY7XG5cdFx0XHRjYXNlIGxvZzRqYXZhc2NyaXB0LkxldmVsLlRSQUNFOlxuXHRcdFx0XHRyZXR1cm4gTG9nTGV2ZWwuVFJBQ0U7XG5cdFx0XHRjYXNlIGxvZzRqYXZhc2NyaXB0LkxldmVsLldBUk46XG5cdFx0XHRcdHJldHVybiBMb2dMZXZlbC5XQVJOO1xuXHRcdFx0ZGVmYXVsdDpcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIGxldmVsICR7bGV2ZWx9YCk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIENvbnZlcnRzIHN0cmluZyByZXByZXNlbnRhdGlvbiB0byBpbnRlcm5hbCBMb2dMZXZlbC5cblx0ICpcblx0ICogQHBhcmFtIGxldmVsIHN0cmluZyByZXByZXNlbnRhdGlvblxuXHQgKiBAcmV0dXJuIGludGVybmFsIGRhdGEgdHlwZS5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgbGV2ZWxGcm9tU3RyaW5nKGxldmVsOiBzdHJpbmcpOiBMb2dMZXZlbCB7XG5cdFx0c3dpdGNoIChsZXZlbCkge1xuXHRcdFx0Y2FzZSBcIkFMTFwiOlxuXHRcdFx0XHRyZXR1cm4gTG9nTGV2ZWwuQUxMO1xuXHRcdFx0Y2FzZSBcIkRFQlVHXCI6XG5cdFx0XHRcdHJldHVybiBMb2dMZXZlbC5ERUJVRztcblx0XHRcdGNhc2UgXCJFUlJPUlwiOlxuXHRcdFx0XHRyZXR1cm4gTG9nTGV2ZWwuRVJST1I7XG5cdFx0XHRjYXNlIFwiRkFUQUxcIjpcblx0XHRcdFx0cmV0dXJuIExvZ0xldmVsLkZBVEFMO1xuXHRcdFx0Y2FzZSBcIklORk9cIjpcblx0XHRcdFx0cmV0dXJuIExvZ0xldmVsLklORk87XG5cdFx0XHRjYXNlIFwiT0ZGXCI6XG5cdFx0XHRcdHJldHVybiBMb2dMZXZlbC5PRkY7XG5cdFx0XHRjYXNlIFwiVFJBQ0VcIjpcblx0XHRcdFx0cmV0dXJuIExvZ0xldmVsLlRSQUNFO1xuXHRcdFx0Y2FzZSBcIldBUk5cIjpcblx0XHRcdFx0cmV0dXJuIExvZ0xldmVsLldBUk47XG5cdFx0XHRkZWZhdWx0OlxuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgbGV2ZWwgJHtsZXZlbH1gKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogQ29udmVydHMgaW50ZXJuYWwgTG9nTGV2ZWwgdG8gbG9nNGphdmFzY3JpcHQuTGV2ZWwuXG5cdCAqXG5cdCAqIEBwYXJhbSBpbnRlcm5hbCBkYXRhIHR5cGUuXG5cdCAqIEByZXR1cm4gbGV2ZWwgbG9nNGphdmFzY3JpcHQncyBkYXRhIHR5cGVcblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgbGV2ZWxUb0xvZzRKYXZhc2NyaXB0KGxldmVsOiBMb2dMZXZlbCk6IGxvZzRqYXZhc2NyaXB0LkxldmVsIHtcblx0XHRzd2l0Y2ggKGxldmVsKSB7XG5cdFx0XHRjYXNlIExvZ0xldmVsLkFMTDpcblx0XHRcdFx0cmV0dXJuIGxvZzRqYXZhc2NyaXB0LkxldmVsLkFMTDtcblx0XHRcdGNhc2UgTG9nTGV2ZWwuREVCVUc6XG5cdFx0XHRcdHJldHVybiBsb2c0amF2YXNjcmlwdC5MZXZlbC5ERUJVRztcblx0XHRcdGNhc2UgTG9nTGV2ZWwuRVJST1I6XG5cdFx0XHRcdHJldHVybiBsb2c0amF2YXNjcmlwdC5MZXZlbC5FUlJPUjtcblx0XHRcdGNhc2UgTG9nTGV2ZWwuRkFUQUw6XG5cdFx0XHRcdHJldHVybiBsb2c0amF2YXNjcmlwdC5MZXZlbC5GQVRBTDtcblx0XHRcdGNhc2UgTG9nTGV2ZWwuSU5GTzpcblx0XHRcdFx0cmV0dXJuIGxvZzRqYXZhc2NyaXB0LkxldmVsLklORk87XG5cdFx0XHRjYXNlIExvZ0xldmVsLk9GRjpcblx0XHRcdFx0cmV0dXJuIGxvZzRqYXZhc2NyaXB0LkxldmVsLk9GRjtcblx0XHRcdGNhc2UgTG9nTGV2ZWwuVFJBQ0U6XG5cdFx0XHRcdHJldHVybiBsb2c0amF2YXNjcmlwdC5MZXZlbC5UUkFDRTtcblx0XHRcdGNhc2UgTG9nTGV2ZWwuV0FSTjpcblx0XHRcdFx0cmV0dXJuIGxvZzRqYXZhc2NyaXB0LkxldmVsLldBUk47XG5cdFx0XHRkZWZhdWx0OlxuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgbGV2ZWwgJHtsZXZlbH1gKTtcblx0XHR9XG5cdH1cbn1cbiJdfQ==