forked from TrueCloudLab/frostfs-sdk-go
2a0b7b6b40
Extend docs with supported status returns. Add several helper functions which allow to check the particular status. Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
42 lines
970 B
Go
42 lines
970 B
Go
package client
|
|
|
|
import apistatus "github.com/nspcc-dev/neofs-sdk-go/client/status"
|
|
|
|
// IsErrContainerNotFound checks if err corresponds to NeoFS status
|
|
// return corresponding to missing container.
|
|
func IsErrContainerNotFound(err error) bool {
|
|
switch err.(type) {
|
|
default:
|
|
return false
|
|
case
|
|
apistatus.ContainerNotFound,
|
|
*apistatus.ContainerNotFound:
|
|
return true
|
|
}
|
|
}
|
|
|
|
// IsErrObjectNotFound checks if err corresponds to NeoFS status
|
|
// return corresponding to missing object.
|
|
func IsErrObjectNotFound(err error) bool {
|
|
switch err.(type) {
|
|
default:
|
|
return false
|
|
case
|
|
apistatus.ObjectNotFound,
|
|
*apistatus.ObjectNotFound:
|
|
return true
|
|
}
|
|
}
|
|
|
|
// IsErrObjectAlreadyRemoved checks if err corresponds to NeoFS status
|
|
// return corresponding to already removed object.
|
|
func IsErrObjectAlreadyRemoved(err error) bool {
|
|
switch err.(type) {
|
|
default:
|
|
return false
|
|
case
|
|
apistatus.ObjectAlreadyRemoved,
|
|
*apistatus.ObjectAlreadyRemoved:
|
|
return true
|
|
}
|
|
}
|