37 lines
1.1 KiB
Go
37 lines
1.1 KiB
Go
package lifecycle
|
|
|
|
import (
|
|
"context"
|
|
|
|
"git.frostfs.info/TrueCloudLab/frostfs-s3-gw/api/data"
|
|
cid "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/container/id"
|
|
"git.frostfs.info/TrueCloudLab/frostfs-sdk-go/netmap"
|
|
oid "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/object/id"
|
|
"git.frostfs.info/TrueCloudLab/frostfs-sdk-go/pool"
|
|
"git.frostfs.info/TrueCloudLab/frostfs-sdk-go/user"
|
|
"github.com/nspcc-dev/neo-go/pkg/crypto/keys"
|
|
"github.com/nspcc-dev/neo-go/pkg/util"
|
|
)
|
|
|
|
type UserFetcher interface {
|
|
Users() ([]util.Uint160, error)
|
|
UserKey(hash util.Uint160) (*keys.PublicKey, error)
|
|
}
|
|
|
|
type ContainerFetcher interface {
|
|
Containers(owner user.ID) ([]cid.ID, error)
|
|
}
|
|
|
|
type TreeFetcher interface {
|
|
GetBucketLifecycleConfiguration(ctx context.Context, bktInfo *data.BucketInfo) (oid.ID, error)
|
|
}
|
|
|
|
type FrostFSFetcher interface {
|
|
GetObject(ctx context.Context, addr oid.Address) (pool.ResGetObject, error)
|
|
NetworkInfo(ctx context.Context) (*netmap.NetworkInfo, error)
|
|
DeleteObject(ctx context.Context, addr oid.Address) error
|
|
}
|
|
|
|
type CredentialSource interface {
|
|
Credentials(ctx context.Context, pk *keys.PublicKey) (*keys.PrivateKey, error)
|
|
}
|