diff options
| author | Jesse Plamondon-Willard <github@jplamondonw.com> | 2018-08-01 11:07:29 -0400 |
|---|---|---|
| committer | Jesse Plamondon-Willard <github@jplamondonw.com> | 2018-08-01 11:07:29 -0400 |
| commit | 60b41195778af33fd609eab66d9ae3f1d1165e8f (patch) | |
| tree | 7128b906d40e94c56c34ed6058f27bc31c31a08b /src/SMAPI/Framework/IModMetadata.cs | |
| parent | b9bc1a6d17cafa0a97b46ffecda432cfc2f23b51 (diff) | |
| parent | 52cf953f685c65b2b6814e375ec9a5ffa03c440a (diff) | |
| download | SMAPI-60b41195778af33fd609eab66d9ae3f1d1165e8f.tar.gz SMAPI-60b41195778af33fd609eab66d9ae3f1d1165e8f.tar.bz2 SMAPI-60b41195778af33fd609eab66d9ae3f1d1165e8f.zip | |
Merge branch 'develop' into stable
Diffstat (limited to 'src/SMAPI/Framework/IModMetadata.cs')
| -rw-r--r-- | src/SMAPI/Framework/IModMetadata.cs | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/src/SMAPI/Framework/IModMetadata.cs b/src/SMAPI/Framework/IModMetadata.cs index d1e8eb7d..2145105b 100644 --- a/src/SMAPI/Framework/IModMetadata.cs +++ b/src/SMAPI/Framework/IModMetadata.cs @@ -1,5 +1,6 @@ -using StardewModdingAPI.Framework.ModData; using StardewModdingAPI.Framework.ModLoading; +using StardewModdingAPI.Toolkit.Framework.Clients.WebApi; +using StardewModdingAPI.Toolkit.Framework.ModData; namespace StardewModdingAPI.Framework { @@ -19,11 +20,14 @@ namespace StardewModdingAPI.Framework IManifest Manifest { get; } /// <summary>Metadata about the mod from SMAPI's internal data (if any).</summary> - ParsedModDataRecord DataRecord { get; } + ModDataRecordVersionedFields DataRecord { get; } /// <summary>The metadata resolution status.</summary> ModMetadataStatus Status { get; } + /// <summary>Indicates non-error issues with the mod.</summary> + ModWarning Warnings { get; } + /// <summary>The reason the metadata is invalid, if any.</summary> string Error { get; } @@ -42,6 +46,9 @@ namespace StardewModdingAPI.Framework /// <summary>Whether the mod is a content pack.</summary> bool IsContentPack { get; } + /// <summary>The update-check metadata for this mod (if any).</summary> + ModEntryModel UpdateCheckData { get; } + /********* ** Public methods @@ -52,6 +59,10 @@ namespace StardewModdingAPI.Framework /// <returns>Return the instance for chaining.</returns> IModMetadata SetStatus(ModMetadataStatus status, string error = null); + /// <summary>Set a warning flag for the mod.</summary> + /// <param name="warning">The warning to set.</param> + IModMetadata SetWarning(ModWarning warning); + /// <summary>Set the mod instance.</summary> /// <param name="mod">The mod instance to set.</param> IModMetadata SetMod(IMod mod); @@ -64,5 +75,18 @@ namespace StardewModdingAPI.Framework /// <summary>Set the mod-provided API instance.</summary> /// <param name="api">The mod-provided API.</param> IModMetadata SetApi(object api); + + /// <summary>Set the update-check metadata for this mod.</summary> + /// <param name="data">The update-check metadata.</param> + IModMetadata SetUpdateData(ModEntryModel data); + + /// <summary>Whether the mod manifest was loaded (regardless of whether the mod itself was loaded).</summary> + bool HasManifest(); + + /// <summary>Whether the mod has an ID (regardless of whether the ID is valid or the mod itself was loaded).</summary> + bool HasID(); + + /// <summary>Whether the mod has at least one update key set.</summary> + bool HasUpdateKeys(); } } |
