Table of Contents

Class ItemRepository

Namespace
Moongate.Persistence.Services.Persistence
Assembly
Moongate.Persistence.dll

Thread-safe item repository backed by the shared persistence state store.

public sealed class ItemRepository : IItemRepository
Inheritance
ItemRepository
Implements
Inherited Members

Methods

CountAsync(CancellationToken)

Returns the current number of persisted items.

public ValueTask<int> CountAsync(CancellationToken cancellationToken = default)

Parameters

cancellationToken CancellationToken

Returns

ValueTask<int>

GetAllAsync(CancellationToken)

Returns all persisted items.

public ValueTask<IReadOnlyCollection<UOItemEntity>> GetAllAsync(CancellationToken cancellationToken = default)

Parameters

cancellationToken CancellationToken

Returns

ValueTask<IReadOnlyCollection<UOItemEntity>>

GetByIdAsync(Serial, CancellationToken)

Gets an item by its serial identifier.

public ValueTask<UOItemEntity?> GetByIdAsync(Serial id, CancellationToken cancellationToken = default)

Parameters

id Serial
cancellationToken CancellationToken

Returns

ValueTask<UOItemEntity>

QueryAsync<TResult>(Func<UOItemEntity, bool>, Func<UOItemEntity, TResult>, CancellationToken)

Runs a projection query over item entities.

public ValueTask<IReadOnlyList<TResult>> QueryAsync<TResult>(Func<UOItemEntity, bool> predicate, Func<UOItemEntity, TResult> selector, CancellationToken cancellationToken = default)

Parameters

predicate Func<UOItemEntity, bool>
selector Func<UOItemEntity, TResult>
cancellationToken CancellationToken

Returns

ValueTask<IReadOnlyList<TResult>>

Type Parameters

TResult

RemoveAsync(Serial, CancellationToken)

Removes an item by its serial identifier.

public ValueTask<bool> RemoveAsync(Serial id, CancellationToken cancellationToken = default)

Parameters

id Serial
cancellationToken CancellationToken

Returns

ValueTask<bool>

UpsertAsync(UOItemEntity, CancellationToken)

Inserts or updates an item.

public ValueTask UpsertAsync(UOItemEntity item, CancellationToken cancellationToken = default)

Parameters

item UOItemEntity
cancellationToken CancellationToken

Returns

ValueTask