Class AchievementSdkManifest
Everything one storefront needs before its achievement gateway stops being a template: the type that proves the SDK is on disk, the define that compiles the real branch, and where the SDK comes from when it is not here.
Inherited Members
Namespace: Serenity.Achievements.Infrastructure.Editor.Platforms
Assembly: Serenity.UnityAchievements.Infrastructure.Editor.dll
Syntax
public sealed class AchievementSdkManifest
Remarks
The define belongs here because setting it is the dangerous half of the transaction — see AchievementSdkInstallationState — so "install, verify, then define" is checkable in that order from one record rather than from knowledge a reader has to already have.
Presence is judged by a marker TYPE rather than by a file on disk, unlike the database drivers' manifest. A storefront SDK arrives as a Unity package, a .unitypackage or a platform module, and lands in a different folder each time; the one thing every route has in common is that afterwards a known type is compiled into the project. Two of the four have no marker at all: a console SDK arrives with a Unity platform module, and the honest answer for those is "cannot be verified from here", not a guess.
Constructors
AchievementSdkManifest(AchievementPlatformKind, string, string, bool, string, AchievementSdkAcquisition)
Describes one storefront's SDK requirements.
Declaration
public AchievementSdkManifest(AchievementPlatformKind kind, string displayName, string scriptingDefine, bool isDefineManagedByUnity, string markerTypeName, AchievementSdkAcquisition acquisition)
Parameters
| Type | Name | Description |
|---|---|---|
| AchievementPlatformKind | kind | Which storefront this describes. |
| string | displayName | The storefront's name as the reader sees it. |
| string | scriptingDefine | The define that compiles the real gateway. |
| bool | isDefineManagedByUnity | Whether Unity owns the define. |
| string | markerTypeName | A type that exists only when the SDK does, or |
| AchievementSdkAcquisition | acquisition | Where the SDK comes from, and whether it can simply be installed. |
Properties
Acquisition
Declaration
public AchievementSdkAcquisition Acquisition { get; }
Property Value
| Type | Description |
|---|---|
| AchievementSdkAcquisition | Where the SDK comes from, and whether it can simply be installed. |
DisplayName
Declaration
public string DisplayName { get; }
Property Value
| Type | Description |
|---|---|
| string | The storefront's name as the reader sees it in the window. |
IsDefineManagedByUnity
Declaration
public bool IsDefineManagedByUnity { get; }
Property Value
| Type | Description |
|---|---|
| bool | Whether Unity owns the define. When true, the define appears because a platform module is installed and selected, and the doctor never offers to add or remove it. |
IsPresenceVerifiable
Declaration
public bool IsPresenceVerifiable { get; }
Property Value
| Type | Description |
|---|---|
| bool | Whether this project can be asked whether the SDK is present. |
Kind
Declaration
public AchievementPlatformKind Kind { get; }
Property Value
| Type | Description |
|---|---|
| AchievementPlatformKind | Which storefront this describes. |
MarkerTypeName
Declaration
public string MarkerTypeName { get; }
Property Value
| Type | Description |
|---|---|
| string | Full name of a type that exists only when the SDK is compiled into the project, or
|
ScriptingDefine
Declaration
public string ScriptingDefine { get; }
Property Value
| Type | Description |
|---|---|
| string | The scripting define that compiles this platform's real gateway. |
Methods
ToString()
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| string |