Versions in this module Expand all Collapse all v1 v1.0.0 Dec 16, 2023 Changes in this version + const FailureTypeLabel + const KiB + const MiB + var ConfigSection = config.MustRegisterSection(configSectionKey, defaultConfig) + var ErrExceedsLimit stdErrs.ErrorCode = "LIMIT_EXCEEDED" + var ErrFailedToWriteCache stdErrs.ErrorCode = "CACHE_WRITE_FAILED" + func IsExceedsLimit(err error) bool + func IsExists(err error) bool + func IsFailedWriteToCache(err error) bool + func IsNotFound(err error) bool + func MapStrings(mapper func(string) string, strings ...string) []string + func MergeMaps(dst map[string]string, src ...map[string]string) + func RegisterStowKind(kind string, f func(string) DataReference) error + type CachingConfig struct + MaxSizeMegabytes int + TargetGCPercent int + type ComposedProtobufStore interface + type Config struct + Cache CachingConfig + Connection ConnectionConfig + DefaultHTTPClient HTTPClientConfig + InitContainer string + Limits LimitsConfig + MultiContainerEnabled bool + SignedURL SignedURLConfig + Stow StowConfig + Type Type + func GetConfig() *Config + func (cfg Config) GetPFlagSet(prefix string) *pflag.FlagSet + type ConnectionConfig struct + AccessKey string + AuthType string + DisableSSL bool + Endpoint config.URL + Region string + SecretKey string + type DataReference string + func (r DataReference) Split() (scheme, container, key string, err error) + func (r DataReference) String() string + type DataStore struct + func NewCompositeDataStore(refConstructor ReferenceConstructor, ...) *DataStore + func NewDataStore(cfg *Config, scope promutils.Scope) (s *DataStore, err error) + func NewDataStoreWithContext(ctx context.Context, cfg *Config, scope promutils.Scope) (s *DataStore, err error) + func (ds *DataStore) RefreshConfig(ctx context.Context, cfg *Config) error + type DefaultProtobufStore struct + func NewDefaultProtobufStore(store RawStore, scope promutils.Scope) DefaultProtobufStore + func NewDefaultProtobufStoreWithMetrics(store RawStore, metrics *protoMetrics) DefaultProtobufStore + func (s DefaultProtobufStore) ReadProtobuf(ctx context.Context, reference DataReference, msg proto.Message) error + func (s DefaultProtobufStore) WriteProtobuf(ctx context.Context, reference DataReference, opts Options, msg proto.Message) error + type HTTPClientConfig struct + Headers map[string][]string + Timeout config.Duration + type InMemoryStore struct + func (c InMemoryStore) CopyRaw(ctx context.Context, source, destination DataReference, opts Options) error + func (s *InMemoryStore) Clear(ctx context.Context) error + func (s *InMemoryStore) CreateSignedURL(ctx context.Context, reference DataReference, properties SignedURLProperties) (SignedURLResponse, error) + func (s *InMemoryStore) Delete(ctx context.Context, reference DataReference) error + func (s *InMemoryStore) GetBaseContainerFQN(ctx context.Context) DataReference + func (s *InMemoryStore) Head(ctx context.Context, reference DataReference) (Metadata, error) + func (s *InMemoryStore) ReadRaw(ctx context.Context, reference DataReference) (io.ReadCloser, error) + func (s *InMemoryStore) WriteRaw(ctx context.Context, reference DataReference, size int64, opts Options, ...) (err error) + type LimitsConfig struct + GetLimitMegabytes int64 + type MemoryMetadata struct + func (m MemoryMetadata) Etag() string + func (m MemoryMetadata) Exists() bool + func (m MemoryMetadata) Size() int64 + type Metadata interface + Etag func() string + Exists func() bool + Size func() int64 + type Options struct + Metadata map[string]interface{} + type ProtobufStore interface + ReadProtobuf func(ctx context.Context, reference DataReference, msg proto.Message) error + WriteProtobuf func(ctx context.Context, reference DataReference, opts Options, msg proto.Message) error + type RawStore interface + CopyRaw func(ctx context.Context, source, destination DataReference, opts Options) error + CreateSignedURL func(ctx context.Context, reference DataReference, properties SignedURLProperties) (SignedURLResponse, error) + Delete func(ctx context.Context, reference DataReference) error + GetBaseContainerFQN func(ctx context.Context) DataReference + Head func(ctx context.Context, reference DataReference) (Metadata, error) + ReadRaw func(ctx context.Context, reference DataReference) (io.ReadCloser, error) + WriteRaw func(ctx context.Context, reference DataReference, size int64, opts Options, ...) error + func NewInMemoryRawStore(_ context.Context, _ *Config, metrics *dataStoreMetrics) (RawStore, error) + type ReferenceConstructor interface + ConstructReference func(ctx context.Context, reference DataReference, nestedKeys ...string) (DataReference, error) + type SignedURLConfig struct + StowConfigOverride map[string]string + type SignedURLProperties struct + ContentMD5 string + ExpiresIn time.Duration + Scope stow.ClientMethod + type SignedURLResponse struct + URL url.URL + type StowConfig struct + Config map[string]string + Kind string + type StowMetadata struct + func (s StowMetadata) Etag() string + func (s StowMetadata) Exists() bool + func (s StowMetadata) Size() int64 + type StowStore struct + func NewStowRawStore(baseContainerFQN DataReference, loc, signedURLLoc stow.Location, ...) (*StowStore, error) + func (c StowStore) CopyRaw(ctx context.Context, source, destination DataReference, opts Options) error + func (s *StowStore) CreateContainer(ctx context.Context, container string) (stow.Container, error) + func (s *StowStore) CreateSignedURL(ctx context.Context, reference DataReference, properties SignedURLProperties) (SignedURLResponse, error) + func (s *StowStore) Delete(ctx context.Context, reference DataReference) error + func (s *StowStore) GetBaseContainerFQN(ctx context.Context) DataReference + func (s *StowStore) Head(ctx context.Context, reference DataReference) (Metadata, error) + func (s *StowStore) LoadContainer(ctx context.Context, container string, createIfNotFound bool) (stow.Container, error) + func (s *StowStore) ReadRaw(ctx context.Context, reference DataReference) (io.ReadCloser, error) + func (s *StowStore) WriteRaw(ctx context.Context, reference DataReference, size int64, opts Options, ...) error + type Type = string + const TypeLocal + const TypeMemory + const TypeMinio + const TypeS3 + const TypeStow + type URLPathConstructor struct + func NewURLPathConstructor() URLPathConstructor + func (URLPathConstructor) ConstructReference(ctx context.Context, reference DataReference, nestedKeys ...string) (DataReference, error)