handleAndTransformError (error, address, connection) {
    if (isSecurityError(error)) {
      return this._handleSecurityError(error, address, connection)
    }
    if (isAvailabilityError(error)) {
      return this._handleUnavailability(error, address, connection)
    }
    if (isFailureToWrite(error)) {
      return this._handleWriteFailure(error, address, connection)
    }
    return error
  }
Handle and transform the error.
@param {Neo4jError} error the original error.
@param {ServerAddress} address the address of the connection where the error happened.
@return {Neo4jError} new error that should be propagated to the user.