repository library

Classes

DeduplicationCacheRepository<Info, DS extends DataSourceCallable<Info>>
The most complete Repository implementation, combining safety, memory caching, and request deduplication.
DeduplicationExecution<T>
A mixin that prevents concurrent execution of the same asynchronous operation.
DeduplicationRepository<Info, DS extends DataSourceCallable<Info>>
A SafeRepositoryDatasourceCallable enhanced with request deduplication logic.
Repository
The base abstract class for all Repositories in the architecture.
RepositoryDataSource<DS extends DataSource>
A specialized Repository that holds a reference to a DataSource.
RepositoryDataSourceCallable<ValueType, DS extends DataSourceCallable<ValueType>>
A Repository implementation that wraps a specific DataSourceCallable.
RepositoryDataSourceStreamable<ValueType, DS extends DataSourceStreamable<ValueType>>
A specialized Repository that manages a Stream of data from a DataSourceStreamable.
SafeMemoryCacheRepository<Info, DS extends DataSourceCallable<Info>>
A SafeRepositoryDatasourceCallable that implements an in-memory caching strategy.
SafeRepositoryDatasourceCallable<Info, DS extends DataSourceCallable<Info>>
A robust Repository implementation that bridges a DataSource with the Domain layer.

Mixins

DeduplicationManagement<Info, DS extends DataSourceCallable<Info>>
Prevents redundant, simultaneous calls to the same endpoint with the same parameters.
MemoryCacheHelper<Info>
A mixin that provides simple in-memory caching capabilities to a Repository.
SafeRepositoryHelper<ValueType>
A mixin that provides a safety net for repository executions.