/* Error Constructor and constructor for all the core error classes. public function Error(message: String = null) */ static EjsError *errorConstructor(Ejs *ejs, EjsError *error, int argc, EjsObj **argv) { if (argc > 0) { ejsSetProperty(ejs, error, ES_Error_message, ejsToString(ejs, argv[0])); } if (ESV(Date)) { ejsSetProperty(ejs, error, ES_Error_timestamp, ejsCreateDate(ejs, mprGetTime())); ejsSetProperty(ejs, error, ES_Error_stack, ejsCaptureStack(ejs, 0)); } return error; }
PUBLIC EjsError *ejsCreateError(Ejs *ejs, EjsType *type, EjsObj *msg) { EjsError *error; error = ejsCreatePot(ejs, type, 0); if (error) { ejsSetProperty(ejs, error, ES_Error_message, msg); ejsSetProperty(ejs, error, ES_Error_timestamp, ejsCreateDate(ejs, mprGetTime())); ejsSetProperty(ejs, error, ES_Error_stack, ejsCaptureStack(ejs, 0)); } return error; }
static EjsDate *getDateHeader(Ejs *ejs, EjsHttp *hp, cchar *key) { MprTime when; cchar *value; if (!waitForResponseHeaders(hp)) { return 0; } value = httpGetHeader(hp->conn, key); if (value == 0) { return ESV(null); } if (mprParseTime(&when, value, MPR_UTC_TIMEZONE, NULL) < 0) { value = 0; } return ejsCreateDate(ejs, when); }