logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class AchievementStorefrontSnapshot

    Everything one pull read back from a storefront's achievement list at one point in time.

    Inheritance
    object
    AchievementStorefrontSnapshot
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    Namespace: Serenity.Achievements.Application.Sync
    Assembly: Serenity.Achievements.Application.dll
    Syntax
    public sealed class AchievementStorefrontSnapshot
    Remarks

    Records come out ordered by ApiName (ordinal), so two pulls of the same storefront state compare and diff deterministically regardless of the order the platform's API happened to return them in — the same discipline AchievementManifestExporter already applies to manifest rows.

    Constructors

    AchievementStorefrontSnapshot(AchievementPlatformKind, string, DateTime, IReadOnlyList<AchievementSyncRecord>, IReadOnlyList<string>)

    Creates a snapshot.

    Declaration
    public AchievementStorefrontSnapshot(AchievementPlatformKind platform, string appId, DateTime fetchedAtUtc, IReadOnlyList<AchievementSyncRecord> records, IReadOnlyList<string> notices)
    Parameters
    Type Name Description
    AchievementPlatformKind platform

    The storefront this snapshot was read from.

    string appId

    The storefront's application id this snapshot was read for.

    DateTime fetchedAtUtc

    When the pull that produced this snapshot ran.

    IReadOnlyList<AchievementSyncRecord> records

    The achievements the pull read back. May be null.

    IReadOnlyList<string> notices

    Non-fatal notices the pull produced. May be null.

    Properties

    AppId

    Declaration
    public string AppId { get; }
    Property Value
    Type Description
    string

    The storefront's application id this snapshot was read for.

    FetchedAtUtc

    Declaration
    public DateTime FetchedAtUtc { get; }
    Property Value
    Type Description
    DateTime

    When the pull that produced this snapshot ran.

    Notices

    Declaration
    public IReadOnlyList<string> Notices { get; }
    Property Value
    Type Description
    IReadOnlyList<string>

    Non-fatal notices the pull produced (for example fields it could not read).

    Platform

    Declaration
    public AchievementPlatformKind Platform { get; }
    Property Value
    Type Description
    AchievementPlatformKind

    The storefront this snapshot was read from.

    Records

    Declaration
    public IReadOnlyList<AchievementSyncRecord> Records { get; }
    Property Value
    Type Description
    IReadOnlyList<AchievementSyncRecord>

    The achievements the pull read back, ordered by ApiName (ordinal).

    In this article
    © 2026 Serenity. All Rights Reserved