sqlite

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Feb 14, 2022 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var META_TABLE_SCHEMAS = map[string]string{
	"feature": `
		CREATE TABLE feature (
			id				INTEGER 		NOT NULL PRIMARY KEY AUTOINCREMENT,
			name          	VARCHAR(32) 	NOT	NULL,
			group_id      	INT         	NOT	NULL,
			value_type    	INT          	NOT	NULL,
			description   	VARCHAR(128)	DEFAULT '',
			create_time   	TIMESTAMP    	NOT	NULL DEFAULT CURRENT_TIMESTAMP,
			modify_time   	TIMESTAMP    	NOT	NULL DEFAULT CURRENT_TIMESTAMP,
			UNIQUE (group_id, name),
			FOREIGN KEY (group_id) REFERENCES feature_group(id)
		);
		`,
	"feature_group": `
		CREATE TABLE feature_group (
			id					INTEGER 		NOT	NULL PRIMARY KEY AUTOINCREMENT,
			name               	VARCHAR(32) 	NOT	NULL,
			category           	VARCHAR(16) 	NOT	NULL,
			entity_id          	INT         	NOT	NULL,
			snapshot_interval  	INT         	DEFAULT 0,
			online_revision_id 	INT         	DEFAULT NULL,
			description        	VARCHAR(64) 	DEFAULT '',
			create_time        	TIMESTAMP   	NOT	NULL DEFAULT CURRENT_TIMESTAMP,
			modify_time			TIMESTAMP   	NOT	NULL DEFAULT CURRENT_TIMESTAMP,
			UNIQUE (name),
			FOREIGN KEY (entity_id) REFERENCES entity(id),
			FOREIGN KEY (online_revision_id) REFERENCES feature_group_revision(id)
		);
		`,
	"entity": `
		CREATE TABLE entity (
			id				INTEGER 		NOT	NULL PRIMARY KEY AUTOINCREMENT,
			name        	VARCHAR(32) 	NOT	NULL,
			description 	VARCHAR(64) 	DEFAULT '',
			create_time 	TIMESTAMP   	NOT	NULL DEFAULT CURRENT_TIMESTAMP,
			modify_time 	TIMESTAMP   	NOT	NULL DEFAULT CURRENT_TIMESTAMP,
			UNIQUE (name)
		);
		`,
	"feature_group_revision": `
		CREATE TABLE feature_group_revision (
			id				INTEGER 	NOT	NULL PRIMARY KEY AUTOINCREMENT,
			group_id    	INT         NOT	NULL,
			revision    	BIGINT      NOT	NULL,
			snapshot_table  VARCHAR(64) NOT	NULL,
			cdc_table    	VARCHAR(64) NOT	NULL DEFAULT '',
			anchored    	BOOLEAN     NOT	NULL,
			description 	VARCHAR(64) DEFAULT '',
			create_time 	TIMESTAMP   NOT	NULL DEFAULT CURRENT_TIMESTAMP,
			modify_time 	TIMESTAMP   NOT	NULL DEFAULT CURRENT_TIMESTAMP,
			UNIQUE (group_id, revision),
			FOREIGN KEY (group_id) REFERENCES feature_group(id)
		);
		`,
}
View Source
var META_VIEW_SCHEMAS = map[string]string{}
View Source
var TRIGGER_TEMPLATE = `` /* 171-byte string literal not displayed */

Functions

func CreateDatabase

func CreateDatabase(ctx context.Context, opt *types.SQLiteOpt) (err error)

Types

type DB

type DB struct {
	*sqlx.DB
	*informer.Informer
}

func Open

func Open(ctx context.Context, opt *types.SQLiteOpt) (*DB, error)

func (*DB) Close

func (db *DB) Close() error

func (*DB) CreateEntity

func (db *DB) CreateEntity(ctx context.Context, opt metadata.CreateEntityOpt) (int, error)

func (*DB) CreateFeature

func (db *DB) CreateFeature(ctx context.Context, opt metadata.CreateFeatureOpt) (int, error)

func (*DB) CreateGroup

func (db *DB) CreateGroup(ctx context.Context, opt metadata.CreateGroupOpt) (int, error)

func (*DB) CreateRevision

func (db *DB) CreateRevision(ctx context.Context, opt metadata.CreateRevisionOpt) (int, error)

func (*DB) GetEntity

func (db *DB) GetEntity(ctx context.Context, id int) (*types.Entity, error)

func (*DB) GetEntityByName

func (db *DB) GetEntityByName(ctx context.Context, name string) (*types.Entity, error)

func (*DB) GetFeature

func (db *DB) GetFeature(ctx context.Context, id int) (*types.Feature, error)

func (*DB) GetFeatureByName

func (db *DB) GetFeatureByName(ctx context.Context, groupName string, featureName string) (*types.Feature, error)

func (*DB) GetGroup

func (db *DB) GetGroup(ctx context.Context, id int) (*types.Group, error)

