persist_lib

package
v2.0.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Oct 30, 2018 License: BSD-3-Clause Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultCreateTableHandler

func DefaultCreateTableHandler(accessor SqlClientGetter) func(context.Context, *EmptyForUServ, func(Scanable)) error

func DefaultDropTableHandler

func DefaultDropTableHandler(accessor SqlClientGetter) func(context.Context, *EmptyForUServ, func(Scanable)) error

func DefaultGetAllUsersHandler

func DefaultGetAllUsersHandler(accessor SqlClientGetter) func(context.Context, *EmptyForUServ, func(Scanable)) error

func DefaultGetFriendsHandler

func DefaultGetFriendsHandler(accessor SqlClientGetter) func(context.Context, *FriendsReqForUServ, func(Scanable)) error

func DefaultInsertUsersHandler

func DefaultInsertUsersHandler(accessor SqlClientGetter) func(context.Context) (func(*UserForUServ) error, func() (Scanable, error), error)

func DefaultSelectUserByIdHandler

func DefaultSelectUserByIdHandler(accessor SqlClientGetter) func(context.Context, *UserForUServ, func(Scanable)) error

func DefaultUpdateNameToFooHandler

func DefaultUpdateNameToFooHandler(accessor SqlClientGetter) func(context.Context, *UserForUServ, func(Scanable)) error

func DefaultUpdateUserNamesHandler

func DefaultUpdateUserNamesHandler(accessor SqlClientGetter) func(context.Context) (func(*UserForUServ) (Scanable, error), func() error)

Types

type EmptyForUServ

type EmptyForUServ struct {
}

type FriendsReqForUServ

type FriendsReqForUServ struct {
	Names interface{}
}

func (*FriendsReqForUServ) GetNames

func (p *FriendsReqForUServ) GetNames() interface{}

this could be used in a query, so generate the getters/setters

func (*FriendsReqForUServ) SetNames

func (p *FriendsReqForUServ) SetNames(param interface{})

type Result

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

func UServCreateTableQuery

func UServCreateTableQuery(tx Runable, req UServCreateTableQueryParams) *Result

func UServDropTableQuery

func UServDropTableQuery(tx Runable, req UServDropTableQueryParams) *Result

func UServGetAllUsersQuery

func UServGetAllUsersQuery(tx Runable, req UServGetAllUsersQueryParams) *Result

func UServGetFriendsQuery

func UServGetFriendsQuery(tx Runable, req UServGetFriendsQueryParams) *Result

func UServInsertUsersQuery

func UServInsertUsersQuery(tx Runable, req UServInsertUsersQueryParams) *Result

func UServSelectUserByIdQuery

func UServSelectUserByIdQuery(tx Runable, req UServSelectUserByIdQueryParams) *Result

func UServUpdateNameToFooQuery

func UServUpdateNameToFooQuery(tx Runable, req UServUpdateNameToFooQueryParams) *Result

func UServUpdateUserNamesQuery

func UServUpdateUserNamesQuery(tx Runable, req UServUpdateUserNamesQueryParams) *Result

func (*Result) Do

func (r *Result) Do(fun func(Scanable) error) error

func (*Result) Err

func (r *Result) Err() error

func (*Result) Scan

func (r *Result) Scan(dest ...interface{}) error

returns sql.ErrNoRows if it did not scan into dest

type Runable

type Runable interface {
	Query(string, ...interface{}) (*sql.Rows, error)
	QueryRow(string, ...interface{}) *sql.Row
	Exec(string, ...interface{}) (sql.Result, error)
}

type Scanable

type Scanable interface {
	Scan(dest ...interface{}) error
}

type SqlClientGetter

type SqlClientGetter func() (*sql.DB, error)

func NewSqlClientGetter

func NewSqlClientGetter(cli **sql.DB) SqlClientGetter

type UServCreateTableQueryParams

type UServCreateTableQueryParams interface {
}

type UServDropTableQueryParams

type UServDropTableQueryParams interface {
}

type UServGetAllUsersQueryParams

type UServGetAllUsersQueryParams interface {
}

type UServGetFriendsQueryParams

type UServGetFriendsQueryParams interface {
	GetNames() interface{}
}

type UServInsertUsersQueryParams

type UServInsertUsersQueryParams interface {
	GetCreatedOn() interface{}
	GetId() int64
	GetName() string
	GetFriends() []byte
}

