summaryrefslogtreecommitdiff
path: root/internal/io/fs/filereader.go
blob: ee5a8ce228d2089107f9312d55986b937315c7bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package fs

import (
	"context"

	"github.com/mimecast/dtail/internal/io/line"
	"github.com/mimecast/dtail/internal/lcontext"
	"github.com/mimecast/dtail/internal/regex"
)

// FileReader is the interface used on the dtail server to read/cat/grep/mapr...
// a file.
type FileReader interface {
	Start(ctx context.Context, ltx lcontext.LContext, lines chan<- *line.Line,
		re regex.Regex) error
	StartWithProcessor(ctx context.Context, ltx lcontext.LContext, processor line.Processor,
		re regex.Regex) error
	StartWithProcessorOptimized(ctx context.Context, ltx lcontext.LContext, processor line.Processor,
		re regex.Regex) error
	FilePath() string
	Retry() bool
}