@hotmeshio/hotmesh
Version:
Serverless Workflow
192 lines (191 loc) • 6.94 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SetStateError = exports.RegisterTimeoutError = exports.MapDataError = exports.InactiveJobError = exports.GetStateError = exports.GenerationalError = exports.ExecActivityError = exports.DuplicateJobError = exports.MeshFlowWaitForError = exports.MeshFlowWaitForAllError = exports.MeshFlowTimeoutError = exports.MeshFlowSleepError = exports.MeshFlowRetryError = exports.MeshFlowProxyError = exports.MeshFlowMaxedError = exports.MeshFlowFatalError = exports.MeshFlowChildError = exports.CollationError = void 0;
const enums_1 = require("./enums");
class GetStateError extends Error {
constructor(jobId) {
super(`${jobId} Not Found`);
this.code = enums_1.HMSH_CODE_NOTFOUND;
this.jobId = jobId;
}
}
exports.GetStateError = GetStateError;
class SetStateError extends Error {
constructor() {
super('Error occurred while setting job state');
}
}
exports.SetStateError = SetStateError;
class MeshFlowWaitForError extends Error {
constructor(params) {
super(`WaitFor Interruption`);
this.signalId = params.signalId;
this.index = params.index;
this.workflowDimension = params.workflowDimension;
this.code = enums_1.HMSH_CODE_MESHFLOW_WAIT;
}
}
exports.MeshFlowWaitForError = MeshFlowWaitForError;
class MeshFlowProxyError extends Error {
constructor(params) {
super(`ProxyActivity Interruption`);
this.arguments = params.arguments;
this.workflowId = params.workflowId;
this.workflowTopic = params.workflowTopic;
this.parentWorkflowId = params.parentWorkflowId;
this.expire = params.expire;
this.originJobId = params.originJobId;
this.index = params.index;
this.activityName = params.activityName;
this.workflowDimension = params.workflowDimension;
this.backoffCoefficient = params.backoffCoefficient;
this.maximumAttempts = params.maximumAttempts;
this.maximumInterval = params.maximumInterval;
this.code = enums_1.HMSH_CODE_MESHFLOW_PROXY;
}
}
exports.MeshFlowProxyError = MeshFlowProxyError;
class MeshFlowChildError extends Error {
constructor(params) {
super(`ExecChild Interruption`);
this.arguments = params.arguments;
this.workflowId = params.workflowId;
this.workflowTopic = params.workflowTopic;
this.parentWorkflowId = params.parentWorkflowId;
this.expire = params.expire;
this.persistent = params.persistent;
this.signalIn = params.signalIn;
this.originJobId = params.originJobId;
this.index = params.index;
this.workflowDimension = params.workflowDimension;
this.code = enums_1.HMSH_CODE_MESHFLOW_CHILD;
this.await = params.await;
this.backoffCoefficient = params.backoffCoefficient;
this.maximumAttempts = params.maximumAttempts;
this.maximumInterval = params.maximumInterval;
}
}
exports.MeshFlowChildError = MeshFlowChildError;
class MeshFlowWaitForAllError extends Error {
constructor(params) {
super(`Collation Interruption`);
this.items = params.items;
this.size = params.size;
this.workflowId = params.workflowId;
this.workflowTopic = params.workflowTopic;
this.parentWorkflowId = params.parentWorkflowId;
this.originJobId = params.originJobId;
this.index = params.index;
this.workflowDimension = params.workflowDimension;
this.code = enums_1.HMSH_CODE_MESHFLOW_ALL;
}
}
exports.MeshFlowWaitForAllError = MeshFlowWaitForAllError;
class MeshFlowSleepError extends Error {
constructor(params) {
super(`SleepFor Interruption`);
this.duration = params.duration;
this.workflowId = params.workflowId;
this.index = params.index;
this.workflowDimension = params.workflowDimension;
this.code = enums_1.HMSH_CODE_MESHFLOW_SLEEP;
}
}
exports.MeshFlowSleepError = MeshFlowSleepError;
class MeshFlowTimeoutError extends Error {
constructor(message, stack) {
super(message);
if (this.stack) {
this.stack = stack;
}
this.code = enums_1.HMSH_CODE_MESHFLOW_TIMEOUT;
}
}
exports.MeshFlowTimeoutError = MeshFlowTimeoutError;
class MeshFlowMaxedError extends Error {
constructor(message, stackTrace) {
super(message);
if (stackTrace) {
this.stack = stackTrace;
}
this.code = enums_1.HMSH_CODE_MESHFLOW_MAXED;
}
}
exports.MeshFlowMaxedError = MeshFlowMaxedError;
class MeshFlowFatalError extends Error {
constructor(message, stackTrace) {
super(message);
if (stackTrace) {
this.stack = stackTrace;
}
this.code = enums_1.HMSH_CODE_MESHFLOW_FATAL;
}
}
exports.MeshFlowFatalError = MeshFlowFatalError;
class MeshFlowRetryError extends Error {
constructor(message, stackTrace) {
super(message);
if (stackTrace) {
this.stack = stackTrace;
}
this.code = enums_1.HMSH_CODE_MESHFLOW_RETRYABLE;
}
}
exports.MeshFlowRetryError = MeshFlowRetryError;
class MapDataError extends Error {
constructor() {
super('Error occurred while mapping data');
}
}
exports.MapDataError = MapDataError;
class RegisterTimeoutError extends Error {
constructor() {
super('Error occurred while registering activity timeout');
}
}
exports.RegisterTimeoutError = RegisterTimeoutError;
class DuplicateJobError extends Error {
constructor(jobId) {
super('Duplicate job');
this.jobId = jobId;
this.message = `Duplicate job: ${jobId}`;
}
}
exports.DuplicateJobError = DuplicateJobError;
class InactiveJobError extends Error {
constructor(jobId, status, activityId) {
super('Inactive job');
this.jobId = jobId;
this.activityId = activityId;
this.message = `Inactive job: ${jobId}`;
this.status = status;
}
}
exports.InactiveJobError = InactiveJobError;
class GenerationalError extends Error {
constructor(expected, actual, jobId, activityId, dimensionalAddress) {
super('Generational Error');
this.expected = expected;
this.actual = actual;
this.jobId = jobId;
this.activityId = activityId;
this.dimensionalAddress = dimensionalAddress;
}
}
exports.GenerationalError = GenerationalError;
class ExecActivityError extends Error {
constructor() {
super('Error occurred while executing activity');
}
}
exports.ExecActivityError = ExecActivityError;
class CollationError extends Error {
constructor(status, leg, stage, fault) {
super('collation-error');
this.leg = leg;
this.status = status;
this.stage = stage;
this.fault = fault;
}
}
exports.CollationError = CollationError;