type UServMethodReceiver

type UServMethodReceiver struct {
	Handlers UServQueryHandlers
}

func (*UServMethodReceiver) CreateTable

func (p *UServMethodReceiver) CreateTable(ctx context.Context, params *EmptyForUServ, next func(Scanable)) error

next must be called on each result row

func (*UServMethodReceiver) DropTable

func (p *UServMethodReceiver) DropTable(ctx context.Context, params *EmptyForUServ, next func(Scanable)) error

next must be called on each result row

func (*UServMethodReceiver) GetAllUsers

func (p *UServMethodReceiver) GetAllUsers(ctx context.Context, params *EmptyForUServ, next func(Scanable)) error

next must be called on each result row

func (*UServMethodReceiver) GetFriends

func (p *UServMethodReceiver) GetFriends(ctx context.Context, params *FriendsReqForUServ, next func(Scanable)) error

next must be called on each result row

func (*UServMethodReceiver) InsertUsers

func (p *UServMethodReceiver) InsertUsers(ctx context.Context) (func(*UserForUServ) error, func() (Scanable, error), error)

given a context, returns two functions. (feed, stop) feed will be called once for every row recieved by the handler stop will be called when the client is done streaming. it expects a row to be returned, or nil.

func (*UServMethodReceiver) SelectUserById

func (p *UServMethodReceiver) SelectUserById(ctx context.Context, params *UserForUServ, next func(Scanable)) error

next must be called on each result row

func (*UServMethodReceiver) UpdateNameToFoo

func (p *UServMethodReceiver) UpdateNameToFoo(ctx context.Context, params *UserForUServ, next func(Scanable)) error

next must be called on each result row

func (*UServMethodReceiver) UpdateUserNames

func (p *UServMethodReceiver) UpdateUserNames(ctx context.Context) (func(*UserForUServ) (Scanable, error), func() error)

returns two functions (feed, stop) feed needs to be called for every row received. It will run the query and return the result + error// stop needs to be called to signal the transaction has finished

type UServQueryHandlers

type UServQueryHandlers struct {
	CreateTableHandler     func(context.Context, *EmptyForUServ, func(Scanable)) error
	InsertUsersHandler     func(context.Context) (func(*UserForUServ) error, func() (Scanable, error), error)
	GetAllUsersHandler     func(context.Context, *EmptyForUServ, func(Scanable)) error
	SelectUserByIdHandler  func(context.Context, *UserForUServ, func(Scanable)) error
	UpdateUserNamesHandler func(context.Context) (func(*UserForUServ) (Scanable, error), func() error)
	UpdateNameToFooHandler func(context.Context, *UserForUServ, func(Scanable)) error
	GetFriendsHandler      func(context.Context, *FriendsReqForUServ, func(Scanable)) error
	DropTableHandler       func(context.Context, *EmptyForUServ, func(Scanable)) error
}

type UServSelectUserByIdQueryParams

type UServSelectUserByIdQueryParams interface {
	GetId() int64
}

type UServUpdateNameToFooQueryParams

type UServUpdateNameToFooQueryParams interface {
	GetId() int64
}

type UServUpdateUserNamesQueryParams

type UServUpdateUserNamesQueryParams interface {
	GetName() string
	GetId() int64
}

type UserForUServ

type UserForUServ struct {
	Id        int64
	Name      string
	Friends   []byte
	CreatedOn interface{}
}

this could be used in a query, so generate the getters/setters

func (*UserForUServ) GetCreatedOn

func (p *UserForUServ) GetCreatedOn() interface{}

func (*UserForUServ) GetFriends

func (p *UserForUServ) GetFriends() []byte

func (*UserForUServ) GetId

func (p *UserForUServ) GetId() int64

this could be used in a query, so generate the getters/setters

func (*UserForUServ) GetName

func (p *UserForUServ) GetName() string

func (*UserForUServ) SetCreatedOn

func (p *UserForUServ) SetCreatedOn(param interface{})

func (*UserForUServ) SetFriends

func (p *UserForUServ) SetFriends(param []byte)

func (*UserForUServ) SetId

func (p *UserForUServ) SetId(param int64)

func (*UserForUServ) SetName

func (p *UserForUServ) SetName(param string)

Jump to

Keyboard shortcuts

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