usecase

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Aug 27, 2020 License: GPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AliOssAdapter

type AliOssAdapter interface {
	SignFetchURL(key []byte) ([]byte, error)
	Upload(stream io.Reader) ([]byte, error)
}

type CtorConfig

type CtorConfig struct {
	DomainAdapter
	AliOssAdapter
	log.Logger
}

type DomainAdapter

type DomainAdapter interface {
	File(fileKey string) (*filer.File, error)
	InsertFile(file *filer.File) error
	IsFileKeyExisted(fileKey string) bool
}

type File

type File interface {
	GetSource(key string) (*filer.File, error)
	InsertSource(value, desc, fileMD5 string, fileSize int64) (filer.FileKey, error)
}

type Upload

type Upload interface {
	UploadToAliOss(stream io.Reader) (filer.FileKey, error)
}

type UseCase

type UseCase struct {
	log.Logger
	// contains filtered or unexported fields
}

func NewUseCase

func NewUseCase(config CtorConfig) *UseCase

func (*UseCase) GetSource

func (c *UseCase) GetSource(key string) (*filer.File, error)

func (*UseCase) InsertSource

func (c *UseCase) InsertSource(value, desc, fileMD5 string, fileSize int64) (filer.FileKey, error)

func (*UseCase) UploadToAliOss

func (c *UseCase) UploadToAliOss(stream io.Reader) (filer.FileKey, error)

Jump to

Keyboard shortcuts

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