column_value_extractor

package
v0.0.23 Latest Latest
Warning

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

Go to latest
Published: Aug 23, 2023 License: MPL-2.0 Imports: 10 Imported by: 283

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultColumnValueExtractor schema.ColumnValueExtractor = Default()

Functions

func BuildExtractErr

func BuildExtractErr(extractor schema.ColumnValueExtractor, table *schema.Table, column *schema.Column, err error) string

BuildExtractErr build error message for extract

func BuildExtractErrMsg

func BuildExtractErrMsg(extractor schema.ColumnValueExtractor, table *schema.Table, column *schema.Column, msg string, args ...any) string

func BuildValidateErr

func BuildValidateErr(extractor schema.ColumnValueExtractor, table *schema.Table, column *schema.Column, err error) string

BuildValidateErr build error message for validate

func BuildValidateErrMsg

func BuildValidateErrMsg(extractor schema.ColumnValueExtractor, table *schema.Table, column *schema.Column, msg string, args ...any) string

func UnderscoreToUpperCamelCase

func UnderscoreToUpperCamelCase(s string) string

func Wrapper

func Wrapper(extractorName string,
	extractFunction func(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics),
	dependencyColumnNames func(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string,
	validate func(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics) schema.ColumnValueExtractor

func WrapperExtractFunction

func WrapperExtractFunction(extractFunction func(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)) schema.ColumnValueExtractor

Types

type ColumnValueExtractorClientMeta

type ColumnValueExtractorClientMeta struct {
	// contains filtered or unexported fields
}

ColumnValueExtractorClientMeta take item value from ClientMeta

func ClientMetaGetItem

func ClientMetaGetItem(itemName string) *ColumnValueExtractorClientMeta

func ClientMetaGetItemOrDefault

func ClientMetaGetItemOrDefault(itemName string, defaultValue any) *ColumnValueExtractorClientMeta

func (*ColumnValueExtractorClientMeta) DependencyColumnNames

func (x *ColumnValueExtractorClientMeta) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorClientMeta) Extract

func (x *ColumnValueExtractorClientMeta) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (*ColumnValueExtractorClientMeta) Name

func (*ColumnValueExtractorClientMeta) Validate

func (x *ColumnValueExtractorClientMeta) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

type ColumnValueExtractorColumnsValueMd5

type ColumnValueExtractorColumnsValueMd5 struct {
	// contains filtered or unexported fields
}

ColumnValueExtractorColumnsValueMd5 Generates a value from the MD5 of the values of the other columns in the current row

func ColumnsValueMd5

func ColumnsValueMd5(columnNameSlice ...string) *ColumnValueExtractorColumnsValueMd5

func (*ColumnValueExtractorColumnsValueMd5) DependencyColumnNames

func (x *ColumnValueExtractorColumnsValueMd5) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorColumnsValueMd5) Extract

func (x *ColumnValueExtractorColumnsValueMd5) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (*ColumnValueExtractorColumnsValueMd5) Name

func (*ColumnValueExtractorColumnsValueMd5) Validate

func (x *ColumnValueExtractorColumnsValueMd5) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

type ColumnValueExtractorConstant

type ColumnValueExtractorConstant struct {
	// contains filtered or unexported fields
}

func Constant

func Constant(value any) *ColumnValueExtractorConstant

func (*ColumnValueExtractorConstant) DependencyColumnNames

func (x *ColumnValueExtractorConstant) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorConstant) Extract

func (x *ColumnValueExtractorConstant) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (*ColumnValueExtractorConstant) Name

func (*ColumnValueExtractorConstant) Validate

func (x *ColumnValueExtractorConstant) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

type ColumnValueExtractorDefault

type ColumnValueExtractorDefault struct {
}

func Default

func Default() *ColumnValueExtractorDefault

func (*ColumnValueExtractorDefault) DependencyColumnNames

func (x *ColumnValueExtractorDefault) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorDefault) Extract

func (x *ColumnValueExtractorDefault) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (*ColumnValueExtractorDefault) Name

func (*ColumnValueExtractorDefault) Validate

func (x *ColumnValueExtractorDefault) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

type ColumnValueExtractorNil

type ColumnValueExtractorNil struct {
}

func Nil

func (*ColumnValueExtractorNil) DependencyColumnNames

func (x *ColumnValueExtractorNil) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorNil) Extract

func (x *ColumnValueExtractorNil) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (*ColumnValueExtractorNil) Name

func (x *ColumnValueExtractorNil) Name() string

func (*ColumnValueExtractorNil) Validate

func (x *ColumnValueExtractorNil) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

type ColumnValueExtractorParentColumnValue

type ColumnValueExtractorParentColumnValue struct {
	// contains filtered or unexported fields
}

func ParentColumnValue

func ParentColumnValue(parentTableColumnName string) *ColumnValueExtractorParentColumnValue

func (*ColumnValueExtractorParentColumnValue) DependencyColumnNames

func (x *ColumnValueExtractorParentColumnValue) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorParentColumnValue) Extract

func (x *ColumnValueExtractorParentColumnValue) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (*ColumnValueExtractorParentColumnValue) GetParentTableColumnName added in v0.0.20

func (x *ColumnValueExtractorParentColumnValue) GetParentTableColumnName() string

func (*ColumnValueExtractorParentColumnValue) Name

func (*ColumnValueExtractorParentColumnValue) Validate

