airbyte

package
v0.0.0-...-7031e16 Latest Latest
Warning

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

Go to latest
Published: Dec 21, 2022 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	SUCCEEDED checkStatus = "SUCCEEDED"
	FAILED    checkStatus = "FAILED"
)

Variables

View Source
var Airbyte integ.ProtoFn = func(p *integ.Protocol) integ.Proto {
	return &proto{Protocol: p, regState: map[string]interface{}{}}
}

Functions

func Source

func Source(loader integ.Loader)

Types

type Catalog

type Catalog struct {
	Streams []Stream `json:"streams"`
}

Catalog defines the complete available schema you can sync with a source This should not be mistaken with ConfiguredCatalog which is the "selected" schema you want to sync

type ConfiguredCatalog

type ConfiguredCatalog struct {
	Streams []ConfiguredStream `json:"streams"`
}

ConfiguredCatalog is the "selected" schema you want to sync This should not be mistaken with Catalog which represents the complete available schema to sync

type ConfiguredStream

type ConfiguredStream struct {
	Stream              Stream              `json:"stream"`
	SyncMode            SyncMode            `json:"sync_mode"`
	CursorField         []string            `json:"cursor_field"`
	DestinationSyncMode DestinationSyncMode `json:"destination_sync_mode"`
	PrimaryKey          [][]string          `json:"primary_key"`
}

ConfiguredStream defines a single selected stream to sync

type DestinationSyncMode

type DestinationSyncMode string

DestinationSyncMode represents how the destination should interpret your data

var (
	// DestinationSyncModeAppend is used for the destination to know it needs to append data
	DestinationSyncModeAppend DestinationSyncMode = "append"
	// DestinationSyncModeOverwrite is used to indicate the destination should overwrite data
	DestinationSyncModeOverwrite DestinationSyncMode = "overwrite"
)

type Stream

type Stream struct {
	Name                    string               `json:"name"`
	JSONSchema              *jsonschema.Document `json:"json_schema"`
	SupportedSyncModes      []SyncMode           `json:"supported_sync_modes,omitempty"`
	SourceDefinedCursor     bool                 `json:"source_defined_cursor,omitempty"`
	DefaultCursorField      []string             `json:"default_cursor_field,omitempty"`
	SourceDefinedPrimaryKey [][]string           `json:"source_defined_primary_key,omitempty"`
	Namespace               string               `json:"namespace"`
}

Stream defines a single "schema" you'd like to sync - think of this as a table, collection, topic, etc. In airbyte terminology these are "streams"

type SyncMode

type SyncMode string

SyncMode defines the modes that your source is able to sync in

const (
	// SyncModeFullRefresh means the data will be wiped and fully synced on each run
	SyncModeFullRefresh SyncMode = "full_refresh"
	// SyncModeIncremental is used for incremental syncs
	SyncModeIncremental SyncMode = "incremental"
)

Jump to

Keyboard shortcuts

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