praval.storage.providers.filesystem๏ƒ

File system storage provider for Praval framework

Provides local file system storage capabilities with path management, directory operations, and file metadata support.

Classes

FileSystemProvider(name,ย config)

Local file system storage provider.

class praval.storage.providers.filesystem.FileSystemProvider(name, config)[source]๏ƒ

Bases: BaseStorageProvider

Local file system storage provider.

Features: - File and directory operations - Path management and validation - File metadata and permissions - Recursive operations - Pattern-based file listing - Atomic file operations

Parameters:
async connect()[source]๏ƒ

Verify file system access.

Return type:

bool

async disconnect()[source]๏ƒ

No explicit disconnection needed for file system.

async store(resource, data, **kwargs)[source]๏ƒ

Store data to file system.

Parameters:
  • resource (str) โ€“ File path relative to base_path

  • data (Any) โ€“ Data to store (string, bytes, dict/list for JSON, or file-like object)

  • **kwargs โ€“ File parameters (encoding, mode, etc.)

Return type:

StorageResult

Returns:

StorageResult with operation outcome

async retrieve(resource, **kwargs)[source]๏ƒ

Retrieve data from file system.

Parameters:
  • resource (str) โ€“ File path relative to base_path

  • **kwargs โ€“ Read parameters (encoding, decode_json, etc.)

Return type:

StorageResult

Returns:

StorageResult with retrieved data

async query(resource, query, **kwargs)[source]๏ƒ

Execute file system operations.

Parameters:
  • resource (str) โ€“ Path or pattern

  • query (Union[str, Dict]) โ€“ Query type (โ€œlistโ€, โ€œfindโ€, โ€œmetadataโ€, etc.)

  • **kwargs โ€“ Query parameters

Return type:

StorageResult

Returns:

StorageResult with query results

async delete(resource, **kwargs)[source]๏ƒ

Delete file or directory from file system.

Parameters:
  • resource (str) โ€“ Path to delete

  • **kwargs โ€“ Delete parameters (recursive, etc.)

Return type:

StorageResult

Returns:

StorageResult with operation outcome

async list_resources(prefix='', **kwargs)[source]๏ƒ

List files and directories.

Return type:

StorageResult

Parameters:

prefix (str)