file_backend
file_backend ¶
AsyncFileBackend ¶
AsyncFileBackend(
base_dir: Union[str, Path],
create_if_missing: bool = True,
locks_dir: Optional[Union[str, Path]] = None,
)
Bases: AsyncResultsBackend[T]
Async wrapper for FileBackend.
Runs the synchronous FileBackend methods in a threadpool to avoid blocking the event loop.
Initialize the AsyncFileBackend.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
base_dir
|
Union[str, Path]
|
Base directory to store results |
required |
create_if_missing
|
bool
|
Whether to create the directory if it doesn't exist |
True
|
locks_dir
|
Optional[Union[str, Path]]
|
Directory to store lock files. If None, uses a system temp directory. |
None
|
Source code in src/results_manager/async_backends/file_backend.py
clear
async
¶
delete
async
¶
Asynchronously delete a result by ID.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
result_id
|
Union[str, List[str]]
|
Unique identifier or hierarchical path for the result |
required |
Returns:
Type | Description |
---|---|
bool
|
True if deleted, False if not found |
Source code in src/results_manager/async_backends/file_backend.py
exists
async
¶
Asynchronously check if a result exists for the given ID.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
result_id
|
Union[str, List[str]]
|
Unique identifier or hierarchical path for the result |
required |
Returns:
Type | Description |
---|---|
bool
|
True if the result exists, False otherwise |
Source code in src/results_manager/async_backends/file_backend.py
get
async
¶
get(
result_id: Union[str, List[str]],
model_class: Optional[Type[T]] = None,
namespace: Optional[str] = None,
) -> T
Asynchronously retrieve a result by ID.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
result_id
|
Union[str, List[str]]
|
Unique identifier or hierarchical path for the result |
required |
model_class
|
Optional[Type[T]]
|
Optional model class to validate against |
None
|
namespace
|
Optional[str]
|
Optional namespace to look in |
None
|
Returns:
Type | Description |
---|---|
T
|
Pydantic model instance |
Source code in src/results_manager/async_backends/file_backend.py
list_ids
async
¶
Asynchronously list all result IDs, optionally filtered by a prefix.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
prefix
|
Union[str, List[str]]
|
Optional prefix path to filter results |
None
|
Returns:
Type | Description |
---|---|
List[str]
|
List of result IDs |
Source code in src/results_manager/async_backends/file_backend.py
set
async
¶
set(
result_id: Union[str, List[str]],
data: BaseModel,
behavior: SetBehavior = RAISE_IF_EXISTS,
namespace: Optional[str] = None,
strict_namespace: bool = False,
) -> bool
Asynchronously store a result with the given ID.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
result_id
|
Union[str, List[str]]
|
Unique identifier or hierarchical path for the result |
required |
data
|
BaseModel
|
Pydantic model instance to store |
required |
behavior
|
SetBehavior
|
How to handle existing data with the same ID |
RAISE_IF_EXISTS
|
namespace
|
Optional[str]
|
Optional namespace to store the model in |
None
|
strict_namespace
|
bool
|
If True, raises an error if model is in multiple namespaces |
False
|
Returns:
Type | Description |
---|---|
bool
|
True if data was written, False if skipped |