Dataloader.Source protocol (dataloader v1.0.10) View Source

Link to this section Summary

Functions

Fetch the result found under the given batch and item keys.

Enqueue an item to be loaded under a given batch

Determine if there are any batches that have not yet been run.

Put a value into the results.

Run any batches queued up for this source.

Returns the timeout (in ms) for the source.

Link to this section Types

Specs

batch_key() :: term()

Specs

item_key() :: term()

Specs

t() :: term()

Link to this section Functions

Link to this function

fetch(source, batch_key, item_key)

View Source

Specs

fetch(t(), batch_key(), item_key()) :: {:ok, term()} | {:error, term()}

Fetch the result found under the given batch and item keys.

Link to this function

load(source, batch_key, item_key)

View Source

Specs

load(t(), batch_key(), item_key()) :: t()

Enqueue an item to be loaded under a given batch

Link to this function

pending_batches?(source)

View Source

Specs

pending_batches?(t()) :: boolean()

Determine if there are any batches that have not yet been run.

Link to this function

put(source, batch_key, item_key, item)

View Source

Specs

put(t(), batch_key(), item_key(), term()) :: t()

Put a value into the results.

Useful for warming caches. The source is permitted to reject the value.

Specs

run(t()) :: t()

Run any batches queued up for this source.

Specs

timeout(t()) :: number()

Returns the timeout (in ms) for the source.

This is important for ensuring the dataloader obeys the timeouts when running multiple sources concurrently