func (x *ColumnValueExtractorParentColumnValue) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

type ColumnValueExtractorParentPrimaryKeysID

type ColumnValueExtractorParentPrimaryKeysID struct {
}

func (*ColumnValueExtractorParentPrimaryKeysID) DependencyColumnNames

func (x *ColumnValueExtractorParentPrimaryKeysID) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorParentPrimaryKeysID) Extract

func (x *ColumnValueExtractorParentPrimaryKeysID) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (*ColumnValueExtractorParentPrimaryKeysID) Name

func (*ColumnValueExtractorParentPrimaryKeysID) Validate

func (x *ColumnValueExtractorParentPrimaryKeysID) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

type ColumnValueExtractorParentResultStructSelector added in v0.0.3

type ColumnValueExtractorParentResultStructSelector struct {
	// contains filtered or unexported fields
}

func ParentResultStructSelector added in v0.0.3

func ParentResultStructSelector(structSelector string) *ColumnValueExtractorParentResultStructSelector

ParentResultStructSelector Extract the value based on the struct selector expression passed in from parent raw result

func (*ColumnValueExtractorParentResultStructSelector) DependencyColumnNames added in v0.0.3

func (x *ColumnValueExtractorParentResultStructSelector) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorParentResultStructSelector) Extract added in v0.0.3

func (*ColumnValueExtractorParentResultStructSelector) Name added in v0.0.3

func (*ColumnValueExtractorParentResultStructSelector) Validate added in v0.0.3

type ColumnValueExtractorPrimaryKeysID

type ColumnValueExtractorPrimaryKeysID struct {
}

func (*ColumnValueExtractorPrimaryKeysID) DependencyColumnNames

func (x *ColumnValueExtractorPrimaryKeysID) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorPrimaryKeysID) Extract

func (x *ColumnValueExtractorPrimaryKeysID) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (*ColumnValueExtractorPrimaryKeysID) Name

func (*ColumnValueExtractorPrimaryKeysID) Validate

func (x *ColumnValueExtractorPrimaryKeysID) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

type ColumnValueExtractorStructSelector

type ColumnValueExtractorStructSelector struct {
	// contains filtered or unexported fields
}

func StructSelector

func StructSelector(structSelector ...string) *ColumnValueExtractorStructSelector

StructSelector Extract the value based on the struct selector expression passed in

func (*ColumnValueExtractorStructSelector) DependencyColumnNames

func (x *ColumnValueExtractorStructSelector) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorStructSelector) Extract

func (x *ColumnValueExtractorStructSelector) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (*ColumnValueExtractorStructSelector) Name

func (*ColumnValueExtractorStructSelector) Validate

func (x *ColumnValueExtractorStructSelector) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

type ColumnValueExtractorStructSelectorTime

type ColumnValueExtractorStructSelectorTime struct {
	// contains filtered or unexported fields
}

func StructSelectorTime

func StructSelectorTime(structSelector string, timeFormatter ...string) *ColumnValueExtractorStructSelectorTime

func StructSelectorTimeWithTimeFormatType

func StructSelectorTimeWithTimeFormatType(structSelector string, timeFormatter ...column_value_convertor.TimeFormat) *ColumnValueExtractorStructSelectorTime

func (ColumnValueExtractorStructSelectorTime) DependencyColumnNames

func (x ColumnValueExtractorStructSelectorTime) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (ColumnValueExtractorStructSelectorTime) Extract

func (x ColumnValueExtractorStructSelectorTime) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (ColumnValueExtractorStructSelectorTime) Name

func (ColumnValueExtractorStructSelectorTime) Validate

func (x ColumnValueExtractorStructSelectorTime) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

type ColumnValueExtractorUUID added in v0.0.6

type ColumnValueExtractorUUID struct {
	// contains filtered or unexported fields
}

func UUID added in v0.0.6

func UUID(withoutHorizontal ...bool) *ColumnValueExtractorUUID

func (*ColumnValueExtractorUUID) DependencyColumnNames added in v0.0.6

func (x *ColumnValueExtractorUUID) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorUUID) Extract added in v0.0.6

func (x *ColumnValueExtractorUUID) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (*ColumnValueExtractorUUID) Name added in v0.0.6

func (x *ColumnValueExtractorUUID) Name() string

func (*ColumnValueExtractorUUID) Validate added in v0.0.6

func (x *ColumnValueExtractorUUID) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

type ColumnValueExtractorWrapper

type ColumnValueExtractorWrapper struct {
	// contains filtered or unexported fields
}

func (*ColumnValueExtractorWrapper) DependencyColumnNames

func (x *ColumnValueExtractorWrapper) DependencyColumnNames(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) []string

func (*ColumnValueExtractorWrapper) Extract

func (x *ColumnValueExtractorWrapper) Extract(ctx context.Context, clientMeta *schema.ClientMeta, client any, task *schema.DataSourcePullTask, row *schema.Row, column *schema.Column, result any) (any, *schema.Diagnostics)

func (*ColumnValueExtractorWrapper) Name

func (*ColumnValueExtractorWrapper) Validate

func (x *ColumnValueExtractorWrapper) Validate(ctx context.Context, clientMeta *schema.ClientMeta, parentTable *schema.Table, table *schema.Table, column *schema.Column) *schema.Diagnostics

Jump to

Keyboard shortcuts

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