store

package
v1.20.0-rc1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2022 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Overview

Package store implements the go-micro store interface

Package store implements the go-micro store interface

Package store implements the go-micro store interface

Package store implements the go-micro store interface

Index

Constants

This section is empty.

Variables

View Source
var (
	// Name is the default name for the settings store
	Name = "ocis-settings"
)

Functions

func New

func New(cfg *config.Config) settings.Manager

New creates a new store

Types

type CachedMDC

type CachedMDC struct {
	// contains filtered or unexported fields
}

CachedMDC is cache for the metadataclient

func (*CachedMDC) Delete

func (c *CachedMDC) Delete(ctx context.Context, id string) error

Delete invalidates the cache when operation was successful

func (*CachedMDC) Init

func (c *CachedMDC) Init(ctx context.Context, id string) error

Init instantiates the caches

func (*CachedMDC) MakeDirIfNotExist

func (c *CachedMDC) MakeDirIfNotExist(ctx context.Context, id string) error

MakeDirIfNotExist invalidates the cache

func (*CachedMDC) ReadDir

func (c *CachedMDC) ReadDir(ctx context.Context, id string) ([]string, error)

ReadDir caches the response from ReadDir or returnes the cached one

func (*CachedMDC) SimpleDownload

func (c *CachedMDC) SimpleDownload(ctx context.Context, id string) ([]byte, error)

SimpleDownload caches the answer from SimpleDownload or returns the cached one

func (*CachedMDC) SimpleUpload

func (c *CachedMDC) SimpleUpload(ctx context.Context, id string, content []byte) error

SimpleUpload caches the answer from SimpleUpload and invalidates the cache

type MetadataClient

type MetadataClient interface {
	SimpleDownload(ctx context.Context, id string) ([]byte, error)
	SimpleUpload(ctx context.Context, id string, content []byte) error
	Delete(ctx context.Context, id string) error
	ReadDir(ctx context.Context, id string) ([]string, error)
	MakeDirIfNotExist(ctx context.Context, id string) error
	Init(ctx context.Context, id string) error
}

MetadataClient is the interface to talk to metadata service

func NewMetadataClient

func NewMetadataClient(cfg config.Metadata) MetadataClient

NewMetadataClient returns the MetadataClient

type Store

type Store struct {
	Logger olog.Logger
	// contains filtered or unexported fields
}

Store interacts with the filesystem to manage settings information

func (*Store) AddSettingToBundle

func (s *Store) AddSettingToBundle(bundleID string, setting *settingsmsg.Setting) (*settingsmsg.Setting, error)

AddSettingToBundle adds the given setting to the bundle with the given bundleID.

func (*Store) Init

func (s *Store) Init()

Init initialize the store once, later calls are noops

func (*Store) ListBundles

func (s *Store) ListBundles(bundleType settingsmsg.Bundle_Type, bundleIDs []string) ([]*settingsmsg.Bundle, error)

ListBundles returns all bundles in the dataPath folder that match the given type.

func (*Store) ListPermissionsByResource

func (s *Store) ListPermissionsByResource(resource *settingsmsg.Resource, roleIDs []string) ([]*settingsmsg.Permission, error)

ListPermissionsByResource collects all permissions from the provided roleIDs that match the requested resource

func (*Store) ListRoleAssignments

func (s *Store) ListRoleAssignments(accountUUID string) ([]*settingsmsg.UserRoleAssignment, error)

ListRoleAssignments loads and returns all role assignments matching the given assignment identifier.

func (*Store) ListValues

func (s *Store) ListValues(bundleID, accountUUID string) ([]*settingsmsg.Value, error)

ListValues reads all values that match the given bundleId and accountUUID. If the bundleId is empty, it's ignored for filtering. If the accountUUID is empty, only values with empty accountUUID are returned. If the accountUUID is not empty, values with an empty or with a matching accountUUID are returned.

func (*Store) ReadBundle

func (s *Store) ReadBundle(bundleID string) (*settingsmsg.Bundle, error)

ReadBundle tries to find a bundle by the given id from the metadata service

func (*Store) ReadPermissionByID

func (s *Store) ReadPermissionByID(permissionID string, roleIDs []string) (*settingsmsg.Permission, error)

ReadPermissionByID finds the permission in the roles, specified by the provided roleIDs

func (*Store) ReadPermissionByName

func (s *Store) ReadPermissionByName(name string, roleIDs []string) (*settingsmsg.Permission, error)

ReadPermissionByName finds the permission in the roles, specified by the provided roleIDs

func (*Store) ReadSetting

func (s *Store) ReadSetting(settingID string) (*settingsmsg.Setting, error)

ReadSetting tries to find a setting by the given id from the metadata service

func (*Store) ReadValue

func (s *Store) ReadValue(valueID string) (*settingsmsg.Value, error)

ReadValue tries to find a value by the given valueId within the dataPath

func (*Store) ReadValueByUniqueIdentifiers

func (s *Store) ReadValueByUniqueIdentifiers(accountUUID, settingID string) (*settingsmsg.Value, error)

ReadValueByUniqueIdentifiers tries to find a value given a set of unique identifiers

func (*Store) RemoveRoleAssignment

func (s *Store) RemoveRoleAssignment(assignmentID string) error

RemoveRoleAssignment deletes the given role assignment from the existing assignments of the respective account.

func (*Store) RemoveSettingFromBundle

func (s *Store) RemoveSettingFromBundle(bundleID string, settingID string) error

RemoveSettingFromBundle removes the setting from the bundle with the given ids.

func (*Store) WriteBundle

func (s *Store) WriteBundle(record *settingsmsg.Bundle) (*settingsmsg.Bundle, error)

WriteBundle sends the givens record to the metadataclient. returns `record` for legacy reasons

func (*Store) WriteRoleAssignment

func (s *Store) WriteRoleAssignment(accountUUID, roleID string) (*settingsmsg.UserRoleAssignment, error)

WriteRoleAssignment appends the given role assignment to the existing assignments of the respective account.

func (*Store) WriteValue

func (s *Store) WriteValue(value *settingsmsg.Value) (*settingsmsg.Value, error)

WriteValue writes the given value into a file within the dataPath

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL