mysql

package
v1.3.7 Latest Latest
Warning

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

Go to latest
Published: Nov 7, 2023 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Overview

Package mysql contains an implementation of the storage interface that works with MySQL.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MySQL

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

func New

func New(uri string, cfg *sqlcommon.Config) (*MySQL, error)

func (*MySQL) Close

func (m *MySQL) Close()

Close closes the datastore and cleans up any residual resources.

func (*MySQL) CreateStore

func (m *MySQL) CreateStore(ctx context.Context, store *openfgav1.Store) (*openfgav1.Store, error)

CreateStore is slightly different between Postgres and MySQL

func (*MySQL) DeleteStore

func (m *MySQL) DeleteStore(ctx context.Context, id string) error

func (*MySQL) FindLatestAuthorizationModelID

func (m *MySQL) FindLatestAuthorizationModelID(ctx context.Context, store string) (string, error)

func (*MySQL) GetStore

func (m *MySQL) GetStore(ctx context.Context, id string) (*openfgav1.Store, error)

func (*MySQL) IsReady

func (m *MySQL) IsReady(ctx context.Context) (bool, error)

IsReady reports whether this MySQL datastore instance is ready to accept connections.

func (*MySQL) ListStores

func (m *MySQL) ListStores(ctx context.Context, opts storage.PaginationOptions) ([]*openfgav1.Store, []byte, error)

func (*MySQL) MaxTuplesPerWrite

func (m *MySQL) MaxTuplesPerWrite() int

func (*MySQL) MaxTypesPerAuthorizationModel

func (m *MySQL) MaxTypesPerAuthorizationModel() int

func (*MySQL) Read

func (m *MySQL) Read(ctx context.Context, store string, tupleKey *openfgav1.TupleKey) (storage.TupleIterator, error)

func (*MySQL) ReadAssertions

func (m *MySQL) ReadAssertions(ctx context.Context, store, modelID string) ([]*openfgav1.Assertion, error)

func (*MySQL) ReadAuthorizationModel

func (m *MySQL) ReadAuthorizationModel(ctx context.Context, store string, modelID string) (*openfgav1.AuthorizationModel, error)

func (*MySQL) ReadAuthorizationModels

func (m *MySQL) ReadAuthorizationModels(ctx context.Context, store string, opts storage.PaginationOptions) ([]*openfgav1.AuthorizationModel, []byte, error)

func (*MySQL) ReadChanges

func (m *MySQL) ReadChanges(
	ctx context.Context,
	store, objectTypeFilter string,
	opts storage.PaginationOptions,
	horizonOffset time.Duration,
) ([]*openfgav1.TupleChange, []byte, error)

func (*MySQL) ReadPage

func (m *MySQL) ReadPage(ctx context.Context, store string, tupleKey *openfgav1.TupleKey, opts storage.PaginationOptions) ([]*openfgav1.Tuple, []byte, error)

func (*MySQL) ReadStartingWithUser

func (m *MySQL) ReadStartingWithUser(ctx context.Context, store string, opts storage.ReadStartingWithUserFilter) (storage.TupleIterator, error)

func (*MySQL) ReadUserTuple

func (m *MySQL) ReadUserTuple(ctx context.Context, store string, tupleKey *openfgav1.TupleKey) (*openfgav1.Tuple, error)

func (*MySQL) ReadUsersetTuples

func (m *MySQL) ReadUsersetTuples(ctx context.Context, store string, filter storage.ReadUsersetTuplesFilter) (storage.TupleIterator, error)

func (*MySQL) Write

func (m *MySQL) Write(ctx context.Context, store string, deletes storage.Deletes, writes storage.Writes) error

func (*MySQL) WriteAssertions

func (m *MySQL) WriteAssertions(ctx context.Context, store, modelID string, assertions []*openfgav1.Assertion) error

WriteAssertions is slightly different between Postgres and MySQL

func (*MySQL) WriteAuthorizationModel

func (m *MySQL) WriteAuthorizationModel(ctx context.Context, store string, model *openfgav1.AuthorizationModel) error

Jump to

Keyboard shortcuts

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