Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
Functions ¶
Types ¶
type CompletedUploadedFileItem ¶
type CompletedUploadedFileItem struct {
// contains filtered or unexported fields
}
func NewCompletedUploadedFileItem ¶
func NewCompletedUploadedFileItem(filePath string) (CompletedUploadedFileItem, error)
NewCompletedUploadedFileItem creates a new item for the specified file
func (*CompletedUploadedFileItem) GetTrackedHash ¶
func (f *CompletedUploadedFileItem) GetTrackedHash() string
GetTrackedHash returns the hash value stored in the cache.
func (*CompletedUploadedFileItem) GetTrackedMTime ¶
func (f *CompletedUploadedFileItem) GetTrackedMTime() (int64, error)
GetTrackedMTime returns the last modified time value stored in the cache.
type InMemRepository ¶
type InMemRepository struct {
// contains filtered or unexported fields
}
func NewInMemRepository ¶
func NewInMemRepository() *InMemRepository
NewInMemRepository create a new repository
func (*InMemRepository) Get ¶
func (r *InMemRepository) Get(path string) (CompletedUploadedFileItem, error)
Get an item
func (*InMemRepository) Put ¶
func (r *InMemRepository) Put(item CompletedUploadedFileItem) error
Store an item
type LevelDBRepository ¶
type LevelDBRepository struct {
// contains filtered or unexported fields
}
func NewLevelDBRepository ¶
func NewLevelDBRepository(db *leveldb.DB) *LevelDBRepository
NewLevelDBRepository create a new repository
func (*LevelDBRepository) Delete ¶
func (r *LevelDBRepository) Delete(path string) error
Delete an item
func (*LevelDBRepository) Get ¶
func (r *LevelDBRepository) Get(path string) (CompletedUploadedFileItem, error)
Get an item
func (*LevelDBRepository) Put ¶
func (r *LevelDBRepository) Put(item CompletedUploadedFileItem) error
Store an item
type Repository ¶
type Repository interface { Get(key string) (CompletedUploadedFileItem, error) Put(item CompletedUploadedFileItem) error Delete(key string) error Close() error }
Repository represents a database where to track uploaded files
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service represents the repository where uploaded objects are tracked
func NewService ¶
func NewService(r Repository) *Service
NewService created a Service to track uploaded objects
func (*Service) CacheAsAlreadyUploaded ¶
CacheAsAlreadyUploaded marks a file as already uploaded to prevent re-uploads
func (*Service) IsAlreadyUploaded ¶
IsAlreadyUploaded checks if the file was already uploaded
func (*Service) RemoveAsAlreadyUploaded ¶
RemoveAsAlreadyUploaded removes a file previously marked as uploaded