errdefs/defs.go
ebcb7d6b
 package errdefs
 
 // ErrNotFound signals that the requested object doesn't exist
 type ErrNotFound interface {
 	NotFound()
 }
 
 // ErrInvalidParameter signals that the user input is invalid
 type ErrInvalidParameter interface {
 	InvalidParameter()
 }
 
 // ErrConflict signals that some internal state conflicts with the requested action and can't be performed.
 // A change in state should be able to clear this error.
 type ErrConflict interface {
 	Conflict()
 }
 
 // ErrUnauthorized is used to signify that the user is not authorized to perform a specific action
 type ErrUnauthorized interface {
 	Unauthorized()
 }
 
 // ErrUnavailable signals that the requested action/subsystem is not available.
 type ErrUnavailable interface {
 	Unavailable()
 }
 
 // ErrForbidden signals that the requested action cannot be performed under any circumstances.
 // When a ErrForbidden is returned, the caller should never retry the action.
 type ErrForbidden interface {
 	Forbidden()
 }
 
 // ErrSystem signals that some internal error occurred.
 // An example of this would be a failed mount request.
 type ErrSystem interface {
 	ErrSystem()
 }
 
 // ErrNotModified signals that an action can't be performed because it's already in the desired state
 type ErrNotModified interface {
 	NotModified()
 }
 
87a12421
 // ErrAlreadyExists is a special case of ErrConflict which signals that the desired object already exists
 type ErrAlreadyExists interface {
 	AlreadyExists()
 }
 
ebcb7d6b
 // ErrNotImplemented signals that the requested action/feature is not implemented on the system as configured.
 type ErrNotImplemented interface {
 	NotImplemented()
 }
 
 // ErrUnknown signals that the kind of error that occurred is not known.
 type ErrUnknown interface {
 	Unknown()
 }
87a12421
 
 // ErrCancelled signals that the action was cancelled.
 type ErrCancelled interface {
 	Cancelled()
 }
 
 // ErrDeadline signals that the deadline was reached before the action completed.
 type ErrDeadline interface {
 	DeadlineExceeded()
 }
 
 // ErrDataLoss indicates that data was lost or there is data corruption.
 type ErrDataLoss interface {
 	DataLoss()
 }