func (*DB) GetGroupByName

func (db *DB) GetGroupByName(ctx context.Context, name string) (*types.Group, error)

func (*DB) GetRevision

func (db *DB) GetRevision(ctx context.Context, id int) (*types.Revision, error)

func (*DB) GetRevisionBy

func (db *DB) GetRevisionBy(ctx context.Context, groupID int, revision int64) (*types.Revision, error)

func (*DB) ListEntity

func (db *DB) ListEntity(ctx context.Context, entityIDs *[]int) (types.EntityList, error)

func (*DB) ListFeature

func (db *DB) ListFeature(ctx context.Context, opt metadata.ListFeatureOpt) (types.FeatureList, error)

func (*DB) ListGroup

func (db *DB) ListGroup(ctx context.Context, opt metadata.ListGroupOpt) (types.GroupList, error)

func (*DB) ListRevision

func (db *DB) ListRevision(ctx context.Context, groupID *int) (types.RevisionList, error)

func (*DB) Ping

func (db *DB) Ping(ctx context.Context) error

func (*DB) UpdateEntity

func (db *DB) UpdateEntity(ctx context.Context, opt metadata.UpdateEntityOpt) error

func (*DB) UpdateFeature

func (db *DB) UpdateFeature(ctx context.Context, opt metadata.UpdateFeatureOpt) error

func (*DB) UpdateGroup

func (db *DB) UpdateGroup(ctx context.Context, opt metadata.UpdateGroupOpt) error

func (*DB) UpdateRevision

func (db *DB) UpdateRevision(ctx context.Context, opt metadata.UpdateRevisionOpt) error

func (*DB) WithTransaction

func (db *DB) WithTransaction(ctx context.Context, fn func(context.Context, metadata.DBStore) error) error

type Tx

type Tx struct {
	*sqlx.Tx
}

func (*Tx) CreateEntity

func (tx *Tx) CreateEntity(ctx context.Context, opt metadata.CreateEntityOpt) (int, error)

func (*Tx) CreateFeature

func (tx *Tx) CreateFeature(ctx context.Context, opt metadata.CreateFeatureOpt) (int, error)

func (*Tx) CreateGroup

func (tx *Tx) CreateGroup(ctx context.Context, opt metadata.CreateGroupOpt) (int, error)

func (*Tx) CreateRevision

func (tx *Tx) CreateRevision(ctx context.Context, opt metadata.CreateRevisionOpt) (int, error)

func (*Tx) GetEntity

func (tx *Tx) GetEntity(ctx context.Context, id int) (*types.Entity, error)

func (*Tx) GetEntityByName

func (tx *Tx) GetEntityByName(ctx context.Context, name string) (*types.Entity, error)

func (*Tx) GetFeature

func (tx *Tx) GetFeature(ctx context.Context, id int) (*types.Feature, error)

func (*Tx) GetFeatureByName

func (tx *Tx) GetFeatureByName(ctx context.Context, groupName string, featureName string) (*types.Feature, error)

func (*Tx) GetGroup

func (tx *Tx) GetGroup(ctx context.Context, id int) (*types.Group, error)

func (*Tx) GetGroupByName

func (tx *Tx) GetGroupByName(ctx context.Context, name string) (*types.Group, error)

func (*Tx) GetRevision

func (tx *Tx) GetRevision(ctx context.Context, id int) (*types.Revision, error)

func (*Tx) GetRevisionBy

func (tx *Tx) GetRevisionBy(ctx context.Context, groupID int, revision int64) (*types.Revision, error)

func (*Tx) ListEntity

func (tx *Tx) ListEntity(ctx context.Context, entityIDs *[]int) (types.EntityList, error)

func (*Tx) ListFeature

func (tx *Tx) ListFeature(ctx context.Context, opt metadata.ListFeatureOpt) (types.FeatureList, error)

func (*Tx) ListGroup

func (tx *Tx) ListGroup(ctx context.Context, opt metadata.ListGroupOpt) (types.GroupList, error)

func (*Tx) ListRevision

func (tx *Tx) ListRevision(ctx context.Context, groupID *int) (types.RevisionList, error)

func (*Tx) UpdateEntity

func (tx *Tx) UpdateEntity(ctx context.Context, opt metadata.UpdateEntityOpt) error

func (*Tx) UpdateFeature

func (tx *Tx) UpdateFeature(ctx context.Context, opt metadata.UpdateFeatureOpt) error

func (*Tx) UpdateGroup

func (tx *Tx) UpdateGroup(ctx context.Context, opt metadata.UpdateGroupOpt) error

func (*Tx) UpdateRevision

func (tx *Tx) UpdateRevision(ctx context.Context, opt metadata.UpdateRevisionOpt) error

func (*Tx) WithTransaction

func (tx *Tx) WithTransaction(ctx context.Context, fn func(context.Context, metadata.DBStore) error) error

Jump to

Keyboard shortcuts

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