common

package
v1.0.2 Latest Latest
Warning

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

Go to latest
Published: Apr 17, 2026 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DecodeColumn

func DecodeColumn(raw *interface{}, target interface{}) error

DecodeColumn decodes the raw *interface{} response from GetColumn into a typed model.

func FormatError

func FormatError(err error) string

FormatError returns a detailed error string including status code and response body.

func GetColumnStatus

func GetColumnStatus(raw *interface{}) (string, error)

GetColumnStatus extracts the status field from a raw GetColumn response.

func ImportColumnState

func ImportColumnState(ctx context.Context, req resource.ImportStateRequest, resp *resource.ImportStateResponse)

ImportColumnState parses a "database_id/table_id/key" import ID into state.

func IsColumnNotAvailableError

func IsColumnNotAvailableError(err error) bool

IsColumnNotAvailableError checks if the error is due to a column still being processed.

func IsNotFoundError

func IsNotFoundError(err error) bool

IsNotFoundError checks if an Appwrite SDK error is a 404.

func ProjectIDAttribute added in v1.0.0

func ProjectIDAttribute() schema.StringAttribute

ProjectIDAttribute returns the shared schema attribute for project_id on resources.

func ResolveProjectID added in v1.0.0

func ResolveProjectID(clients *AppwriteClients, resourceProjectID types.String) (string, error)

ResolveProjectID returns the resource-level project_id if set, otherwise the provider default. Returns an error if neither is set.

func WaitForColumnAvailable added in v1.0.2

func WaitForColumnAvailable(ctx context.Context, getColumn func() (*interface{}, error), key string) error

WaitForColumnAvailable polls a column until its status becomes "available", with a maximum wait of 60 seconds.

Types

type AppwriteClients

type AppwriteClients struct {
	// BaseOptions contains the client options without a project (endpoint + key + self_signed).
	BaseOptions []client.ClientOption
	// ProjectID is the provider-level default project ID.
	ProjectID string
}

AppwriteClients holds the base configuration for creating SDK clients.

func (*AppwriteClients) ClientForProject added in v1.0.0

func (ac *AppwriteClients) ClientForProject(projectID string) client.Client

ClientForProject creates a new SDK client targeting a specific project.

type AttrCheck added in v1.0.2

type AttrCheck struct {
	Summary  string
	Detail   string
	Mismatch bool
}

AttrCheck holds the result of an attribute mismatch check.

func CheckBoolNotIgnored added in v1.0.2

func CheckBoolNotIgnored(planned types.Bool, actual bool, attrName string, resourceDesc string) AttrCheck

CheckBoolNotIgnored returns an error diagnostic if the planned bool value differs from the API response, indicating the server doesn't support this attribute.

func CheckStringNotIgnored added in v1.0.2

func CheckStringNotIgnored(planned types.String, actual string, attrName string, resourceDesc string) AttrCheck

CheckStringNotIgnored returns an error diagnostic if the planned string value differs from the API response, indicating the server doesn't support this attribute.

Jump to

Keyboard shortcuts

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