implement helpers to get relevant info instead of FileInfo() (#18228)

This commit is contained in:
Harshavardhana
2023-10-12 15:29:59 -07:00
committed by GitHub
parent 763ff085a6
commit 409c391850
2 changed files with 32 additions and 5 deletions
+26
View File
@@ -328,6 +328,18 @@ func (x xlMetaV2VersionHeader) sortsBefore(o xlMetaV2VersionHeader) bool {
return false
}
func (j xlMetaV2Version) getDataDir() string {
if j.Valid() {
switch j.Type {
case LegacyType:
return j.ObjectV1.DataDir
case ObjectType:
return uuid.UUID(j.ObjectV2.DataDir).String()
}
}
return ""
}
// Valid xl meta xlMetaV2Version is valid
func (j xlMetaV2Version) Valid() bool {
if !j.Type.valid() {
@@ -1170,6 +1182,20 @@ func (x *xlMetaV2) AppendTo(dst []byte) ([]byte, error) {
return append(dst, x.data...), nil
}
func (x *xlMetaV2) findVersionStr(key string) (idx int, ver *xlMetaV2Version, err error) {
if key == nullVersionID {
key = ""
}
var u uuid.UUID
if key != "" {
u, err = uuid.Parse(key)
if err != nil {
return -1, nil, errFileVersionNotFound
}
}
return x.findVersion(u)
}
func (x *xlMetaV2) findVersion(key [16]byte) (idx int, ver *xlMetaV2Version, err error) {
for i, ver := range x.versions {
if key == ver.header.VersionID {