Skip to main content

ProfileStore

  • Namespace: PPDS.Auth.Profiles
  • Assembly: PPDS.Auth
  • Kind: Class
  • Implements: IDisposable

Summary​

Manages persistent storage of authentication profiles.

Members​

Constructors​

ProfileStore(ILogger logger)​

ProfileStore(ILogger logger)

Creates a new profile store using the default path.

  • Param logger: Optional logger for diagnostics.

ProfileStore(string filePath, ILogger logger)​

ProfileStore(string filePath, ILogger logger)

Creates a new profile store using a custom path.

  • Param filePath: The path to the profiles file.

  • Param logger: Optional logger for diagnostics.

Methods​

ClearCache​

void ClearCache()

Clears the cached collection, forcing a reload on next access.

Delete​

void Delete()

Deletes the profile storage file and clears the cache.

Dispose​

void Dispose()

(inherited from System.IDisposable.Dispose)

Load​

ProfileCollection Load()

Loads the profile collection from disk (synchronous).

  • Returns: The profile collection.

LoadAsync​

Task<ProfileCollection> LoadAsync(CancellationToken cancellationToken)

Loads the profile collection from disk.

  • Param cancellationToken: Cancellation token.

  • Returns: The profile collection.

Save​

void Save(ProfileCollection collection)

Saves the profile collection to disk (synchronous).

  • Param collection: The collection to save.

SaveAsync​

Task SaveAsync(ProfileCollection collection, CancellationToken cancellationToken)

Saves the profile collection to disk.

  • Param collection: The collection to save.

  • Param cancellationToken: Cancellation token.

UpdateProfileAsync​

Task<bool> UpdateProfileAsync(string profileNameOrIndex, Action<AuthProfile> updateAction, CancellationToken cancellationToken)

Updates a specific profile using an update action.

  • Param profileNameOrIndex: The name or index (including bracket notation like "[1]") of the profile to update.

  • Param updateAction: Action to apply to the profile.

  • Param cancellationToken: Cancellation token.

  • Returns: True if the profile was found and updated, false otherwise.

Properties​

FilePath​

string FilePath { get; }

Gets the path to the profiles file.

Fields​

CurrentVersion​

int CurrentVersion

Current schema version.