package helpers import ( "crypto/sha256" "encoding/hex" providerv1beta1 "github.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1" "github.com/opencloud-eu/reva/v2/pkg/storagespace" ) // HashResourceId builds a urlsafe and stable file reference that can be used for proxy routing, // so that all sessions on one file end on the same office server func HashResourceId(resourceId *providerv1beta1.ResourceId) string { c := sha256.New() c.Write([]byte(storagespace.FormatResourceID(resourceId))) return hex.EncodeToString(c.Sum(nil)) }