Version: v0.1.11 Latest Latest

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

Go to latest
Published: Mar 29, 2019 License: MIT Imports: 22 Imported by: 0




View Source
const Repover = "12"


View Source
var ErrMigrationRequired = errors.New("repo needs migration")
View Source
var ErrRepoCorrupted = errors.New("repo is corrupted")
View Source
var ErrRepoDoesNotExist = errors.New("repo does not exist, initialization is required")
View Source
var ErrRepoExists = errors.New("repo not empty, reinitializing would overwrite your account")


func Init added in v0.1.10

func Init(repoPath string) error

func LoadPlugins added in v0.1.10

func LoadPlugins(repoPath string) (*loader.PluginLoader, error)

func MigrateUp added in v0.1.10

func MigrateUp(repoPath string, pinCode string, testnet bool) error

MigrateUp applies minor migrations all the way up to current

func Stat added in v0.1.10

func Stat(repoPath string) error

Stat returns whether or not there's a major migration ahead of the current repover


type BlockMessageStore added in v0.1.10

type BlockMessageStore interface {
	Add(msg *pb.BlockMessage) error
	List(offset string, limit int) []pb.BlockMessage
	Delete(id string) error

type BlockStore

type BlockStore interface {
	Add(block *pb.Block) error
	Get(id string) *pb.Block
	List(offset string, limit int, query string) *pb.BlockList
	Count(query string) int
	Delete(id string) error
	DeleteByThread(threadId string) error

type CafeClientMessageStore added in v0.1.10

type CafeClientMessageStore interface {
	AddOrUpdate(message *pb.CafeClientMessage) error
	ListByClient(clientId string, limit int) []pb.CafeClientMessage
	CountByClient(clientId string) int
	Delete(id string, clientId string) error
	DeleteByClient(clientId string, limit int) error

type CafeClientNonceStore added in v0.1.10

type CafeClientNonceStore interface {
	Add(nonce *pb.CafeClientNonce) error
	Get(value string) *pb.CafeClientNonce
	Delete(value string) error

type CafeClientStore added in v0.1.10

type CafeClientStore interface {
	Add(account *pb.CafeClient) error
	Get(id string) *pb.CafeClient
	Count() int
	List() []pb.CafeClient
	ListByAddress(address string) []pb.CafeClient
	UpdateLastSeen(id string, date time.Time) error
	Delete(id string) error

type CafeClientThreadStore added in v0.1.10

type CafeClientThreadStore interface {
	AddOrUpdate(thrd *pb.CafeClientThread) error
	ListByClient(clientId string) []pb.CafeClientThread
	Delete(id string, clientId string) error
	DeleteByClient(clientId string) error

type CafeMessageStore added in v0.1.10

type CafeMessageStore interface {
	Add(msg *pb.CafeMessage) error
	List(offset string, limit int) []pb.CafeMessage
	AddAttempt(id string) error
	Delete(id string) error

type CafeRequestStore added in v0.1.10

type CafeRequestStore interface {
	Add(req *pb.CafeRequest) error
	List(offset string, limit int) []pb.CafeRequest
	Delete(id string) error
	DeleteByCafe(cafeId string) error

type CafeSessionStore added in v0.1.10

type CafeSessionStore interface {
	AddOrUpdate(session *pb.CafeSession) error
	Get(cafeId string) *pb.CafeSession
	List() *pb.CafeSessionList
	Delete(cafeId string) error

type CafeTokenStore added in v0.1.10

type CafeTokenStore interface {
	Add(token *pb.CafeToken) error
	Get(id string) *pb.CafeToken
	List() []pb.CafeToken
	Delete(id string) error

type ConfigStore

type ConfigStore interface {
	Init(pin string) error
	Configure(accnt *keypair.Full, created time.Time) error
	GetAccount() (*keypair.Full, error)
	GetCreationDate() (time.Time, error)
	IsEncrypted() bool
	GetLastDaily() (time.Time, error)
	SetLastDaily() error

type Datastore

type Datastore interface {
	Config() ConfigStore
	Peers() PeerStore
	Files() FileStore
	Threads() ThreadStore
	ThreadPeers() ThreadPeerStore
	Blocks() BlockStore
	BlockMessages() BlockMessageStore
	Invites() InviteStore
	Notifications() NotificationStore
	CafeSessions() CafeSessionStore
	CafeRequests() CafeRequestStore
	CafeMessages() CafeMessageStore
	CafeClientNonces() CafeClientNonceStore
	CafeClients() CafeClientStore
	CafeTokens() CafeTokenStore
	CafeClientThreads() CafeClientThreadStore
	CafeClientMessages() CafeClientMessageStore
	Ping() error

type FileStore added in v0.1.10

type FileStore interface {
	Add(file *pb.FileIndex) error
	Get(hash string) *pb.FileIndex
	GetByPrimary(mill string, checksum string) *pb.FileIndex
	GetBySource(mill string, source string, opts string) *pb.FileIndex
	AddTarget(hash string, target string) error
	RemoveTarget(hash string, target string) error
	Count() int
	Delete(hash string) error

type InviteStore added in v0.1.10

type InviteStore interface {
	Add(invite *pb.Invite) error
	Get(id string) *pb.Invite
	List() *pb.InviteList
	Delete(id string) error

type Migration

type Migration interface {
	Up(repoPath string, pinCode string, testnet bool) error
	Down(repoPath string, pinCode string, testnet bool) error
	Major() bool

Migration performs minor up and down migrations

type NotificationStore

type NotificationStore interface {
	Add(notification *pb.Notification) error
	Get(id string) *pb.Notification
	Read(id string) error
	ReadAll() error
	List(offset string, limit int) *pb.NotificationList
	CountUnread() int
	Delete(id string) error
	DeleteByActor(actorId string) error
	DeleteBySubject(subjectId string) error
	DeleteByBlock(blockId string) error

type PeerStore

type PeerStore interface {
	Add(peer *pb.Peer) error
	AddOrUpdate(peer *pb.Peer) error
	Get(id string) *pb.Peer
	GetBest(id string) *pb.Peer
	List(query string) []*pb.Peer
	Find(address string, username string, exclude []string) []*pb.Peer
	Count(query string) int
	UpdateName(id string, name string) error
	UpdateAvatar(id string, avatar string) error
	UpdateInboxes(id string, inboxes []*pb.Cafe) error
	Delete(id string) error
	DeleteByAddress(address string) error

type Queryable

type Queryable interface {
	BeginTransaction() (*sql.Tx, error)
	PrepareQuery(string) (*sql.Stmt, error)
	PrepareAndExecuteQuery(string, ...interface{}) (*sql.Rows, error)
	ExecuteQuery(string, ...interface{}) (sql.Result, error)

type ThreadPeerStore added in v0.1.10

type ThreadPeerStore interface {
	Add(peer *pb.ThreadPeer) error
	List() []pb.ThreadPeer
	ListById(id string) []pb.ThreadPeer
	ListByThread(threadId string) []pb.ThreadPeer
	ListUnwelcomedByThread(threadId string) []pb.ThreadPeer
	WelcomeByThread(thread string) error
	Count(distinct bool) int
	Delete(id string, thread string) error
	DeleteById(id string) error
	DeleteByThread(thread string) error

type ThreadStore

type ThreadStore interface {
	Add(thread *pb.Thread) error
	Get(id string) *pb.Thread
	GetByKey(key string) *pb.Thread
	List() *pb.ThreadList
	Count() int
	UpdateHead(id string, head string) error
	UpdateName(id string, name string) error
	Delete(id string) error


Path Synopsis

Jump to

Keyboard shortcuts

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