Table of Contents

Interface ICharacterKnownAbilityService

Namespace
FishMMO.Database.Npgsql.Services.Interfaces
Assembly
FishMMO-DB.dll

Service interface for managing a character's known abilities.

public interface ICharacterKnownAbilityService : IPersistManyAction<CharacterKnownAbilityData>, IDeleteByKeyVersionedAction<long>, IFetchCollectionByKeyAction<long, CharacterKnownAbilityData>
Inherited Members

Remarks

Known ability persistence and deletion should be version-gated via the logical Version so stale updates are rejected and newer authoritative updates win.

Methods

DeleteAsync(long, int, long, CancellationToken)

Deletes a known ability for the specified character if incomingVersion is newer.

Task<DatabaseResult> DeleteAsync(long characterId, int templateId, long incomingVersion, CancellationToken cancellationToken = default)

Parameters

characterId long

The character ID.

templateId int

The ability template ID.

incomingVersion long

The authoritative, monotonic version for this delete operation.

cancellationToken CancellationToken

Token to cancel the operation.

Returns

Task<DatabaseResult>

A DatabaseResult indicating success or failure.

PersistAsync(long, int, long, CancellationToken)

Persists a known ability for the specified character.

Task<DatabaseResult> PersistAsync(long characterId, int templateId, long incomingVersion, CancellationToken cancellationToken = default)

Parameters

characterId long

The character ID.

templateId int

The ability template ID.

incomingVersion long

The authoritative, monotonic version for this persist operation.

cancellationToken CancellationToken

Token to cancel the operation.

Returns

Task<DatabaseResult>

A DatabaseResult indicating success or failure.