@magic-xpa/utils
Version:
magic utils package
71 lines • 9.87 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { Exception, StringBuilder } from "@magic-xpa/mscorelib";
import { XMLConstants } from "./XMLConstants";
export class DateTimeUtils {
/// <summary> returns the number in a 2 digit string
/**
* @param {?} n
* @return {?}
*/
static int2str(n) {
return (n > 9) ? n.toString() : ("0" + n);
}
/**
* @param {?} dateTime
* @param {?} format
* @param {?} logger
* @return {?}
*/
static ToString(dateTime, format, logger) {
/** @type {?} */
let dateTimeString;
try {
dateTimeString = dateTime.Format(format);
}
catch (ex) {
if (ex instanceof Exception) {
if (format === XMLConstants.CACHED_DATE_TIME_FORMAT) {
dateTimeString = DateTimeUtils.int2str(dateTime.Day) + "/" + DateTimeUtils.int2str(dateTime.Month) + "/" + dateTime.Year + " " +
DateTimeUtils.int2str(dateTime.Hour) + ":" + DateTimeUtils.int2str(dateTime.Minute) + ":" +
DateTimeUtils.int2str(dateTime.Second);
}
else {
if (format === XMLConstants.ERROR_LOG_TIME_FORMAT) {
dateTimeString = DateTimeUtils.int2str(dateTime.Hour) + ":" +
DateTimeUtils.int2str(dateTime.Minute) + ":" +
DateTimeUtils.int2str(dateTime.Second) + ".";
if (dateTime.Millisecond % 100 > 50) {
dateTimeString = dateTimeString + (Math.floor(dateTime.Millisecond / 100) + 1);
}
else {
dateTimeString = dateTimeString + Math.floor(dateTime.Millisecond / 100);
}
}
else {
if (format === XMLConstants.ERROR_LOG_DATE_FORMAT) {
dateTimeString = DateTimeUtils.int2str(dateTime.Day) + "/" + DateTimeUtils.int2str(dateTime.Month) + "/" + dateTime.Year;
}
else {
if (format === XMLConstants.HTTP_ERROR_TIME_FORMAT) {
dateTimeString = DateTimeUtils.int2str(dateTime.Hour) + ":" + DateTimeUtils.int2str(dateTime.Minute) + ":" + DateTimeUtils.int2str(dateTime.Second) + ".";
}
else {
logger.WriteExceptionToLogWithMsg(ex.Message);
/** @type {?} */
let dateTimeTmpString = new StringBuilder();
dateTimeString = dateTimeTmpString.ToString();
}
}
}
}
}
else
throw ex;
}
return dateTimeString;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZVRpbWVVdGlscy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtYWdpYy14cGEvdXRpbHMvIiwic291cmNlcyI6WyJzcmMvRGF0ZVRpbWVVdGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFXLFNBQVMsRUFBRSxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUMsTUFBTTs7Ozs7O0lBR0ksTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFTO1FBQzlCLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDOzs7Ozs7O0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFrQixFQUFFLE1BQWMsRUFBRSxNQUFXOztZQUN6RCxjQUFzQjtRQUMxQixJQUFJLENBQUM7WUFDSCxjQUFjLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBQ0QsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNWLEVBQUUsQ0FBQyxDQUFDLEVBQUUsWUFBWSxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUM1QixFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssWUFBWSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQztvQkFDcEQsY0FBYyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFDLElBQUksR0FBRyxHQUFHO3dCQUM1SCxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRzt3QkFDekYsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzNDLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLENBQUM7b0JBQ0osRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7d0JBQ2xELGNBQWMsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHOzRCQUN6RCxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHOzRCQUM1QyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLENBQUM7d0JBQy9DLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7NEJBQ3BDLGNBQWMsR0FBRyxjQUFjLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7d0JBQ2pGLENBQUM7d0JBQ0QsSUFBSSxDQUFDLENBQUM7NEJBQ0osY0FBYyxHQUFHLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDLENBQUM7d0JBQzNFLENBQUM7b0JBQ0gsQ0FBQztvQkFDRCxJQUFJLENBQUMsQ0FBQzt3QkFDSixFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssWUFBWSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQzs0QkFDbEQsY0FBYyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQzt3QkFDM0gsQ0FBQzt3QkFDRCxJQUFJLENBQUMsQ0FBQzs0QkFFSixFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssWUFBWSxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQztnQ0FDbkQsY0FBYyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxDQUFDOzRCQUM1SixDQUFDOzRCQUNELElBQUksQ0FBQyxDQUFDO2dDQUNKLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7O29DQUMxQyxpQkFBaUIsR0FBa0IsSUFBSSxhQUFhLEVBQUU7Z0NBQzFELGNBQWMsR0FBRyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQzs0QkFDaEQsQ0FBQzt3QkFDSCxDQUFDO29CQUNILENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7WUFDRCxJQUFJO2dCQUNGLE1BQU0sRUFBRSxDQUFDO1FBQ2IsQ0FBQztRQUNELE1BQU0sQ0FBQyxjQUFjLENBQUM7SUFDeEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEYXRlVGltZSwgRXhjZXB0aW9uLCBTdHJpbmdCdWlsZGVyfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuaW1wb3J0IHtMb2dnZXJ9IGZyb20gXCIuL0xvZ2dlclwiO1xyXG5pbXBvcnQge1hNTENvbnN0YW50c30gZnJvbSBcIi4vWE1MQ29uc3RhbnRzXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgRGF0ZVRpbWVVdGlscyB7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gcmV0dXJucyB0aGUgbnVtYmVyIGluIGEgMiBkaWdpdCBzdHJpbmdcclxuICBwcml2YXRlIHN0YXRpYyBpbnQyc3RyKG46IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gKG4gPiA5KSA/IG4udG9TdHJpbmcoKSA6IChcIjBcIiArIG4pO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIFRvU3RyaW5nKGRhdGVUaW1lOiBEYXRlVGltZSwgZm9ybWF0OiBzdHJpbmcsIGxvZ2dlcjogYW55KTogc3RyaW5nIHtcclxuICAgIGxldCBkYXRlVGltZVN0cmluZzogc3RyaW5nO1xyXG4gICAgdHJ5IHtcclxuICAgICAgZGF0ZVRpbWVTdHJpbmcgPSBkYXRlVGltZS5Gb3JtYXQoZm9ybWF0KTtcclxuICAgIH1cclxuICAgIGNhdGNoIChleCkge1xyXG4gICAgICBpZiAoZXggaW5zdGFuY2VvZiBFeGNlcHRpb24pIHtcclxuICAgICAgICBpZiAoZm9ybWF0ID09PSBYTUxDb25zdGFudHMuQ0FDSEVEX0RBVEVfVElNRV9GT1JNQVQpIHtcclxuICAgICAgICAgIGRhdGVUaW1lU3RyaW5nID0gRGF0ZVRpbWVVdGlscy5pbnQyc3RyKGRhdGVUaW1lLkRheSkgKyBcIi9cIiArIERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5Nb250aCkgKyBcIi9cIiArIGRhdGVUaW1lLlllYXIgKyBcIiBcIiArXHJcbiAgICAgICAgICAgIERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5Ib3VyKSArIFwiOlwiICsgRGF0ZVRpbWVVdGlscy5pbnQyc3RyKGRhdGVUaW1lLk1pbnV0ZSkgKyBcIjpcIiArXHJcbiAgICAgICAgICAgIERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5TZWNvbmQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgIGlmIChmb3JtYXQgPT09IFhNTENvbnN0YW50cy5FUlJPUl9MT0dfVElNRV9GT1JNQVQpIHtcclxuICAgICAgICAgICAgZGF0ZVRpbWVTdHJpbmcgPSBEYXRlVGltZVV0aWxzLmludDJzdHIoZGF0ZVRpbWUuSG91cikgKyBcIjpcIiArXHJcbiAgICAgICAgICAgICAgRGF0ZVRpbWVVdGlscy5pbnQyc3RyKGRhdGVUaW1lLk1pbnV0ZSkgKyBcIjpcIiArXHJcbiAgICAgICAgICAgICAgRGF0ZVRpbWVVdGlscy5pbnQyc3RyKGRhdGVUaW1lLlNlY29uZCkgKyBcIi5cIjtcclxuICAgICAgICAgICAgaWYgKGRhdGVUaW1lLk1pbGxpc2Vjb25kICUgMTAwID4gNTApIHtcclxuICAgICAgICAgICAgICBkYXRlVGltZVN0cmluZyA9IGRhdGVUaW1lU3RyaW5nICsgKE1hdGguZmxvb3IoZGF0ZVRpbWUuTWlsbGlzZWNvbmQgLyAxMDApICsgMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgZGF0ZVRpbWVTdHJpbmcgPSBkYXRlVGltZVN0cmluZyArIE1hdGguZmxvb3IoZGF0ZVRpbWUuTWlsbGlzZWNvbmQgLyAxMDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKGZvcm1hdCA9PT0gWE1MQ29uc3RhbnRzLkVSUk9SX0xPR19EQVRFX0ZPUk1BVCkge1xyXG4gICAgICAgICAgICAgIGRhdGVUaW1lU3RyaW5nID0gRGF0ZVRpbWVVdGlscy5pbnQyc3RyKGRhdGVUaW1lLkRheSkgKyBcIi9cIiArIERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5Nb250aCkgKyBcIi9cIiArIGRhdGVUaW1lLlllYXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSB7XHJcblxyXG4gICAgICAgICAgICAgIGlmIChmb3JtYXQgPT09IFhNTENvbnN0YW50cy5IVFRQX0VSUk9SX1RJTUVfRk9STUFUKSB7XHJcbiAgICAgICAgICAgICAgICBkYXRlVGltZVN0cmluZyA9IERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5Ib3VyKSArIFwiOlwiICsgRGF0ZVRpbWVVdGlscy5pbnQyc3RyKGRhdGVUaW1lLk1pbnV0ZSkgKyBcIjpcIiArIERhdGVUaW1lVXRpbHMuaW50MnN0cihkYXRlVGltZS5TZWNvbmQpICsgXCIuXCI7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgbG9nZ2VyLldyaXRlRXhjZXB0aW9uVG9Mb2dXaXRoTXNnKGV4Lk1lc3NhZ2UpO1xyXG4gICAgICAgICAgICAgICAgbGV0IGRhdGVUaW1lVG1wU3RyaW5nOiBTdHJpbmdCdWlsZGVyID0gbmV3IFN0cmluZ0J1aWxkZXIoKTtcclxuICAgICAgICAgICAgICAgIGRhdGVUaW1lU3RyaW5nID0gZGF0ZVRpbWVUbXBTdHJpbmcuVG9TdHJpbmcoKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgZWxzZVxyXG4gICAgICAgIHRocm93IGV4O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGRhdGVUaW1lU3RyaW5nO1xyXG4gIH1cclxufVxyXG4iXX0=