Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( ErrMandatoryQueryParamMissing = wrench.Add("mandatory query parameter is missing", wrench.Codes{HTTP: http.StatusBadRequest}) ErrEmptyQueryParam = wrench.Add("query parameter cannot be empty", wrench.Codes{HTTP: http.StatusBadRequest}) ErrInvalidQueryParamValue = wrench.Add("invalid query parameter value", wrench.Codes{HTTP: http.StatusBadRequest}) ErrDuplicateQueryParamValue = wrench.Add("duplicate query parameter value", wrench.Codes{HTTP: http.StatusBadRequest}) )
Sentinel Errors.
The errors defined below using wrench.Add are scoped to the wrench package itself. They will be registered globally within the singleton registry of wrench.
This means that wherever the wrench package is imported, either directly or indirectly, these errors will be accessible through the wrench registry. Any package importing gitlab.com/fabriktor/pkg will have access to these errors as they are registered in the global registry of the wrench package.
Additionally, because these errors are registered in the singleton registry, the FromAppErr function from wrench/httperr will successfully retrieve the associated HTTP status codes and messages when converting errors to HTTP responses. The registry state is shared globally across all imports of wrench, ensuring consistent error handling throughout Fabriktor codebase.
var ( ErrNilValue = wrench.Add("one or more parameters are nil", wrench.Codes{}) ErrMissingHTTPRequester = wrench.Add("missing http requester", wrench.Codes{}) ErrMissingHTTPDoer = wrench.Add("missing http doer", wrench.Codes{}) ErrMissingMarshaler = wrench.Add("missing marshaler", wrench.Codes{}) ErrMissingUnmarshaler = wrench.Add("missing unmarshaler", wrench.Codes{}) ErrMissingGeocoder = wrench.Add("missing geocoder", wrench.Codes{}) ErrMissingGoogleMaps = wrench.Add("missing google maps", wrench.Codes{}) ErrMissingReader = wrench.Add("missing reader", wrench.Codes{}) ErrMissingHTTPClient = wrench.Add("missing http client", wrench.Codes{}) ErrMissingGzipWriter = wrench.Add("missing gzip writer", wrench.Codes{}) ErrMissingGzipReader = wrench.Add("missing gzip reader", wrench.Codes{}) ErrMissingGzipUtil = wrench.Add("missing gzip util", wrench.Codes{}) ErrResponseWriteFailed = wrench.Add("failed to write response", wrench.Codes{}) ErrGzipResponseWriteFailed = wrench.Add("failed to write gzip response", wrench.Codes{}) ErrMissingHTTPUtil = wrench.Add("missing http util", wrench.Codes{}) ErrMissingFSysFileReader = wrench.Add("missing filesystem file reader", wrench.Codes{}) ErrMissingMongoClient = wrench.Add("missing mongo client", wrench.Codes{}) ErrMissingDBOperator = wrench.Add("missing db operator", wrench.Codes{}) ErrMissingRedisClient = wrench.Add("missing redis client", wrench.Codes{}) ErrMissingWriter = wrench.Add("missing writer", wrench.Codes{}) ErrMissingCacheOperator = wrench.Add("missing cache operator", wrench.Codes{}) ErrMissingCacher = wrench.Add("missing cacher", wrench.Codes{}) ErrMissingHTTPResponder = wrench.Add("missing http responder", wrench.Codes{}) ErrMissingLimiter = wrench.Add("missing limiter", wrench.Codes{}) ErrMissingSemaphore = wrench.Add("missing semaphore", wrench.Codes{}) ErrMissingServer = wrench.Add("missing server", wrench.Codes{}) ErrMissingServerRunner = wrench.Add("missing server runner", wrench.Codes{}) ErrMissingMiddleware = wrench.Add("missing middleware", wrench.Codes{}) ErrMissingRouterRegistryMutex = wrench.Add("missing router registry mutex", wrench.Codes{}) ErrMissingRouterSemaphore = wrench.Add("missing router semaphore", wrench.Codes{}) ErrMissingRouterRegistry = wrench.Add("missing router registry", wrench.Codes{}) ErrInvalidConversionFactor = wrench.Add("conversion factor must be greater than zero", wrench.Codes{}) ErrBasisPointsOverflow = wrench.Add("basis points overflow int64 range", wrench.Codes{}) ErrEmptyCacheID = wrench.Add("cache ID cannot be empty", wrench.Codes{}) ErrCacheRetrievalFailed = wrench.Add("failed to retrieve cache", wrench.Codes{}) ErrCacheSetFailed = wrench.Add("failed to set cache", wrench.Codes{}) ErrCacheGetFailed = wrench.Add("failed to retrieve cache", wrench.Codes{}) ErrCacheMiss = wrench.Add("cache miss", wrench.Codes{}) ErrBatchCacheGetFailed = wrench.Add("failed to retrieve batch cache", wrench.Codes{}) ErrBatchCacheSetFailed = wrench.Add("failed to set batch cache", wrench.Codes{}) ErrCacheFlushFailed = wrench.Add("failed to flush cache", wrench.Codes{}) ErrBatchCacheFlushFailed = wrench.Add("failed to flush batch cache", wrench.Codes{}) ErrFlushAllFailed = wrench.Add("failed to flush all caches", wrench.Codes{}) ErrNilValueProvided = wrench.Add("nil value provided", wrench.Codes{}) ErrMarshallingFailed = wrench.Add("failed to marshal value", wrench.Codes{}) ErrNilValueProvidedForDecode = wrench.Add("nil value provided for decode", wrench.Codes{}) ErrUnmarshallingFailed = wrench.Add("failed to unmarshal cache hit", wrench.Codes{}) ErrCacheExistenceCheckFailed = wrench.Add("failed to check cache existence", wrench.Codes{}) ErrX509KeyPairCreationFailed = wrench.Add("failed to create X509 key pair", wrench.Codes{}) ErrInsertOneFailed = wrench.Add("failed to insert one document", wrench.Codes{}) ErrFindOneFailed = wrench.Add("failed to find one document", wrench.Codes{}) ErrFindManyFailed = wrench.Add("failed to find many documents", wrench.Codes{}) ErrReplaceOneFailed = wrench.Add("failed to replace one document", wrench.Codes{}) ErrDeleteOneFailed = wrench.Add("failed to delete one document", wrench.Codes{}) ErrDeleteManyFailed = wrench.Add("failed to delete many documents", wrench.Codes{}) ErrEncodeSpecificsFailed = wrench.Add("failed to encode specifics", wrench.Codes{}) ErrExpectedStructOrPointerToStruct = wrench.Add("only struct or pointer to struct expected", wrench.Codes{}) ErrExpectedPointerToStruct = wrench.Add("only pointer to struct expected", wrench.Codes{}) ErrStructNotFound = wrench.Add("struct not found", wrench.Codes{}) ErrFirebaseAppCreationFailed = wrench.Add("failed to create firebase app", wrench.Codes{}) ErrGetUserByEmailFailed = wrench.Add("failed to get user by email", wrench.Codes{}) ErrDeleteUserFailed = wrench.Add("failed to delete user", wrench.Codes{}) ErrCreateUserFailed = wrench.Add("failed to create user", wrench.Codes{}) ErrRandomBytesGenerationFailed = wrench.Add("failed to generate random bytes", wrench.Codes{}) ErrMarshalRequestDataFailed = wrench.Add("error marshaling request data", wrench.Codes{}) ErrNewRequestCreationFailed = wrench.Add("error creating request", wrench.Codes{}) ErrRequestSendingFailed = wrench.Add("error sending request", wrench.Codes{}) ErrDecodingErrorResponseFailed = wrench.Add("error decoding error response", wrench.Codes{}) ErrFirebaseError = wrench.Add("firebase error occurred", wrench.Codes{}) ErrDecodingResponseFailed = wrench.Add("error decoding response", wrench.Codes{}) ErrEmptyFirebaseCredentialsContent = wrench.Add("empty Firebase credentials content", wrench.Codes{}) ErrInitializingFirebaseApp = wrench.Add("error initializing Firebase app", wrench.Codes{}) ErrFSysReadFileFailed = wrench.Add("failed to read file from filesystem", wrench.Codes{}) ErrTimezoneDataRetrievalFailed = wrench.Add("failed to retrieve timezone data from coordinates", wrench.Codes{}) ErrNoResultForCoordinates = wrench.Add("no result found for given coordinates", wrench.Codes{}) ErrGeocodeCoordinatesFailed = wrench.Add("failed to geocode coordinates", wrench.Codes{}) ErrLoadLocationFailed = wrench.Add("failed to load location for timezone", wrench.Codes{}) ErrFailedToConnectToGoogleMaps = wrench.Add("failed to connect to Google Maps", wrench.Codes{}) ErrWriteGzipFailed = wrench.Add("failed to write GZIP data", wrench.Codes{}) ErrCloseGzipWriterFailed = wrench.Add("failed to close GZIP writer", wrench.Codes{}) ErrReadGzipFailed = wrench.Add("failed to read GZIP data", wrench.Codes{}) ErrCloseGzipReaderFailed = wrench.Add("failed to close GZIP reader", wrench.Codes{}) ErrCopyToBufferFailed = wrench.Add("failed to copy data to buffer", wrench.Codes{}) ErrNewGzipReaderFailed = wrench.Add("failed to create new GZIP reader", wrench.Codes{}) ErrWriteFailed = wrench.Add("failed to write data", wrench.Codes{}) ErrReadFailed = wrench.Add("failed to read data", wrench.Codes{}) ErrNewRequestFailed = wrench.Add("failed to create new HTTP request", wrench.Codes{}) ErrHTTPWriteFailed = wrench.Add("failed to write HTTP response", wrench.Codes{}) ErrHTTPRequestFailed = wrench.Add("failed to perform HTTP request", wrench.Codes{}) ErrJSONMarshallingFailed = wrench.Add("failed to marshal JSON data", wrench.Codes{}) ErrJSONResponseWriteFailed = wrench.Add("failed to write JSON response", wrench.Codes{}) ErrNilHTMLBody = wrench.Add("nil HTML body provided", wrench.Codes{}) ErrReadHTMLBodyFailed = wrench.Add("failed to read HTML body", wrench.Codes{}) ErrReadResponseBodyFailed = wrench.Add("failed to read response body", wrench.Codes{}) ErrWriteHTMLResponseFailed = wrench.Add("failed to write HTML response", wrench.Codes{}) ErrInvalidContentType = wrench.Add("invalid content type, expected application/json", wrench.Codes{}) ErrEmptyBody = wrench.Add("empty request body", wrench.Codes{}) ErrUnmarshalFailed = wrench.Add("failed to unmarshal request body", wrench.Codes{}) ErrMultipleValuesNotAllowed = wrench.Add("multiple values for query parameter are not allowed", wrench.Codes{HTTP: http.StatusBadRequest}) ErrJSONUnmarshallingFailed = wrench.Add("failed to unmarshal JSON data", wrench.Codes{}) ErrStringToIntConversionFailed = wrench.Add("failed to convert string to integer", wrench.Codes{}) ErrSplitHostPortFailed = wrench.Add("failed to split host and port", wrench.Codes{}) ErrClientInitializationFailed = wrench.Add("failed to initialize client due to invalid dependencies or options", wrench.Codes{}) ErrMethodNotAllowed = wrench.Add("method not allowed for the requested URL path", wrench.Codes{}) ErrPipelineExecutionFailed = wrench.Add("failed to execute Redis pipeline", wrench.Codes{}) ErrInvalidRedisResponse = wrench.Add("invalid Redis response type", wrench.Codes{}) ErrScoreParsingFailed = wrench.Add("failed to parse score from Redis response", wrench.Codes{}) ErrTooManyRequests = wrench.Add("request rate limit exceeded", wrench.Codes{}) ErrRequestTimeout = wrench.Add("request processing timed out", wrench.Codes{}) ErrMissingMaxScore = wrench.Add("missing max score", wrench.Codes{}) ErrMissingTimeout = wrench.Add("missing or invalid timeout value", wrench.Codes{}) ErrInvalidWindow = wrench.Add("invalid window value, must be greater than 1 second", wrench.Codes{}) ErrFailedToSerializeRequest = wrench.Add("failed to serialize request", wrench.Codes{}) ErrFailedToCreateHTTPRequest = wrench.Add("failed to create HTTP request", wrench.Codes{}) ErrFailedToSendRequest = wrench.Add("failed to send HTTP request", wrench.Codes{}) ErrFailedToReadResponse = wrench.Add("failed to read HTTP response", wrench.Codes{}) ErrEmptyResponseBody = wrench.Add("response body is empty", wrench.Codes{}) ErrFailedToParseResponse = wrench.Add("failed to parse response", wrench.Codes{}) ErrGrokAPIError = wrench.Add("grok API returned an error", wrench.Codes{}) ErrNoChoicesInResponse = wrench.Add("no choices found in the response", wrench.Codes{}) ErrEmptyResponseContent = wrench.Add("response content is empty", wrench.Codes{}) ErrMissingAPIKey = wrench.Add("missing API key", wrench.Codes{}) ErrMissingURL = wrench.Add("missing URL", wrench.Codes{}) ErrMissingModel = wrench.Add("missing model", wrench.Codes{}) ErrPanicRecovered = wrench.Add("panic recovered during function execution", wrench.Codes{}) ErrFunctionExecutionFailed = wrench.Add("function execution returned an error", wrench.Codes{}) ErrMissingLogClient = wrench.Add("missing log client", wrench.Codes{}) ErrMissingAuthorizationHeader = wrench.Add("missing authorization header", wrench.Codes{}) ErrInvalidURLPath = wrench.Add("invalid URL path, needs to be cleaned", wrench.Codes{}) ErrInvalidRequestMethod = wrench.Add("invalid request method, expected POST", wrench.Codes{}) ErrMissingIdempotencyToken = wrench.Add("missing idempotency token", wrench.Codes{}) ErrIdempotencyKeyCheckFailed = wrench.Add("failed to check idempotency key existence", wrench.Codes{}) ErrIdempotencyKeyAlreadyExists = wrench.Add("idempotency key already exists", wrench.Codes{}) ErrHitCreationFailed = wrench.Add("failed to create cache hit", wrench.Codes{}) ErrIdempotencyKeySetFailed = wrench.Add("failed to set idempotency key in cache", wrench.Codes{}) ErrMissingUserIDHeaderKey = wrench.Add("missing user ID header key", wrench.Codes{}) ErrMissingIdempotencyHeaderKey = wrench.Add("missing idempotency header key", wrench.Codes{}) ErrMissingIdempotencyTimeout = wrench.Add("missing or invalid idempotency timeout", wrench.Codes{}) ErrMissingIdempotencyKeyTTL = wrench.Add("missing or invalid idempotency key TTL", wrench.Codes{}) ErrMissingAuthorizationTimeout = wrench.Add("missing or invalid authorization timeout", wrench.Codes{}) ErrMissingAuthenticationTimeout = wrench.Add("missing or invalid authentication timeout", wrench.Codes{}) ErrMissingAuthorizationURL = wrench.Add("missing authorization URL", wrench.Codes{}) ErrMissingAuthenticationURL = wrench.Add("missing authentication URL", wrench.Codes{}) ErrMissingAuthenticateFirebaseIDTokenPath = wrench.Add("missing authenticate Firebase ID token path", wrench.Codes{}) ErrMissingAuthenticateOIDCTokenPath = wrench.Add("missing authenticate OIDC token path", wrench.Codes{}) ErrCheckIdempotencyKeyFailed = wrench.Add("failed to check if idempotency key exists in cache", wrench.Codes{}) ErrSetIdempotencyKeyFailed = wrench.Add("failed to set idempotency key in cache", wrench.Codes{}) ErrMissingPrincipalID = wrench.Add("missing principal ID in the request header", wrench.Codes{}) ErrInvalidEntityID = wrench.Add("invalid or missing entity ID in the URL path", wrench.Codes{}) ErrInvalidRole = wrench.Add("invalid role value provided", wrench.Codes{}) ErrRequestCreationFailed = wrench.Add("failed to create authorization request", wrench.Codes{}) ErrAuthorizationRequestFailed = wrench.Add("authorization request failed", wrench.Codes{}) ErrAuthenticationRequestCreationFailed = wrench.Add("failed to create authentication request", wrench.Codes{}) ErrAuthenticationRequestFailed = wrench.Add("authentication request failed", wrench.Codes{}) ErrCreateCollectionFailed = wrench.Add("failed to create MongoDB collection", wrench.Codes{}) ErrCreateIndexesFailed = wrench.Add("failed to create MongoDB indexes", wrench.Codes{}) ErrCreateSearchIndexFailed = wrench.Add("failed to create MongoDB search index", wrench.Codes{}) ErrStartTransactionFailed = wrench.Add("failed to start MongoDB transaction", wrench.Codes{}) ErrCommitTransactionFailed = wrench.Add("failed to commit MongoDB transaction", wrench.Codes{}) ErrTransactionFailed = wrench.Add("MongoDB transaction failed", wrench.Codes{}) ErrAbortingTransactionFailed = wrench.Add("failed to abort MongoDB transaction", wrench.Codes{}) ErrSingleResultDecodeFailed = wrench.Add("failed to decode single result from MongoDB", wrench.Codes{}) ErrCursorAllFailed = wrench.Add("failed to read all documents from cursor", wrench.Codes{}) ErrUnmarshalBSONFailed = wrench.Add("failed to unmarshal BSON data", wrench.Codes{}) ErrSessionInit = wrench.Add("failed to initialize session", wrench.Codes{}) ErrUnsupportedType = wrench.Add("unsupported type for filter key", wrench.Codes{}) ErrInvalidType = wrench.Add("invalid type for document", wrench.Codes{}) ErrInsertFailed = wrench.Add("failed to insert document", wrench.Codes{}) ErrFindFailed = wrench.Add("failed to find document", wrench.Codes{}) ErrRunPipelineFailed = wrench.Add("failed to run pipeline", wrench.Codes{}) ErrNoDocument = wrench.Add("no document found", wrench.Codes{}) ErrDecodeFailed = wrench.Add("failed to decode document", wrench.Codes{}) ErrSearchFailed = wrench.Add("failed to execute search", wrench.Codes{}) ErrCountConversionFailed = wrench.Add("failed to convert total count to int32", wrench.Codes{}) ErrWatchCollectionFailed = wrench.Add("failed to watch collection", wrench.Codes{}) ErrWatchDBFailed = wrench.Add("failed to watch database", wrench.Codes{}) ErrProcessingChangeStreamFailed = wrench.Add("failed to process change stream", wrench.Codes{}) ErrFailedToConnectToMongo = wrench.Add("failed to connect to MongoDB", wrench.Codes{}) ErrFailedToPingMongo = wrench.Add("failed to ping MongoDB", wrench.Codes{}) ErrNilReceiver = wrench.Add("receiver pointer is nil", wrench.Codes{}) ErrCursorDecodingFailed = wrench.Add("failed to decode cursor", wrench.Codes{}) ErrCursorProcessingFailed = wrench.Add("failed to process cursor", wrench.Codes{}) ErrEmptyFile = wrench.Add("file is empty", wrench.Codes{}) ErrMissingRequest = wrench.Add("missing request", wrench.Codes{}) ErrInvalidBaseURL = wrench.Add("invalid base URL", wrench.Codes{}) ErrFailedToCreateReq = wrench.Add("failed to create request", wrench.Codes{}) ErrRequestFailed = wrench.Add("request failed", wrench.Codes{}) ErrUnexpectedStatus = wrench.Add("unexpected status", wrench.Codes{}) ErrInvalidStoreOptions = wrench.Add("invalid store options", wrench.Codes{}) ErrInvalidBody = wrench.Add("invalid body", wrench.Codes{}) ErrNilForwardHeaders = wrench.Add("nil forward headers", wrench.Codes{}) ErrInvalidStatus = wrench.Add("invalid status", wrench.Codes{}) ErrFailedToCreateValidator = wrench.Add("failed to create validator", wrench.Codes{}) ErrTokenValidationFailed = wrench.Add("token validation failed", wrench.Codes{}) ErrTokenSourceCreationFailed = wrench.Add("failed to create token source", wrench.Codes{}) ErrTokenRetrievalFailed = wrench.Add("failed to retrieve token", wrench.Codes{}) ErrOIDCAuthenticationFailed = wrench.Add("OIDC authentication failed", wrench.Codes{}) ErrEmptyOIDCToken = wrench.Add("OIDC token is empty or nil", wrench.Codes{}) ErrInvalidAuthHeader = wrench.Add("invalid or missing authorization header", wrench.Codes{}) ErrBase64DecodeFailed = wrench.Add("failed to decode base64 string", wrench.Codes{}) ErrEmptyRequestBody = wrench.Add("empty request body", wrench.Codes{}) ErrDecodeStringFailed = wrench.Add("failed to decode string", wrench.Codes{}) ErrStatusCmdFailed = wrench.Add("status command failed", wrench.Codes{}) ErrScanIteratorFailed = wrench.Add("scan iterator failed", wrench.Codes{}) ErrPipelineDelFailed = wrench.Add("pipeline delete operation failed", wrench.Codes{}) ErrPipelineExecFailed = wrench.Add("pipeline execution failed", wrench.Codes{}) ErrStringCmdFailed = wrench.Add("string command failed", wrench.Codes{}) ErrBoolCmdFailed = wrench.Add("boolean command failed", wrench.Codes{}) ErrIntCmdFailed = wrench.Add("integer command failed", wrench.Codes{}) ErrPipelineDeleteFailed = wrench.Add("pipeline delete failed", wrench.Codes{}) ErrBatchFlushFailed = wrench.Add("failed to batch flush cache", wrench.Codes{}) ErrPipelineBatchDeleteFailed = wrench.Add("pipeline batch delete failed", wrench.Codes{}) ErrPipelineBatchExecutionFailed = wrench.Add("pipeline batch execution failed", wrench.Codes{}) ErrBatchPipelineExecFailed = wrench.Add("failed to execute batch pipeline", wrench.Codes{}) ErrStringCmdResultFailed = wrench.Add("failed to get string command result", wrench.Codes{}) ErrInvalidExpiresAfter = wrench.Add("invalid expires after", wrench.Codes{}) ErrInvalidBatchSize = wrench.Add("invalid batch size", wrench.Codes{}) ErrFailedToConnectToRedis = wrench.Add("failed to connect to redis", wrench.Codes{}) ErrFailedToPingRedis = wrench.Add("failed to ping redis", wrench.Codes{}) ErrTLSRequestedButNotEnabled = wrench.Add("TLS requested but not enabled", wrench.Codes{}) ErrFailedToAppendCACert = wrench.Add("failed to append CA certificate", wrench.Codes{}) ErrFillNilPointersNilPointerTarget = wrench.Add("to must not be a nil pointer", wrench.Codes{}) ErrFillNilPointersToValueInvalidType = wrench.Add("to must be a struct or pointer to a struct, got %s", wrench.Codes{}) ErrFillNilPointersFromValueInvalidType = wrench.Add("from must be a struct or pointer to a struct, got %s", wrench.Codes{}) ErrFillNilPointersTypesMismatch = wrench.Add("struct types must be identical, got %s and %s", wrench.Codes{}) ErrRouteAdditionFailed = wrench.Add("failed to add route", wrench.Codes{}) ErrRunFailed = wrench.Add("failed to run", wrench.Codes{}) ErrStopFailed = wrench.Add("failed to stop", wrench.Codes{}) ErrVarsNotFoundInContext = wrench.Add("vars not found in context", wrench.Codes{}) ErrMissingPathKey = wrench.Add("missing path key", wrench.Codes{}) ErrMissingRessourceKey = wrench.Add("missing resource key", wrench.Codes{}) ErrPathKeyAndRessourceKeyAreTheSame = wrench.Add("path key and resource key cannot be the same", wrench.Codes{}) ErrInvalidHTTPMethod = wrench.Add("invalid HTTP method", wrench.Codes{}) ErrMissingRoute = wrench.Add("missing route", wrench.Codes{}) ErrLimiterNotEnabledWithWeight = wrench.Add("limiter not enabled with weight", wrench.Codes{}) ErrDuplicateRoute = wrench.Add("duplicate route", wrench.Codes{}) ErrInvalidRouteMethod = wrench.Add("invalid route method", wrench.Codes{}) ErrDuplicateEntry = wrench.Add("duplicate entry", wrench.Codes{}) ErrInvalidRoute = wrench.Add("invalid route", wrench.Codes{}) ErrRouteCompilationFailed = wrench.Add("route compilation failed", wrench.Codes{}) ErrNotFound = wrench.Add("not found", wrench.Codes{}) ErrMissingParsePathFn = wrench.Add("missing parse path function", wrench.Codes{}) ErrMissingParseQueryFn = wrench.Add("missing parse query function", wrench.Codes{}) ErrServerAlreadyRunning = wrench.Add("server is already running", wrench.Codes{}) ErrNilServerWhileTryingToShutdown = wrench.Add("server is nil while trying to shutdown", wrench.Codes{}) ErrFailedToCreateServer = wrench.Add("failed to create server", wrench.Codes{}) ErrInvalidH2Config = wrench.Add("invalid h2 config", wrench.Codes{}) ErrMissingTLSCertAndKey = wrench.Add("missing TLS certificate and key", wrench.Codes{}) ErrMissingTLSFSReader = wrench.Add("missing TLS file system reader", wrench.Codes{}) ErrMissingTLSFS = wrench.Add("missing TLS file system", wrench.Codes{}) ErrMissingCertGenerator = wrench.Add("missing certificate generator", wrench.Codes{}) ErrFailedToReadCertificateFile = wrench.Add("failed to read certificate file", wrench.Codes{}) ErrFailedToReadKeyFile = wrench.Add("failed to read key file", wrench.Codes{}) ErrFailedToLoadX509KeyPair = wrench.Add("failed to load X509 key pair", wrench.Codes{}) ErrNilServerWhileTryingToServe = wrench.Add("nil server while trying to serve", wrench.Codes{}) ErrInvalidPhoneNumber = wrench.Add("invalid phone number", wrench.Codes{}) ErrInvalidBCP47Tag = wrench.Add("invalid BCP47 language tag", wrench.Codes{}) ErrInvalidISOCurrency = wrench.Add("invalid ISO 4217 currency code", wrench.Codes{}) ErrInvalidUTCDate = wrench.Add("invalid UTC date", wrench.Codes{}) ErrNilPointer = wrench.Add("field must not be nil", wrench.Codes{}) ErrZeroValue = wrench.Add("field must not be zero", wrench.Codes{}) ErrOutOfRange = wrench.Add("field must be within the specified range", wrench.Codes{}) ErrInvalidInput = wrench.Add("invalid input", wrench.Codes{}) ErrValidationFailed = wrench.Add("validation failed", wrench.Codes{}) ErrTimeoutOccurred = wrench.Add("timeout occurred", wrench.Codes{}) ErrDuplicateValueFound = wrench.Add("duplicate value found", wrench.Codes{}) ErrInvalidQueryStringFormat = wrench.Add("invalid query string format", wrench.Codes{}) ErrInvalidArguments = wrench.Add("invalid arguments", wrench.Codes{}) ErrExtractionFailed = wrench.Add("extraction failed", wrench.Codes{}) ErrTestFailed = wrench.Add("test failed", wrench.Codes{}) ErrRespondJSONFailed = wrench.Add("failed to respond JSON", wrench.Codes{}) ErrMiddlewareChainFailed = wrench.Add("middleware chain failed", wrench.Codes{}) ErrWrapHandlerFuncFailed = wrench.Add("failed to wrap handler function", wrench.Codes{}) ErrPathParamsAtRoot = wrench.Add("path parameters cannot be at root", wrench.Codes{}) ErrOddPairs = wrench.Add("pairs should be in even numbers", wrench.Codes{}) ErrNoHandler = wrench.Add("handler function is missing", wrench.Codes{}) ErrNoMethodsSlice = wrench.Add("methods slice is missing", wrench.Codes{}) ErrNoMethodsDefined = wrench.Add("no methods defined", wrench.Codes{}) ErrEndpointContainsInvalid = wrench.Add("endpoint contains invalid characters", wrench.Codes{}) ErrDuplicateKeyInPairs = wrench.Add("duplicate key found in pairs", wrench.Codes{}) ErrMissingReadFileFS = wrench.Add("missing read file system", wrench.Codes{}) ErrMissingCredentialsPath = wrench.Add("missing credentials path", wrench.Codes{}) ErrMissingSecretManagerClient = wrench.Add("missing secret manager client", wrench.Codes{}) ErrInstanciatingSecretManagerClientFailed = wrench.Add("failed to instanciate secret manager client", wrench.Codes{}) ErrCloseFailed = wrench.Add("failed to close", wrench.Codes{}) ErrOperationFailed = wrench.Add("operation failed", wrench.Codes{}) ErrMissingHost = wrench.Add("missing host", wrench.Codes{}) ErrMissingPort = wrench.Add("missing port", wrench.Codes{}) ErrPathParamNotFound = wrench.Add("path param not found", wrench.Codes{}) ErrPathParamEmpty = wrench.Add("path param is empty", wrench.Codes{}) ErrQueryParamNotFound = wrench.Add("query param not found", wrench.Codes{}) ErrQueryParamEmpty = wrench.Add("query param is empty", wrench.Codes{}) ErrMissingToRegister = wrench.Add("missing structs to register", wrench.Codes{}) ErrMissingCreateCollectionsOptions = wrench.Add("missing create collections options", wrench.Codes{}) ErrMissingCreateIndexesOptions = wrench.Add("missing create indexes options", wrench.Codes{}) ErrMissingCreateSearchIndexesOptions = wrench.Add("missing create search indexes options", wrench.Codes{}) ErrMissingDBName = wrench.Add("missing database name", wrench.Codes{}) ErrMissingSvcName = wrench.Add("missing service name", wrench.Codes{}) ErrInvalidAuthorizationOptions = wrench.Add("invalid authorization options", wrench.Codes{}) ErrUnexpectedNumberOfEntities = wrench.Add("unexpected number of entities", wrench.Codes{}) ErrMissingEntity = wrench.Add("missing entity", wrench.Codes{}) ErrMissingID = wrench.Add("missing ID", wrench.Codes{}) ErrMissingPath = wrench.Add("missing path", wrench.Codes{}) ErrNilSlice = wrench.Add("slice is nil", wrench.Codes{}) ErrInvalidEnv = wrench.Add("invalid environment", wrench.Codes{}) ErrRewriteHostFailed = wrench.Add("failed to rewrite host", wrench.Codes{}) ErrMissingProjectID = wrench.Add("missing project ID", wrench.Codes{}) ErrMissingAuthorizationPath = wrench.Add("missing authorization path", wrench.Codes{}) ErrInvalidLogLevel = wrench.Add("invalid log level", wrench.Codes{}) ErrInvalidAddress = wrench.Add("invalid address", wrench.Codes{}) ErrInvalidMongoConnStr = wrench.Add("invalid MongoDB connection string", wrench.Codes{}) ErrInvalidMongoCluster = wrench.Add("invalid MongoDB cluster", wrench.Codes{}) ErrInvalidRedisHost = wrench.Add("invalid Redis host", wrench.Codes{}) ErrInvalidRedisPort = wrench.Add("invalid Redis port", wrench.Codes{}) ErrMain = wrench.Add("main", wrench.Codes{}) )
Sentinel Errors.
The errors defined below using wrench.Add are scoped to the wrench package itself. They will be registered globally within the singleton registry of wrench.
This means that wherever the wrench package is imported, either directly or indirectly, these errors will be accessible through the wrench registry. Any package importing gitlab.com/fabriktor/pkg will have access to these errors as they are registered in the global registry of the wrench package.
Additionally, because these errors are registered in the singleton registry, the FromAppErr function from wrench/httperr will successfully retrieve the associated HTTP status codes and messages when converting errors to HTTP responses. The registry state is shared globally across all imports of wrench, ensuring consistent error handling throughout Fabriktor codebase.
Functions ¶
This section is empty.
Types ¶
This section is empty.