Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func WithErrorClassifier ¶
func WithErrorClassifier(e *Error)
Types ¶
type Error ¶
type Error struct {
// contains filtered or unexported fields
}
Error is a generic error returned when execution is run, Error satisfies diagnostic interface
func NewError ¶
func NewError(severity diag.Severity, dt diag.DiagnosticType, resource, summary string, args ...interface{}) *Error
NewError creates an execution Error
func (Error) Description ¶
func (e Error) Description() diag.Description
func (Error) Type ¶
func (e Error) Type() diag.DiagnosticType
type ErrorClassifier ¶
type ErrorClassifier func(meta schema.ClientMeta, resource string, err error) diag.Diagnostics
type Option ¶
type Option func(e *Error)
func WithDetails ¶
func WithResource ¶
func WithSeverity ¶
func WithSummary ¶
func WithType ¶
func WithType(dt diag.DiagnosticType) Option
type QueryExecer ¶
type Storage ¶
type Storage interface { QueryExecer Insert(ctx context.Context, t *schema.Table, instance schema.Resources) error Delete(ctx context.Context, t *schema.Table, kvFilters []interface{}) error RemoveStaleData(ctx context.Context, t *schema.Table, executionStart time.Time, kvFilters []interface{}) error CopyFrom(ctx context.Context, resources schema.Resources, shouldCascade bool, CascadeDeleteFilters map[string]interface{}) error Close() Dialect() schema.Dialect }
type TableExecutor ¶
type TableExecutor struct { // ResourceName name of top-level resource associated with table ResourceName string // Table this execution is associated with Table *schema.Table // Database connection to insert data into Db Storage // Logger associated with this execution Logger hclog.Logger // contains filtered or unexported fields }
TableExecutor marks all the related execution info passed to TableResolver and ColumnResolver giving access to the Runner's meta
func NewTableExecutor ¶
func NewTableExecutor(resourceName string, db Storage, logger hclog.Logger, table *schema.Table, extraFields map[string]interface{}, classifier ErrorClassifier) TableExecutor
NewTableExecutor creates a new TableExecutor for given schema.Table
func (TableExecutor) Resolve ¶
func (e TableExecutor) Resolve(ctx context.Context, meta schema.ClientMeta) (uint64, diag.Diagnostics)
Resolve is the root function of table executor which starts an execution of a Table resolving it, and it's relations.
Click to show internal directories.
Click to hide internal directories.