Better RLEH logic for error wraps; ability to hide "Starting..." message

r0.1.5
Garrett Mills 3 years ago
parent be32976498
commit a93cd6d192
Signed by: garrettmills
GPG Key ID: D2BF5FBA8298F246

@ -54,6 +54,8 @@ export class Application extends Container {
protected applicationUnits: (typeof Unit)[] = []
protected instantiatedUnits: Unit[] = []
public forceStartupMessage: boolean = true
constructor() {
super()
@ -70,6 +72,10 @@ export class Application extends Container {
}
}
public hasUnit(unitClass: typeof Unit) {
return this.applicationUnits.includes(unitClass)
}
get root() {
return this.basePath.concat()
}
@ -150,7 +156,7 @@ export class Application extends Container {
async up() {
const logging: Logging = this.make<Logging>(Logging)
logging.info('Starting Extollo...', true)
logging.info('Starting Extollo...', this.forceStartupMessage)
for ( const unitClass of this.applicationUnits ) {
const unit: Unit = this.make<Unit>(unitClass)
this.instantiatedUnits.push(unit)
@ -161,8 +167,8 @@ export class Application extends Container {
async down() {
const logging: Logging = this.make<Logging>(Logging)
logging.info('Stopping Extollo...', true)
for ( const unit of this.instantiatedUnits ) {
logging.info('Stopping Extollo...', this.forceStartupMessage)
for ( const unit of [...this.instantiatedUnits].reverse() ) {
if ( !unit ) continue
await this.stopUnit(unit)
}

@ -27,6 +27,7 @@ export class RunLevelErrorHandler {
const error = new ErrorWithContext(e.message)
error.originalError = e
error.context = context
error.stack = e.stack
return error
}
@ -51,9 +52,9 @@ ${color.bgRed(' ')}
${color.bgRed(' UNCAUGHT RUN-LEVEL ERROR ')}
${color.bgRed(' ')}
${e.constructor ? e.constructor.name : e.name}
${operativeError.constructor ? operativeError.constructor.name : operativeError.name}
${color.red(`---------------------------------------------------`)}
${e.stack}
${operativeError.stack}
`
if ( contextDisplay ) {

Loading…
Cancel
Save