Documentation ¶
Overview ¶
Package sqlcommon contains utility functions shared among all SQL data stores.
Index ¶
- func HandleSQLError(err error, args ...interface{}) error
- func IsReady(ctx context.Context, db *sql.DB) (bool, error)
- func ReadAuthorizationModel(ctx context.Context, dbInfo *DBInfo, store, modelID string) (*openfgav1.AuthorizationModel, error)
- func Write(ctx context.Context, dbInfo *DBInfo, store string, deletes storage.Deletes, ...) error
- func WriteAuthorizationModel(ctx context.Context, dbInfo *DBInfo, store string, ...) error
- type Config
- type ContToken
- type DBInfo
- type DatastoreOption
- func WithConnMaxIdleTime(d time.Duration) DatastoreOption
- func WithConnMaxLifetime(d time.Duration) DatastoreOption
- func WithLogger(l logger.Logger) DatastoreOption
- func WithMaxIdleConns(c int) DatastoreOption
- func WithMaxOpenConns(c int) DatastoreOption
- func WithMaxTuplesPerWrite(maxTuples int) DatastoreOption
- func WithMaxTypesPerAuthorizationModel(maxTypes int) DatastoreOption
- func WithMetrics() DatastoreOption
- func WithPassword(password string) DatastoreOption
- func WithUsername(username string) DatastoreOption
- type SQLTupleIterator
- type TupleRecord
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func HandleSQLError ¶
func IsReady ¶ added in v1.3.4
IsReady returns true if the connection to the datastore is successful
func ReadAuthorizationModel ¶ added in v1.3.3
func Write ¶
func Write(ctx context.Context, dbInfo *DBInfo, store string, deletes storage.Deletes, writes storage.Writes, now time.Time) error
Write provides the common method for writing to database across sql storage
func WriteAuthorizationModel ¶ added in v1.3.3
Types ¶
type Config ¶
type Config struct { Username string Password string Logger logger.Logger MaxTuplesPerWriteField int MaxTypesPerModelField int MaxOpenConns int MaxIdleConns int ConnMaxIdleTime time.Duration ConnMaxLifetime time.Duration ExportMetrics bool }
func NewConfig ¶
func NewConfig(opts ...DatastoreOption) *Config
type DBInfo ¶
type DBInfo struct {
// contains filtered or unexported fields
}
DBInfo encapsulates DB information for use in common method
type DatastoreOption ¶
type DatastoreOption func(*Config)
func WithConnMaxIdleTime ¶
func WithConnMaxIdleTime(d time.Duration) DatastoreOption
func WithConnMaxLifetime ¶
func WithConnMaxLifetime(d time.Duration) DatastoreOption
func WithLogger ¶
func WithLogger(l logger.Logger) DatastoreOption
func WithMaxIdleConns ¶
func WithMaxIdleConns(c int) DatastoreOption
func WithMaxOpenConns ¶
func WithMaxOpenConns(c int) DatastoreOption
func WithMaxTuplesPerWrite ¶
func WithMaxTuplesPerWrite(maxTuples int) DatastoreOption
func WithMaxTypesPerAuthorizationModel ¶
func WithMaxTypesPerAuthorizationModel(maxTypes int) DatastoreOption
func WithMetrics ¶ added in v1.3.5
func WithMetrics() DatastoreOption
func WithPassword ¶ added in v1.1.0
func WithPassword(password string) DatastoreOption
func WithUsername ¶ added in v1.1.0
func WithUsername(username string) DatastoreOption
type SQLTupleIterator ¶
type SQLTupleIterator struct {
// contains filtered or unexported fields
}
func NewSQLTupleIterator ¶
func NewSQLTupleIterator(rows *sql.Rows) *SQLTupleIterator
NewSQLTupleIterator returns a SQL tuple iterator
func (*SQLTupleIterator) Stop ¶
func (t *SQLTupleIterator) Stop()
func (*SQLTupleIterator) ToArray ¶
func (t *SQLTupleIterator) ToArray(opts storage.PaginationOptions) ([]*openfgav1.Tuple, []byte, error)
ToArray converts the tupleIterator to an []*openfgav1.Tuple and a possibly empty continuation token. If the continuation token exists it is the ulid of the last element of the returned array.
Click to show internal directories.
Click to hide internal directories.