Files
factorio-clusterio/lib/errors.js
T
Hornwitser bcceae687f Reimplement plugin system
Implement a new plugin system based subclassing pre-defined base clases
and communicating with pre-defined link messages.
2019-12-14 17:48:56 +01:00

35 lines
706 B
JavaScript

/**
* Errors thrown in Clusterio
* @module
*/
class CommandError extends Error { }
class RequestError extends Error { }
// Signal for messages that fail validation
class InvalidMessage extends Error { }
// Errror class for known errors occuring during startup
class StartupError extends Error { }
// Errors outside of our control.
class EnvironmentError extends Error { }
// Errors caused by plugins
class PluginError extends Error {
constructor(pluginName, original) {
super(`PluginError: ${original.message}`);
this.pluginName = pluginName;
this.original = original;
}
}
module.exports = {
CommandError,
RequestError,
InvalidMessage,
StartupError,
EnvironmentError,
PluginError,
}