errors

package
v0.14.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 29, 2024 License: Apache-2.0 Imports: 5 Imported by: 9

README

Errors

errors package serve to build an arbitrary long error chain in order to capture errors returned from nested service calls.

errors package contains the custom Go error interface implementation, Error. You use the Error interface to wrap two errors in a containing error as well as to test recursively if a given error contains some other error.

Documentation

Overview

Package errors contains Magistrala errors definitions.

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrAuthentication indicates failure occurred while authenticating the entity.
	ErrAuthentication = New("failed to perform authentication over the entity")

	// ErrAuthorization indicates failure occurred while authorizing the entity.
	ErrAuthorization = New("failed to perform authorization over the entity")

	// ErrDomainAuthorization indicates failure occurred while authorizing the domain.
	ErrDomainAuthorization = New("failed to perform authorization over the domain")

	// ErrMalformedEntity indicates a malformed entity specification.
	ErrMalformedEntity = New("malformed entity specification")

	// ErrNotFound indicates a non-existent entity request.
	ErrNotFound = New("entity not found")

	// ErrConflict indicates that entity already exists.
	ErrConflict = New("entity already exists")

	// ErrCreateEntity indicates error in creating entity or entities.
	ErrCreateEntity = New("failed to create entity in the db")

	// ErrViewEntity indicates error in viewing entity or entities.
	ErrViewEntity = New("view entity failed")

	// ErrUpdateEntity indicates error in updating entity or entities.
	ErrUpdateEntity = New("update entity failed")

	// ErrRemoveEntity indicates error in removing entity.
	ErrRemoveEntity = New("failed to remove entity")

	// ErrScanMetadata indicates problem with metadata in db.
	ErrScanMetadata = New("failed to scan metadata in db")

	// ErrWrongSecret indicates a wrong secret was provided.
	ErrWrongSecret = New("wrong secret")

	// ErrLogin indicates wrong login credentials.
	ErrLogin = New("invalid user id or secret")

	// ErrUnsupportedContentType indicates invalid content type.
	ErrUnsupportedContentType = errors.New("invalid content type")

	// ErrUnidentified indicates unidentified error.
	ErrUnidentified = errors.New("unidentified error")

	// ErrEmptyPath indicates empty file path.
	ErrEmptyPath = errors.New("empty file path")
)

Functions

func Contains

func Contains(e1, e2 error) bool

Contains inspects if e2 error is contained in any layer of e1 error.

func Unwrap

func Unwrap(err error) (error, error)

Unwrap returns the wrapper and the error by separating the Wrapper from the error.

func Wrap

func Wrap(wrapper, err error) error

Wrap returns an Error that wrap err with wrapper.

Types

type Error

type Error interface {
	// Error implements the error interface.
	Error() string

	// Msg returns error message.
	Msg() string

	// Err returns wrapped error.
	Err() Error

	// MarshalJSON returns a marshaled error.
	MarshalJSON() ([]byte, error)
}

Error specifies an API that must be fullfiled by error type.

func New

func New(text string) Error

New returns an Error that formats as the given text.

type SDKError

type SDKError interface {
	Error
	StatusCode() int
}

SDKError is an error type for Magistrala SDK.

func CheckError

func CheckError(resp *http.Response, expectedStatusCodes ...int) SDKError

CheckError will check the HTTP response status code and matches it with the given status codes. Since multiple status codes can be valid, we can pass multiple status codes to the function. The function then checks for errors in the HTTP response.

func NewSDKError

func NewSDKError(err error) SDKError

NewSDKError returns an SDK Error that formats as the given text.

func NewSDKErrorWithStatus

func NewSDKErrorWithStatus(err error, statusCode int) SDKError

NewSDKErrorWithStatus returns an SDK Error setting the status code.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL