mcapid

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Aug 20, 2025 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNoClientTransfer = errors.New("no client transfer")
View Source
var ErrNoMatchingClientTransferRequestFile = errors.New("no matching client transfer file found")
View Source
var FileTransferLocks = lock.NewIdLocker()
View Source
var ProjectLocks = lock.NewIdLocker()

Functions

func AcquireProjectMutex

func AcquireProjectMutex(projectID int)

func ReleaseProjectMutex

func ReleaseProjectMutex(projectID int)

func WithProjectMutex

func WithProjectMutex(projectID int, f func() error) error

Types

type ClientTransferCache added in v1.0.1

type ClientTransferCache interface {
	GetTransferRequestFileByPath(clientUUID string, projectID int, ownerID int, path string) (*mcmodel.TransferRequestFile, error)
	GetTransferRequestFileByID(clientUUID string, projectID int, ownerID int, transferRequestFileID int) (*mcmodel.TransferRequestFile, error)
	WithWriteLockHeld(fn func(cache NoLockHeldClientTransferCache) (*mcmodel.TransferRequestFile, error)) (*mcmodel.TransferRequestFile, error)
}

type ClientTransferCacheI added in v1.0.1

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

func NewClientTransferCache added in v1.0.1

func NewClientTransferCache() *ClientTransferCacheI

func (*ClientTransferCacheI) GetTransferRequestFileByID added in v1.0.1

func (c *ClientTransferCacheI) GetTransferRequestFileByID(clientUUID string, projectID int, ownerID int, transferRequestFileID int) (*mcmodel.TransferRequestFile, error)

func (*ClientTransferCacheI) GetTransferRequestFileByIDNoLockHeld added in v1.0.1

func (c *ClientTransferCacheI) GetTransferRequestFileByIDNoLockHeld(clientUUID string, projectID int, ownerID int, transferRequestFileID int) (*mcmodel.TransferRequestFile, error)

func (*ClientTransferCacheI) GetTransferRequestFileByPath added in v1.0.1

func (c *ClientTransferCacheI) GetTransferRequestFileByPath(clientUUID string, projectID int, ownerID int, path string) (*mcmodel.TransferRequestFile, error)

func (*ClientTransferCacheI) GetTransferRequestFileByPathNoLockHeld added in v1.0.1

func (c *ClientTransferCacheI) GetTransferRequestFileByPathNoLockHeld(clientUUID string, projectID int, ownerID int, path string) (*mcmodel.TransferRequestFile, error)

func (*ClientTransferCacheI) GetTransferRequestNoLockHeld added in v1.0.1

func (c *ClientTransferCacheI) GetTransferRequestNoLockHeld(clientUUID string, projectID int, ownerID int) (*mcmodel.TransferRequest, error)

func (*ClientTransferCacheI) InsertClientTransferNoLockHeld added in v1.0.1

func (c *ClientTransferCacheI) InsertClientTransferNoLockHeld(clientUUID string, ct *mcmodel.ClientTransfer)

func (*ClientTransferCacheI) InsertTransferRequestFileNoLockHeld added in v1.0.1

func (c *ClientTransferCacheI) InsertTransferRequestFileNoLockHeld(clientUUID string, trf *mcmodel.TransferRequestFile) error

func (*ClientTransferCacheI) WithWriteLockHeld added in v1.0.1

type NoLockHeldClientTransferCache added in v1.0.1

type NoLockHeldClientTransferCache interface {
	InsertClientTransferNoLockHeld(clientUUID string, cf *mcmodel.ClientTransfer)
	InsertTransferRequestFileNoLockHeld(clientUUID string, trf *mcmodel.TransferRequestFile) error
	GetTransferRequestFileByPathNoLockHeld(clientUUID string, projectID int, ownerID int, path string) (*mcmodel.TransferRequestFile, error)
	GetTransferRequestFileByIDNoLockHeld(clientUUID string, projectID int, ownerID int, transferRequestFileId int) (*mcmodel.TransferRequestFile, error)
	GetTransferRequestNoLockHeld(clientUUID string, projectID int, ownerID int) (*mcmodel.TransferRequest, error)
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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