Files
threshold/internal/storage/bucket/storage_bucket.go
T

24 lines
711 B
Go

// Copyright (c) HashiCorp, Inc.
// SPDX-License-Identifier: BUSL-1.1
package bucket
import (
"github.com/hashicorp/boundary/sdk/pbs/controller/api/resources/storagebuckets"
plgpb "github.com/hashicorp/boundary/sdk/pbs/plugin"
)
// StorageBucketSingleton ensures safe and easy access to a storage bucket and
// its storage bucket credential state.
type StorageBucketSingleton interface {
GetState() *plgpb.StorageBucketCredentialState
GetBucket() *storagebuckets.StorageBucket
SetState(*plgpb.StorageBucketCredentialState) error
SetBucket(*storagebuckets.StorageBucket) error
HasWriteAccess() bool
HasReadAccess() bool
AddDependant(name string)
RemoveDependant(name string)
HasDependants() bool
}