config

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Mar 28, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// URL is the configuration name of the url.
	URL = "url"
	// Table is the configuration name of the table.
	Table = "table"
)
View Source
const (
	SnapshotTable = "snapshotTable"
	TrackingTable = "trackingTable"
	Trigger       = "trigger"
	// OrderingColumn is a config name for an ordering column.
	OrderingColumn = "orderingColumn"
	// KeyColumns is the configuration name of the names of the columns to build the record.Key, separated by commas.
	KeyColumns = "keyColumns"
	// Snapshot is the configuration name for the Snapshot field.
	Snapshot = "snapshot"
	// Columns is a config name for columns.
	Columns = "columns"
	// BatchSize is a config name for a batch size.
	BatchSize = "batchSize"
)
View Source
const KeyColumn = "keyColumn"

KeyColumn is the configuration name of the key column.

Variables

This section is empty.

Functions

func Get

func Get() *v.Validate

Get initializes and registers validation tags once, and returns validator instance.

Types

type Configuration

type Configuration struct {
	// URL is the configuration of the connection string to connect to Oracle database.
	URL string `json:"url" validate:"required"`
	// Table is the configuration of the table name.
	Table string `json:"table" validate:"required,lte=128,oracle"`
}

A Configuration represents a general configuration needed to connect to Oracle database.

type Destination

type Destination struct {
	Configuration

	// KeyColumn is the column name uses to detect if the target table already contains the record.
	KeyColumn string `validate:"required,lte=128,oracle"`
}

Destination is a destination configuration needed to connect to Oracle database.

func ParseDestination

func ParseDestination(cfg map[string]string) (Destination, error)

ParseDestination parses a destination configuration.

type Source

type Source struct {
	Configuration
	// SnapshotTable is the snapshot table to be used.
	SnapshotTable string `validate:"lte=128,oracle"`
	// TrackingTable is the tracking table to be used in CDC.
	TrackingTable string `validate:"lte=128,oracle"`
	// Trigger is the trigger to be used in CDC.
	Trigger string `validate:"lte=128,oracle"`

	// OrderingColumn is a name of a column that the connector will use for ordering rows.
	OrderingColumn string `validate:"required,lte=128,oracle"`
	// KeyColumns is the configuration of key column names, separated by commas.
	KeyColumns []string `validate:"omitempty,dive,lte=128,oracle"`
	// Snapshot is the configuration that determines whether the connector
	// will take a snapshot of the entire table before starting cdc mode.
	Snapshot bool
	// Columns list of column names that should be included in each Record's payload.
	Columns []string `validate:"dive,lte=128,oracle"`
	// BatchSize is a size of rows batch.
	BatchSize int `validate:"gte=1,lte=100000"`
}

A Source represents a source configuration.

func ParseSource

func ParseSource(cfgMap map[string]string) (Source, error)

ParseSource parses a map with source configuration values. A new config.Source should always be constructed using this function.

Jump to

Keyboard shortcuts

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