Current section

Files

Jump to
dagger lib dagger gen dagger_engine_cache.ex
Raw

lib/dagger/gen/dagger_engine_cache.ex

# This file generated by `dagger_codegen`. Please DO NOT EDIT.
defmodule Dagger.DaggerEngineCache do
@moduledoc "A cache storage for the Dagger engine"
alias Dagger.Core.Client
alias Dagger.Core.QueryBuilder, as: QB
@derive Dagger.ID
defstruct [:query_builder, :client]
@type t() :: %__MODULE__{}
@doc "The current set of entries in the cache"
@spec entry_set(t()) :: Dagger.DaggerEngineCacheEntrySet.t()
def entry_set(%__MODULE__{} = dagger_engine_cache) do
query_builder =
dagger_engine_cache.query_builder |> QB.select("entrySet")
%Dagger.DaggerEngineCacheEntrySet{
query_builder: query_builder,
client: dagger_engine_cache.client
}
end
@doc "A unique identifier for this DaggerEngineCache."
@spec id(t()) :: {:ok, Dagger.DaggerEngineCacheID.t()} | {:error, term()}
def id(%__MODULE__{} = dagger_engine_cache) do
query_builder =
dagger_engine_cache.query_builder |> QB.select("id")
Client.execute(dagger_engine_cache.client, query_builder)
end
@doc "The maximum bytes to keep in the cache without pruning, after which automatic pruning may kick in."
@spec keep_bytes(t()) :: {:ok, integer()} | {:error, term()}
def keep_bytes(%__MODULE__{} = dagger_engine_cache) do
query_builder =
dagger_engine_cache.query_builder |> QB.select("keepBytes")
Client.execute(dagger_engine_cache.client, query_builder)
end
@doc "Prune the cache of releaseable entries"
@spec prune(t()) :: :ok | {:error, term()}
def prune(%__MODULE__{} = dagger_engine_cache) do
query_builder =
dagger_engine_cache.query_builder |> QB.select("prune")
case Client.execute(dagger_engine_cache.client, query_builder) do
{:ok, _} -> :ok
error -> error
end
end
end