persistence

package
v0.0.0-...-ba71c75 Latest Latest
Warning

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

Go to latest
Published: Mar 7, 2026 License: GPL-3.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ClientRepository       ClientSqlRepository
	SessionRepository      SessionSqlRepository
	SubscriptionRepository SubscriptionSqlRepository
	RetainRepository       RetainSqlRepository
	RetryRepository        RetrySqlRepository
	UserRepository         UserSqlRepository
)

Functions

func AdminPasswordReset

func AdminPasswordReset(db *dbaccess.Queries, newPassword []byte)

func MappedClient

func MappedClient(client dbaccess.Client) model.Client

func MappedClients

func MappedClients(clients []dbaccess.Client) []model.Client

func MappedUser

func MappedUser(user dbaccess.User) model.User

func MappedUsers

func MappedUsers(clients []dbaccess.User) []model.User

func StartRetryCleaner

func StartRetryCleaner(db *dbaccess.Queries)

func StartSessionCleaner

func StartSessionCleaner(db *dbaccess.Queries)

Types

type ClientSqlRepository

type ClientSqlRepository struct {
	Db *dbaccess.Queries
}

func (ClientSqlRepository) Create

func (ar ClientSqlRepository) Create(client model.Client) error

func (ClientSqlRepository) DeleteById

func (ar ClientSqlRepository) DeleteById(id int64) error

func (ClientSqlRepository) GetAll

func (ar ClientSqlRepository) GetAll() []model.Client

func (ClientSqlRepository) GetByClientIdUsername

func (ar ClientSqlRepository) GetByClientIdUsername(clientId string, username string) (model.Client, error)

func (ClientSqlRepository) GetById

func (ar ClientSqlRepository) GetById(id int64) (model.Client, error)

type RetainSqlRepository

type RetainSqlRepository struct {
	Db *dbaccess.Queries
}

func (RetainSqlRepository) Create

func (r RetainSqlRepository) Create(retain model.Retain) error

func (RetainSqlRepository) Delete

func (r RetainSqlRepository) Delete(retain model.Retain) error

func (RetainSqlRepository) FindRetains

func (r RetainSqlRepository) FindRetains(topics []string) []model.Retain

type RetrySqlRepository

type RetrySqlRepository struct {
	Db *dbaccess.Queries
}

func (RetrySqlRepository) Delete

func (r RetrySqlRepository) Delete(retry model.Retry) error

func (RetrySqlRepository) FirstByClientIdPacketIdentifier

func (r RetrySqlRepository) FirstByClientIdPacketIdentifier(clientId string, packetIdentifier int) (model.Retry, error)

func (RetrySqlRepository) FirstByClientIdPacketIdentifierReasonCode

func (r RetrySqlRepository) FirstByClientIdPacketIdentifierReasonCode(clientId string, packetIdentifier int, reasonCode uint8) (model.Retry, error)

func (RetrySqlRepository) InsertOne

func (r RetrySqlRepository) InsertOne(retry model.Retry) error

func (RetrySqlRepository) UpdateAckStatus

func (r RetrySqlRepository) UpdateAckStatus(id int64, ackStatus uint) error

type SessionSqlRepository

type SessionSqlRepository struct {
	Db      *dbaccess.Queries
	SqlConn *sql.DB
}

func (SessionSqlRepository) CleanSession

func (sr SessionSqlRepository) CleanSession(clientId string) error

func (SessionSqlRepository) DisconnectSession

func (sr SessionSqlRepository) DisconnectSession(clientId string)

func (SessionSqlRepository) GetAll

func (sr SessionSqlRepository) GetAll() []model.Session

func (SessionSqlRepository) GetById

func (sr SessionSqlRepository) GetById(sessionId int64) (model.Session, error)

func (SessionSqlRepository) IsOnline

func (sr SessionSqlRepository) IsOnline(sessionId int64) bool

func (SessionSqlRepository) PersistSession

func (sr SessionSqlRepository) PersistSession(running *model.RunningSession) (int64, error)

func (SessionSqlRepository) SessionExists

func (sr SessionSqlRepository) SessionExists(clientId string) (model.Session, bool)

func (SessionSqlRepository) UpdateSession

func (sr SessionSqlRepository) UpdateSession(sessionId int64, running *model.RunningSession) (int64, error)

type SqlPersistence

type SqlPersistence struct {
	DbFile       string
	InitDatabase bool
	// contains filtered or unexported fields
}

func (*SqlPersistence) Close

func (p *SqlPersistence) Close()

func (*SqlPersistence) Init

func (p *SqlPersistence) Init(cleanExpiredSessions bool, cleanExpiredRetries bool, initAdminPassword []byte) (*dbaccess.Queries, error)

type SubscriptionSqlRepository

type SubscriptionSqlRepository struct {
	Db *dbaccess.Queries
}

func (SubscriptionSqlRepository) CreateOne

func (SubscriptionSqlRepository) DeleteByClientIdTopicShareName

func (s SubscriptionSqlRepository) DeleteByClientIdTopicShareName(clientId string, topic string, shareName string) error

func (SubscriptionSqlRepository) FindOrderedSubscriptions

func (s SubscriptionSqlRepository) FindOrderedSubscriptions(topics []string, shared bool) []model.Subscription

func (SubscriptionSqlRepository) FindSubscriptions

func (s SubscriptionSqlRepository) FindSubscriptions(topics []string, shared bool) []model.Subscription

func (SubscriptionSqlRepository) FindToUnsubscribe

func (s SubscriptionSqlRepository) FindToUnsubscribe(shareName string, topic string, clientId string) (model.Subscription, error)

func (SubscriptionSqlRepository) GetAll

type UserSqlRepository

type UserSqlRepository struct {
	Db *dbaccess.Queries
}

func (UserSqlRepository) Create

func (ar UserSqlRepository) Create(user model.User) error

func (UserSqlRepository) DeleteById

func (ar UserSqlRepository) DeleteById(id int64) error

func (UserSqlRepository) GetAll

func (ar UserSqlRepository) GetAll() []model.User

func (UserSqlRepository) GetById

func (ar UserSqlRepository) GetById(id int64) (model.User, error)

func (UserSqlRepository) GetByUsername

func (ar UserSqlRepository) GetByUsername(username string) (model.User, error)

Jump to

Keyboard shortcuts

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