clean_core library

Classes

AbstractFrameworkRepo
Abstract External repository, it defines a type.
AbstractRepository
Abstract repository, it defines a type.
AbstractUseCase
Abstract use case, it defines a type.
AppMainModule
AppModule
AppModuleInitScreen
AppModuleRegister
AppUtilModule
BasicDomainObject<T extends IntIdentifier>
Simplest of all entity's objects Entity that extends DomainObject with IntIdentifier
BasicEntityObject
Simplest of all entity's objects Entity that extends EntityObject with IntIdentifier and Converter
CleanCore
CRUDRepository<Domain extends BasicDomainObject<IntIdentifier>>
AbstractRepository of CRUD operations, of type Domain extends BasicDomainObject. Generally not implemented, instead extends the use case from DefaultCRUDRepo.
CRUDRepositoryAsync<Domain extends BasicDomainObject<IntIdentifier>>
AbstractRepository of CRUD Async operations, of type Domain extends BasicDomainObject. Generally not implemented, instead extends the repo from DefaultCRUDRepoAsync.
CRUDRepositoryFramework<Entity extends BasicEntityObject>
Default CRUD repository of type Entity extends BasicEntityObject for External operations. Implemented by the framework, the external library of persistence.
CRUDRepositoryFrameworkAsync<Entity extends BasicEntityObject>
Default CRUD repository of type Entity extends BasicEntityObject for External Async operations. Implemented by the framework, the external library of persistence.
CRUDUseCase<Domain extends BasicDomainObject<IntIdentifier>>
AbstractUseCase of CRUD operations, of type Domain extends BasicDomainObject. Generally not implemented, instead extends the repo from DefaultCRUDUseCase.
CRUDUseCaseAsync<Domain extends BasicDomainObject<IntIdentifier>>
AbstractUseCase of CRUD Async operations, of type Domain extends BasicDomainObject. Generally not implemented, instead extends the use case from DefaultCRUDUseCase.
DefaultReadUseCase<Domain extends BasicDomainObject<Domain>>
Default implementation of CRUDUseCase of type Domain extends BasicDomainObject It's basically a delegate to the repo.
DelegatedCRUDRepo<Domain extends BasicDomainObject<IntIdentifier>, Entity extends BasicEntityObject, ExternalRepo extends CRUDRepositoryFramework<Entity>>
Default implementation of CRUDRepository of type Domain extends BasicDomainObject & Entity extends BasicEntityObject
DelegatedCRUDRepoAsync<Domain extends BasicDomainObject<IntIdentifier>, Entity extends BasicEntityObject, ExternalRepo extends CRUDRepositoryFrameworkAsync<Entity>>
Default implementation of CRUDRepository of type Domain extends BasicDomainObject & Entity extends BasicEntityObject
DelegatedCRUDUseCase<Domain extends BasicDomainObject<IntIdentifier>, CRUDRepo extends CRUDRepository<Domain>>
Default implementation of CRUDUseCase of type Domain extends BasicDomainObject It's basically a delegate to the repo.
DelegatedCRUDUseCaseAsync<Domain extends BasicDomainObject<IntIdentifier>, CRUDRepo extends CRUDRepositoryAsync<Domain>>
DomainObject
Abstract Domain, it defines a type. Generally not implemented, instead extends the entity from BasicDomainObject.
EntityObject
Abstract Entity, it defines a type. Generally not implemented, instead extends the entity from BasicEntityObject.
GeneralConverter<Domain extends BasicDomainObject<IntIdentifier>, Entity extends BasicEntityObject>
General converter entity <==> domain, it generalize and extract the conversion entity => domain & domain => entity in a single isolated class
InMemoryExternalCRUDRepo<Entity extends BasicEntityObject>
JSONConverter<Entity extends BasicEntityObject>
ReadUseCase<Domain extends BasicDomainObject<IntIdentifier>>
AbstractUseCase of Read operations, of type Domain extends BasicDomainObject. Generally not implemented, instead extends the repo from DefaultReadUseCase.

Mixins

Cloneable<T>
IntIdentifier
Standard for unique identifier of every domain.