mutual-exclusion
Version:
Mutual Exclusion (mutex) object for JavaScript.
28 lines (18 loc) • 545 B
Flow
// @flow
/* eslint-disable fp/no-class, fp/no-this */
import ExtendableError from 'es6-error';
export class MutualExclusionError extends ExtendableError {}
export class WaitTimeoutError extends MutualExclusionError {
code: string;
constructor (message: string, code: string = 'WAIT_TIMEOUT') {
super(message);
this.code = code;
}
}
export class HoldTimeoutError extends MutualExclusionError {
code: string;
constructor (message: string, code: string = 'HOLD_TIMEOUT') {
super(message);
this.code = code;
}
}