summaryrefslogtreecommitdiff
path: root/src/SMAPI.Web/Framework/Clients
diff options
context:
space:
mode:
Diffstat (limited to 'src/SMAPI.Web/Framework/Clients')
-rw-r--r--src/SMAPI.Web/Framework/Clients/GenericModDownload.cs14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/SMAPI.Web/Framework/Clients/GenericModDownload.cs b/src/SMAPI.Web/Framework/Clients/GenericModDownload.cs
index 548f17c3..b37e5cda 100644
--- a/src/SMAPI.Web/Framework/Clients/GenericModDownload.cs
+++ b/src/SMAPI.Web/Framework/Clients/GenericModDownload.cs
@@ -1,3 +1,5 @@
+using System;
+
namespace StardewModdingAPI.Web.Framework.Clients
{
/// <summary>Generic metadata about a file download on a mod page.</summary>
@@ -29,5 +31,17 @@ namespace StardewModdingAPI.Web.Framework.Clients
this.Description = description;
this.Version = version;
}
+
+ /// <summary>
+ /// Return true if the subkey matches this download. A subkey matches if it appears as
+ /// a substring in the name or description.
+ /// </summary>
+ /// <param name="subkey">the subkey</param>
+ /// <returns><c>true</c> if <paramref name="subkey"/> matches this download, otherwise <c>false</c></returns>
+ /// <exception cref="System.NotImplementedException"></exception>
+ public bool MatchesSubkey(string subkey) {
+ return this.Name.Contains(subkey, StringComparison.OrdinalIgnoreCase) == true
+ || this.Description?.Contains(subkey, StringComparison.OrdinalIgnoreCase) == true;
+ }
}
}