resource

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Dec 7, 2022 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewResource

func NewResource[T any](r Resource[T]) func() resource.ResourceWithConfigure

Types

type ConfigureRequest

type ConfigureRequest struct {
	Conn sql.Connection
}

type CreateRequest

type CreateRequest[TData any] struct {
	Plan TData
	// contains filtered or unexported fields
}

type CreateResponse

type CreateResponse[TData any] stateResponse[TData]

type DeleteRequest

type DeleteRequest[TData any] struct {
	State TData
	// contains filtered or unexported fields
}

type DeleteResponse

type DeleteResponse[TData any] struct{}

type ReadRequest

type ReadRequest[TData any] struct {
	State TData
	// contains filtered or unexported fields
}

type ReadResponse

type ReadResponse[TData any] struct {
	// contains filtered or unexported fields
}

func (*ReadResponse[TData]) SetState

func (r *ReadResponse[TData]) SetState(state TData)

type Resource

type Resource[TData any] interface {
	GetName() string
	GetSchema(ctx context.Context) tfsdk.Schema
	Read(ctx context.Context, req ReadRequest[TData], resp *ReadResponse[TData])
	Create(ctx context.Context, req CreateRequest[TData], resp *CreateResponse[TData])
	Update(ctx context.Context, req UpdateRequest[TData], resp *UpdateResponse[TData])
	Delete(ctx context.Context, req DeleteRequest[TData], resp *DeleteResponse[TData])
}

type ResourceWithValidation added in v0.5.0

type ResourceWithValidation[TData any] interface {
	Validate(ctx context.Context, req ValidateRequest[TData], resp *ValidateResponse[TData])
}

type StateSetter

type StateSetter[TData any] func(state TData)

type UpdateRequest

type UpdateRequest[TData any] struct {
	Plan  TData
	State TData
	// contains filtered or unexported fields
}

type UpdateResponse

type UpdateResponse[TData any] stateResponse[TData]

type ValidateRequest added in v0.5.0

type ValidateRequest[TData any] struct {
	Config TData
	// contains filtered or unexported fields
}

func (ValidateRequest) Then added in v0.5.0

func (r ValidateRequest) Then(f func()) utils.ErrorMonad

type ValidateResponse added in v0.5.0

type ValidateResponse[TData any] struct{}

Jump to

Keyboard shortcuts

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