Documentation
¶
Index ¶
- func DecodeColumn(raw *interface{}, target interface{}) error
- func FormatError(err error) string
- func GetColumnStatus(raw *interface{}) (string, error)
- func ImportColumnState(ctx context.Context, req resource.ImportStateRequest, ...)
- func IsColumnNotAvailableError(err error) bool
- func IsNotFoundError(err error) bool
- func ProjectIDAttribute() schema.StringAttribute
- func ResolveProjectID(clients *AppwriteClients, resourceProjectID types.String) (string, error)
- type AppwriteClients
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 ¶
FormatError returns a detailed error string including status code and response body.
func GetColumnStatus ¶
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 ¶
IsColumnNotAvailableError checks if the error is due to a column still being processed.
func IsNotFoundError ¶
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.
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.