summaryrefslogtreecommitdiff
path: root/src/StardewModdingAPI/Framework/ModLoading/ModMetadata.cs
diff options
context:
space:
mode:
authorJesse Plamondon-Willard <github@jplamondonw.com>2017-05-16 22:57:52 -0400
committerJesse Plamondon-Willard <github@jplamondonw.com>2017-05-16 22:57:52 -0400
commitbf02c54f8bc4499052af8870e080100a4a7f05a3 (patch)
tree0b1242fa4a2c1f6465f1867b05e09c0161eb3336 /src/StardewModdingAPI/Framework/ModLoading/ModMetadata.cs
parenta0e9fa9f3e2aa47c3fa98891f757509947d871d6 (diff)
parent2d9aefebb0991b2e942241bf509eaa98f63b4963 (diff)
downloadSMAPI-bf02c54f8bc4499052af8870e080100a4a7f05a3.tar.gz
SMAPI-bf02c54f8bc4499052af8870e080100a4a7f05a3.tar.bz2
SMAPI-bf02c54f8bc4499052af8870e080100a4a7f05a3.zip
Merge branch 'feature/285-mod-dependencies' into develop
# Conflicts: # src/StardewModdingAPI/Framework/ModRegistry.cs # src/StardewModdingAPI/Program.cs
Diffstat (limited to 'src/StardewModdingAPI/Framework/ModLoading/ModMetadata.cs')
-rw-r--r--src/StardewModdingAPI/Framework/ModLoading/ModMetadata.cs19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/StardewModdingAPI/Framework/ModLoading/ModMetadata.cs b/src/StardewModdingAPI/Framework/ModLoading/ModMetadata.cs
index 1ac167dc..7b25e090 100644
--- a/src/StardewModdingAPI/Framework/ModLoading/ModMetadata.cs
+++ b/src/StardewModdingAPI/Framework/ModLoading/ModMetadata.cs
@@ -3,7 +3,7 @@
namespace StardewModdingAPI.Framework.ModLoading
{
/// <summary>Metadata for a mod.</summary>
- internal class ModMetadata
+ internal class ModMetadata : IModMetadata
{
/*********
** Accessors
@@ -20,6 +20,12 @@ namespace StardewModdingAPI.Framework.ModLoading
/// <summary>Optional metadata about a mod version that SMAPI should assume is compatible or broken, regardless of whether it detects incompatible code.</summary>
public ModCompatibility Compatibility { get; }
+ /// <summary>The metadata resolution status.</summary>
+ public ModMetadataStatus Status { get; private set; }
+
+ /// <summary>The reason the metadata is invalid, if any.</summary>
+ public string Error { get; private set; }
+
/*********
** Public methods
@@ -36,5 +42,16 @@ namespace StardewModdingAPI.Framework.ModLoading
this.Manifest = manifest;
this.Compatibility = compatibility;
}
+
+ /// <summary>Set the mod status.</summary>
+ /// <param name="status">The metadata resolution status.</param>
+ /// <param name="error">The reason the metadata is invalid, if any.</param>
+ /// <returns>Return the instance for chaining.</returns>
+ public IModMetadata SetStatus(ModMetadataStatus status, string error = null)
+ {
+ this.Status = status;
+ this.Error = error;
+ return this;
+ }
}
}