Files
elasticsearch-js/lib/errors.js
delvedor 8ce9f970f0 WIP: initial prototype
- Added randomizeHost option
- Added ignore status code option
- Updated error classes
- Added ndjson support
- Retry on 502/3/4
2018-10-25 17:10:00 +02:00

80 lines
2.0 KiB
JavaScript

'use strict'
class BadConfigurationError extends Error {
constructor (message) {
super()
Error.captureStackTrace(this, BadConfigurationError)
this.name = 'BadConfigurationError'
this.message = message || 'Bad Configuration Error'
}
}
class TimeoutError extends Error {
constructor (message, request) {
super()
Error.captureStackTrace(this, TimeoutError)
this.name = 'TimeoutError'
this.message = message || 'Timeout Error'
this.request = request
}
}
class ConnectionError extends Error {
constructor (message, request) {
super()
Error.captureStackTrace(this, ConnectionError)
this.name = 'ConnectionError'
this.message = message || 'Connection Error'
this.request = request
}
}
class NoLivingConnectionsError extends Error {
constructor (message) {
super()
Error.captureStackTrace(this, NoLivingConnectionsError)
this.name = 'NoLivingConnectionsError'
this.message = message || 'No Living Connections Error'
}
}
class SerializationError extends Error {
constructor (message) {
super()
Error.captureStackTrace(this, SerializationError)
this.name = 'SerializationError'
this.message = message || 'Serialization Error'
}
}
class DeserializationError extends Error {
constructor (message) {
super()
Error.captureStackTrace(this, DeserializationError)
this.name = 'DeserializationError'
this.message = message || 'Deserialization Error'
}
}
class ResponseError extends Error {
constructor (payload, statusCode, headers) {
super()
Error.captureStackTrace(this, ResponseError)
this.name = 'ResponseError'
this.message = (payload && payload.error && payload.error.type) || 'Response Error'
this.response = payload
this.statusCode = (payload && payload.status) || statusCode
this.headers = headers
}
}
module.exports = {
BadConfigurationError,
TimeoutError,
ConnectionError,
NoLivingConnectionsError,
SerializationError,
DeserializationError,
ResponseError
}