Class AchievementManifestExportReport
What one manifest export produced: the text to write, how many achievements reached it, and which ones did not and why.
Inherited Members
Namespace: Serenity.Achievements.Application.Authoring
Assembly: Serenity.Achievements.Application.dll
Syntax
public sealed class AchievementManifestExportReport
Remarks
The skipped achievements are the reason this is a report rather than a string. A per-storefront sheet only carries the achievements that name an identifier for that storefront and are fit to publish, so an export can silently be half the project — and "37 rows, 12 skipped, here is which and why" is the difference between an author noticing that and uploading it.
Constructors
AchievementManifestExportReport(string, int, IReadOnlyList<AchievementManifestSkip>)
Creates a report.
Declaration
public AchievementManifestExportReport(string text, int exportedCount, IReadOnlyList<AchievementManifestSkip> skippedRows)
Parameters
| Type | Name | Description |
|---|---|---|
| string | text | The manifest text. |
| int | exportedCount | How many achievements are in it. |
| IReadOnlyList<AchievementManifestSkip> | skippedRows | The achievements left out, and why. May be null. |
Fields
AuthoringErrorsReason
Why an achievement the authoring rules reject was left out.
Declaration
public const string AuthoringErrorsReason = "authoring errors"
Field Value
| Type | Description |
|---|---|
| string |
MissingIdPlaceholder
What a skipped achievement is called when it has no id to be called by.
Declaration
public const string MissingIdPlaceholder = "(no id)"
Field Value
| Type | Description |
|---|---|
| string |
NoIdentifierReason
Why an achievement that names no identifier for the storefront was left out.
Declaration
public const string NoIdentifierReason = "no identifier for this storefront"
Field Value
| Type | Description |
|---|---|
| string |
NoTrophyGradeReason
Why an achievement with no trophy tier was left out of a PlayStation manifest.
Declaration
public const string NoTrophyGradeReason = "no trophy grade"
Field Value
| Type | Description |
|---|---|
| string |
Properties
ExportedCount
Declaration
public int ExportedCount { get; }
Property Value
| Type | Description |
|---|---|
| int | How many achievements the manifest carries. |
HasSkippedAchievements
Declaration
public bool HasSkippedAchievements { get; }
Property Value
| Type | Description |
|---|---|
| bool | Whether any achievement was left out. |
SkippedRows
Declaration
public IReadOnlyList<AchievementManifestSkip> SkippedRows { get; }
Property Value
| Type | Description |
|---|---|
| IReadOnlyList<AchievementManifestSkip> | The achievements the export left out, in the order they were skipped. |
Text
Declaration
public string Text { get; }
Property Value
| Type | Description |
|---|---|
| string | The manifest text, ready to be written to a file. |
Methods
Describe()
Says what the export did, in one sentence an author can read in a status line.
Declaration
public string Describe()
Returns
| Type | Description |
|---|---|
| string | The sentence. |
Remarks
Grouped by reason rather than listed one per line, because an author reading a status line wants to know which of the three fixes to go and make, and a flat list of forty ids says nothing at all.
SkippedIds()
The ids of the achievements left out, without their reasons.
Declaration
public IReadOnlyList<string> SkippedIds()
Returns
| Type | Description |
|---|---|
| IReadOnlyList<string> | The ids, in the order they were skipped. |