diff --git a/satellite/metabase/common.go b/satellite/metabase/common.go index 06dd0ce98169..faf596f55630 100644 --- a/satellite/metabase/common.go +++ b/satellite/metabase/common.go @@ -6,6 +6,7 @@ package metabase import ( "database/sql/driver" "encoding/binary" + "fmt" "math" "sort" "strconv" @@ -467,6 +468,28 @@ func (status ObjectStatus) IsDeleteMarker() bool { return status == DeleteMarkerUnversioned || status == DeleteMarkerVersioned } +// String returns textual representation of status. +func (status ObjectStatus) String() string { + switch status { + case Pending: + return "Pending" + case ObjectStatus(2): + return "Deleted" // Deprecated + case CommittedUnversioned: + return "CommittedUnversioned" + case CommittedVersioned: + return "CommittedVersioned" + case DeleteMarkerVersioned: + return "DeleteMarkerVersioned" + case DeleteMarkerUnversioned: + return "DeleteMarkerUnversioned" + case Prefix: + return "Prefix" + default: + return fmt.Sprintf("ObjectStatus(%d)", int(status)) + } +} + // Pieces defines information for pieces. type Pieces []Piece