Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsHardCode ¶
IsHardCode checks whether a topic name is hard code or not.
Types ¶
type Dispatcher ¶
Dispatcher is an abstraction for dispatching rows and ddls into different topics.
type DynamicTopicDispatcher ¶
type DynamicTopicDispatcher struct {
// contains filtered or unexported fields
}
DynamicTopicDispatcher is a topic dispatcher which dispatches rows and DDLs dynamically to the target topics.
func NewDynamicTopicDispatcher ¶
func NewDynamicTopicDispatcher(topicExpr Expression) *DynamicTopicDispatcher
NewDynamicTopicDispatcher creates a DynamicTopicDispatcher.
func (*DynamicTopicDispatcher) String ¶
func (d *DynamicTopicDispatcher) String() string
func (*DynamicTopicDispatcher) Substitute ¶
func (d *DynamicTopicDispatcher) Substitute(schema, table string) string
Substitute converts schema/table name in a topic expression to kafka topic name.
type Expression ¶
type Expression string
Expression represent a kafka topic expression. The expression should be in form of: [prefix]{schema}[middle][{table}][suffix] prefix/suffix/middle are optional and should match the regex of [A-Za-z0-9\._\-]* {table} can also be optional.
func (Expression) PulsarValidate ¶
func (e Expression) PulsarValidate() error
PulsarValidate checks whether a pulsar topic name is valid or not.
func (Expression) Substitute ¶
func (e Expression) Substitute(schema, table string) string
Substitute converts schema/table name in a topic expression to kafka topic name. When doing conversion, the special characters other than [A-Za-z0-9\._\-] in schema/table will be substituted for underscore '_'.
func (Expression) Validate ¶
func (e Expression) Validate() error
Validate checks whether a kafka topic name is valid or not. return true if the expression is hard coded.
func (Expression) ValidateForAvro ¶
func (e Expression) ValidateForAvro() error
ValidateForAvro checks whether topic pattern is {schema}_{table}, the only allowed
type StaticTopicDispatcher ¶
type StaticTopicDispatcher struct {
// contains filtered or unexported fields
}
StaticTopicDispatcher is a topic dispatcher which dispatches rows and DDL to the specific topic.
func NewStaticTopicDispatcher ¶
func NewStaticTopicDispatcher(defaultTopic string) *StaticTopicDispatcher
NewStaticTopicDispatcher returns a StaticTopicDispatcher.
func (*StaticTopicDispatcher) String ¶
func (s *StaticTopicDispatcher) String() string
func (*StaticTopicDispatcher) Substitute ¶
func (s *StaticTopicDispatcher) Substitute(schema, table string) string
Substitute converts schema/table name in a topic expression to kafka topic name.