WeaviateEx.Backup.Status (WeaviateEx v0.7.4)

View Source

Backup operation status types and response structs.

Status Values

  • :started - Backup operation has started
  • :transferring - Data is being transferred
  • :transferred - Transfer complete, finalizing
  • :success - Operation completed successfully
  • :failed - Operation failed
  • :canceled - Operation was canceled

Response Structs

  • CreateResponse - Response from backup create operation
  • RestoreResponse - Response from backup restore operation
  • BackupInfo - Backup metadata from list operation

Summary

Functions

List all status values.

Parse BackupInfo from API response map.

Check if status indicates completion.

Parse CreateResponse from API response map.

Parse status from API response.

Check if status indicates operation is in progress.

Parse RestoreResponse from API response map.

Check if status indicates success.

Convert status atom to API string.

Types

status()

@type status() ::
  :started | :transferring | :transferred | :success | :failed | :canceled

Functions

all()

@spec all() :: [status()]

List all status values.

Examples

iex> Status.all()
[:started, :transferring, :transferred, :success, :failed, :canceled]

backup_info_from_api(map)

@spec backup_info_from_api(map()) :: {:ok, WeaviateEx.Backup.Status.BackupInfo.t()}

Parse BackupInfo from API response map.

Examples

iex> Status.backup_info_from_api(%{"id" => "backup-1", "backend" => "azure", "status" => "SUCCESS"})
{:ok, %Status.BackupInfo{id: "backup-1", backend: :azure, status: :success}}

completed?(status)

@spec completed?(status()) :: boolean()

Check if status indicates completion.

Returns true for :success, :failed, or :canceled.

Examples

iex> Status.completed?(:success)
true

iex> Status.completed?(:transferring)
false

create_response_from_api(map)

@spec create_response_from_api(map()) ::
  {:ok, WeaviateEx.Backup.Status.CreateResponse.t()}

Parse CreateResponse from API response map.

Examples

iex> Status.create_response_from_api(%{"id" => "backup-1", "backend" => "s3", "status" => "SUCCESS"})
{:ok, %Status.CreateResponse{id: "backup-1", backend: :s3, status: :success}}

from_api(binary)

@spec from_api(String.t()) :: status()

Parse status from API response.

Examples

iex> Status.from_api("SUCCESS")
:success

iex> Status.from_api("TRANSFERRING")
:transferring

in_progress?(status)

@spec in_progress?(status()) :: boolean()

Check if status indicates operation is in progress.

Returns true for :started, :transferring, or :transferred.

Examples

iex> Status.in_progress?(:transferring)
true

iex> Status.in_progress?(:success)
false

restore_response_from_api(map)

@spec restore_response_from_api(map()) ::
  {:ok, WeaviateEx.Backup.Status.RestoreResponse.t()}

Parse RestoreResponse from API response map.

Examples

iex> Status.restore_response_from_api(%{"id" => "backup-1", "backend" => "gcs", "status" => "SUCCESS"})
{:ok, %Status.RestoreResponse{id: "backup-1", backend: :gcs, status: :success}}

success?(arg1)

@spec success?(status()) :: boolean()

Check if status indicates success.

Examples

iex> Status.success?(:success)
true

iex> Status.success?(:failed)
false

to_api(atom)

@spec to_api(status()) :: String.t()

Convert status atom to API string.

Examples

iex> Status.to_api(:success)
"SUCCESS"

iex> Status.to_api(:transferring)
"TRANSFERRING"