Documentation
¶
Index ¶
- Constants
- func FileCreateDelayPrefix(userID string) string
- func FilePermissionsPrefix(fileID string) string
- func FilePrefix(fileID string) string
- func PermissionPrefix(fileID string, userID string) string
- func UserFilesPrefix(userID string) string
- type AddPermissionData
- type DeletePermissionData
- type File
- type FileService
- func (s *FileService) AddPermission(ctx context.Context, data *AddPermissionData) error
- func (s *FileService) Create(ctx context.Context, fileObj *model.File, file *multipart.FileHeader) (*model.File, error)
- func (s *FileService) Delete(ctx context.Context, fileID string, user *model.User) error
- func (s *FileService) DeletePermission(ctx context.Context, data *DeletePermissionData) error
- func (s *FileService) FindByID(ctx context.Context, id string) (*model.File, error)
- func (s *FileService) FindPermissionsToFile(ctx context.Context, fileID string) ([]*model.Permission, error)
- func (s *FileService) FindUserFiles(ctx context.Context, userID string) ([]*model.File, error)
- func (s *FileService) HasPermission(ctx context.Context, fileID string, userID string) (bool, error)
- func (s *FileService) ProtectedFindByID(ctx context.Context, fileID string, userID string) (*model.File, error)
- type Service
Constants ¶
View Source
const ( MAX_FILE_SIZE = 268_435_456 MAX_USER_FILES_DIR_SIZE = 805_306_368 )
Variables ¶
This section is empty.
Functions ¶
func FileCreateDelayPrefix ¶
func FilePermissionsPrefix ¶
func FilePrefix ¶
func PermissionPrefix ¶
func UserFilesPrefix ¶
Types ¶
type AddPermissionData ¶
type DeletePermissionData ¶
type File ¶
type File interface { Create(ctx context.Context, fileObj *model.File, file *multipart.FileHeader) (*model.File, error) ProtectedFindByID(ctx context.Context, fileID string, userID string) (*model.File, error) FindByID(ctx context.Context, id string) (*model.File, error) FindUserFiles(ctx context.Context, userID string) ([]*model.File, error) AddPermission(ctx context.Context, data *AddPermissionData) error Delete(ctx context.Context, fileID string, user *model.User) error DeletePermission(ctx context.Context, data *DeletePermissionData) error FindPermissionsToFile(ctx context.Context, fileID string) ([]*model.Permission, error) }
type FileService ¶
type FileService struct {
// contains filtered or unexported fields
}
func NewFileService ¶
func NewFileService(repo *repository.Repository, hasherClient pb.HasherClient) *FileService
func (*FileService) AddPermission ¶
func (s *FileService) AddPermission(ctx context.Context, data *AddPermissionData) error
func (*FileService) Create ¶
func (s *FileService) Create(ctx context.Context, fileObj *model.File, file *multipart.FileHeader) (*model.File, error)
func (*FileService) DeletePermission ¶
func (s *FileService) DeletePermission(ctx context.Context, data *DeletePermissionData) error
func (*FileService) FindPermissionsToFile ¶
func (s *FileService) FindPermissionsToFile(ctx context.Context, fileID string) ([]*model.Permission, error)
func (*FileService) FindUserFiles ¶
func (*FileService) HasPermission ¶
func (*FileService) ProtectedFindByID ¶
type Service ¶
type Service struct {
File
}
func New ¶
func New(repo *repository.Repository, hasherClient pb.HasherClient) *Service
Click to show internal directories.
Click to hide internal directories.