Skip to main content

BaseRepository

@hyperledger/identus-sdk v7.0.0


@hyperledger/identus-sdk / overview / BaseRepository

Abstract Class: BaseRepository<T>

Defined in: src/pluto/repositories/builders/BaseRepository.ts:14

BaseRepository

Encapsulate the functionality for interacting with the Store

Extended by

Type Parameters

Type Parameter
T extends Model

Constructors

Constructor

new BaseRepository<T>(store: Store, name: string): BaseRepository<T>

Defined in: src/pluto/repositories/builders/BaseRepository.ts:20

Parameters

ParameterType
storeStore
namestring

Returns

BaseRepository<T>

Methods

delete()

delete(uuid: string): Promise<void>

Defined in: src/pluto/repositories/builders/BaseRepository.ts:52

Parameters

ParameterType
uuidstring

Returns

Promise<void>


getModels()

getModels(query?: Query<T>): Promise<T[]>

Defined in: src/pluto/repositories/builders/BaseRepository.ts:86

Search the Store for Models

Parameters

ParameterTypeDescription
query?Query<T>a Query object, a set of values and operators defining the query

Returns

Promise<T[]>

Array of matched Models

See

../types.ts

Examples

search for a model with uuid and name

  repo.getModels({ selector: { uuid: "1", name: "eg" }})

search for models with uuid of 1 or 2

  repo.getModels({ selector: { $or: [{ uuid: "1" }, { uuid: "2" }] }})

search for all models

  repo.getModels()

Throws

Domain.Models if the query fails


insert()

insert(model: T): Promise<T>

Defined in: src/pluto/repositories/builders/BaseRepository.ts:32

Persist the Model in the Store.

Parameters

ParameterTypeDescription
modelT

Returns

Promise<T>

Throws

Domain.PlutoError.StoreInsertError if insert fails


update()

update(model: T): Promise<void>

Defined in: src/pluto/repositories/builders/BaseRepository.ts:43

Parameters

ParameterType
modelT

Returns

Promise<void>