add file and redis loader

This commit is contained in:
ginuerzh
2022-04-11 00:03:04 +08:00
parent 3bc2524068
commit d6f8ec5116
14 changed files with 805 additions and 86 deletions

30
internal/loader/file.go Normal file
View File

@ -0,0 +1,30 @@
package loader
import (
"bytes"
"context"
"io"
"os"
)
type fileLoader struct {
filename string
}
func FileLoader(filename string) Loader {
return &fileLoader{
filename: filename,
}
}
func (l *fileLoader) Load(ctx context.Context) (io.Reader, error) {
data, err := os.ReadFile(l.filename)
if err != nil {
return nil, err
}
return bytes.NewReader(data), nil
}
func (l *fileLoader) Close() error {
return nil
}