Documentation
¶
Index ¶
- type Channel
- type ChannelFactory
- type PluginRegistry
- type PluginType
- type Reader
- type ReaderJob
- type ReaderJobFactory
- type ReaderTask
- type ReaderTaskFactory
- type ReaderTaskWithContext
- type RecordReceiver
- type RecordSender
- type SenderReceiverFactory
- type Writer
- type WriterJob
- type WriterJobFactory
- type WriterTask
- type WriterTaskFactory
- type WriterTaskWithContext
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Channel ¶
type Channel interface {
Close() error
Push(record element.Record) error
Pull() (element.Record, error)
Size() int
IsClosed() bool
}
Channel 通道接口,连接Reader和Writer - 纯接口定义
type ChannelFactory ¶
ChannelFactory 通道工厂接口
type PluginRegistry ¶
type PluginRegistry interface {
RegisterReaderJob(name string, factory ReaderJobFactory) error
RegisterReaderTask(name string, factory ReaderTaskFactory) error
RegisterWriterJob(name string, factory WriterJobFactory) error
RegisterWriterTask(name string, factory WriterTaskFactory) error
GetReaderJob(name string) (ReaderJobFactory, error)
GetReaderTask(name string) (ReaderTaskFactory, error)
GetWriterJob(name string) (WriterJobFactory, error)
GetWriterTask(name string) (WriterTaskFactory, error)
ListReaderPlugins() []string
ListWriterPlugins() []string
}
PluginRegistry 插件注册表接口 - 负责插件的注册和获取
type PluginType ¶
type PluginType int
PluginType 插件类型
const ( ReaderPlugin PluginType = iota WriterPlugin )
type Reader ¶
type Reader interface {
Init(config config.Configuration) error
Destroy() error
}
Reader 基础读取插件接口
type ReaderJob ¶
type ReaderJob interface {
Reader
Split(adviceNumber int) ([]config.Configuration, error)
Post() error
}
ReaderJob 读取作业接口 - 负责作业级别的操作
type ReaderJobFactory ¶
type ReaderJobFactory interface {
CreateReaderJob() ReaderJob
}
Plugin factories - 工厂模式接口定义
type ReaderTask ¶
type ReaderTask interface {
Reader
StartRead(recordSender RecordSender) error
Post() error
}
ReaderTask 读取任务接口 - 负责任务级别的数据读取
type ReaderTaskFactory ¶
type ReaderTaskFactory interface {
CreateReaderTask() ReaderTask
}
type ReaderTaskWithContext ¶
type ReaderTaskWithContext interface {
ReaderTask
StartReadWithContext(recordSender RecordSender, ctx context.Context) error
}
ReaderTaskWithContext 支持Context取消的读取任务接口
type RecordReceiver ¶
RecordReceiver 记录接收接口 - 纯接口定义
type RecordSender ¶
type RecordSender interface {
SendRecord(record element.Record) error
Flush() error
Terminate() error
Shutdown() error
}
RecordSender 记录发送接口 - 纯接口定义
type SenderReceiverFactory ¶
type SenderReceiverFactory interface {
CreateRecordSender(channel Channel) RecordSender
CreateRecordReceiver(channel Channel) RecordReceiver
}
SenderReceiverFactory 发送器接收器工厂接口
type Writer ¶
type Writer interface {
Init(config config.Configuration) error
Destroy() error
}
Writer 基础写入插件接口
type WriterJob ¶
type WriterJob interface {
Writer
Split(mandatoryNumber int) ([]config.Configuration, error)
Post() error
Prepare() error
}
WriterJob 写入作业接口 - 负责作业级别的操作
type WriterJobFactory ¶
type WriterJobFactory interface {
CreateWriterJob() WriterJob
}
type WriterTask ¶
type WriterTask interface {
Writer
StartWrite(recordReceiver RecordReceiver) error
Post() error
Prepare() error
}
WriterTask 写入任务接口 - 负责任务级别的数据写入
type WriterTaskFactory ¶
type WriterTaskFactory interface {
CreateWriterTask() WriterTask
}
type WriterTaskWithContext ¶
type WriterTaskWithContext interface {
WriterTask
StartWriteWithContext(recordReceiver RecordReceiver, ctx context.Context) error
}
WriterTaskWithContext 支持Context取消的写入任务接口
Click to show internal directories.
Click to hide internal directories.