diff --git a/CHANGELIST.md b/CHANGELIST.md
index 18b8314b..b50c74bf 100644
--- a/CHANGELIST.md
+++ b/CHANGELIST.md
@@ -126,6 +126,7 @@
- Slight cleanup of InfoTool
- Move ProtectionTool to Frontend
- Move ToRedumper* methods to Options
+- Move ToMediaType to OptionsLoader
### 3.1.9a (2024-05-21)
diff --git a/MPF.Core/EnumExtensions.cs b/MPF.Core/EnumExtensions.cs
index 9c130a52..b4e122ca 100644
--- a/MPF.Core/EnumExtensions.cs
+++ b/MPF.Core/EnumExtensions.cs
@@ -172,149 +172,6 @@ namespace MPF.Core
};
}
- ///
- /// Get the MediaType enum value for a given string
- ///
- /// String value to convert
- /// MediaType represented by the string, if possible
- public static MediaType ToMediaType(string type)
- {
- return (type.ToLowerInvariant()) switch
- {
- #region Punched Media
-
- "aperture"
- or "aperturecard"
- or "aperture card" => MediaType.ApertureCard,
- "jacquardloom"
- or "jacquardloomcard"
- or "jacquard loom card" => MediaType.JacquardLoomCard,
- "magneticstripe"
- or "magneticstripecard"
- or "magnetic stripe card" => MediaType.MagneticStripeCard,
- "opticalphone"
- or "opticalphonecard"
- or "optical phonecard" => MediaType.OpticalPhonecard,
- "punchcard"
- or "punchedcard"
- or "punched card" => MediaType.PunchedCard,
- "punchtape"
- or "punchedtape"
- or "punched tape" => MediaType.PunchedTape,
-
- #endregion
-
- #region Tape
-
- "openreel"
- or "openreeltape"
- or "open reel tape" => MediaType.OpenReel,
- "datacart"
- or "datacartridge"
- or "datatapecartridge"
- or "data tape cartridge" => MediaType.DataCartridge,
- "cassette"
- or "cassettetape"
- or "cassette tape" => MediaType.Cassette,
-
- #endregion
-
- #region Disc / Disc
-
- "bd"
- or "bdrom"
- or "bd-rom"
- or "bluray" => MediaType.BluRay,
- "cd"
- or "cdrom"
- or "cd-rom" => MediaType.CDROM,
- "dvd"
- or "dvd5"
- or "dvd-5"
- or "dvd9"
- or "dvd-9"
- or "dvdrom"
- or "dvd-rom" => MediaType.DVD,
- "fd"
- or "floppy"
- or "floppydisk"
- or "floppy disk"
- or "floppy diskette" => MediaType.FloppyDisk,
- "floptical" => MediaType.Floptical,
- "gd"
- or "gdrom"
- or "gd-rom" => MediaType.GDROM,
- "hddvd"
- or "hd-dvd"
- or "hddvdrom"
- or "hd-dvd-rom" => MediaType.HDDVD,
- "hdd"
- or "harddisk"
- or "hard disk" => MediaType.HardDisk,
- "bernoullidisk"
- or "iomegabernoullidisk"
- or "bernoulli disk"
- or "iomega bernoulli disk" => MediaType.IomegaBernoulliDisk,
- "jaz"
- or "iomegajaz"
- or "iomega jaz" => MediaType.IomegaJaz,
- "zip"
- or "zipdisk"
- or "iomegazip"
- or "iomega zip" => MediaType.IomegaZip,
- "ldrom"
- or "lvrom"
- or "ld-rom"
- or "lv-rom"
- or "laserdisc"
- or "laservision"
- or "ld-rom / lv-rom" => MediaType.LaserDisc,
- "64dd"
- or "n64dd"
- or "64dddisk"
- or "n64dddisk"
- or "64dd disk"
- or "n64dd disk" => MediaType.Nintendo64DD,
- "fds"
- or "famicom"
- or "nfds"
- or "nintendofamicom"
- or "famicomdisksystem"
- or "famicom disk system"
- or "famicom disk system disk" => MediaType.NintendoFamicomDiskSystem,
- "gc"
- or "gamecube"
- or "nintendogamecube"
- or "nintendo gamecube"
- or "gamecube disc"
- or "gamecube game disc" => MediaType.NintendoGameCubeGameDisc,
- "wii"
- or "nintendowii"
- or "nintendo wii"
- or "nintendo wii disc"
- or "wii optical disc" => MediaType.NintendoWiiOpticalDisc,
- "wiiu"
- or "nintendowiiu"
- or "nintendo wiiu"
- or "nintendo wiiu disc"
- or "wiiu optical disc"
- or "wii u optical disc" => MediaType.NintendoWiiUOpticalDisc,
- "umd" => MediaType.UMD,
-
- #endregion
-
- // Unsorted Formats
- "cartridge" => MediaType.Cartridge,
- "ced"
- or "rcaced"
- or "rca ced"
- or "videodisc"
- or "rca videodisc" => MediaType.CED,
-
- _ => MediaType.NONE,
- };
- }
-
#endregion
#region Enum Helpers
diff --git a/MPF.Frontend/OptionsLoader.cs b/MPF.Frontend/OptionsLoader.cs
index e205455c..46e5b9b2 100644
--- a/MPF.Frontend/OptionsLoader.cs
+++ b/MPF.Frontend/OptionsLoader.cs
@@ -80,7 +80,7 @@ namespace MPF.Frontend
return (false, MediaType.NONE, null, "Invalid number of arguments");
// Check the MediaType
- var mediaType = EnumExtensions.ToMediaType(args[0].Trim('"'));
+ var mediaType = ToMediaType(args[0].Trim('"'));
if (mediaType == MediaType.NONE)
return (false, MediaType.NONE, null, $"{args[0]} is not a recognized media type");
@@ -257,6 +257,149 @@ namespace MPF.Frontend
return supportedArguments;
}
+ ///
+ /// Get the MediaType enum value for a given string
+ ///
+ /// String value to convert
+ /// MediaType represented by the string, if possible
+ private static MediaType ToMediaType(string type)
+ {
+ return (type.ToLowerInvariant()) switch
+ {
+ #region Punched Media
+
+ "aperture"
+ or "aperturecard"
+ or "aperture card" => MediaType.ApertureCard,
+ "jacquardloom"
+ or "jacquardloomcard"
+ or "jacquard loom card" => MediaType.JacquardLoomCard,
+ "magneticstripe"
+ or "magneticstripecard"
+ or "magnetic stripe card" => MediaType.MagneticStripeCard,
+ "opticalphone"
+ or "opticalphonecard"
+ or "optical phonecard" => MediaType.OpticalPhonecard,
+ "punchcard"
+ or "punchedcard"
+ or "punched card" => MediaType.PunchedCard,
+ "punchtape"
+ or "punchedtape"
+ or "punched tape" => MediaType.PunchedTape,
+
+ #endregion
+
+ #region Tape
+
+ "openreel"
+ or "openreeltape"
+ or "open reel tape" => MediaType.OpenReel,
+ "datacart"
+ or "datacartridge"
+ or "datatapecartridge"
+ or "data tape cartridge" => MediaType.DataCartridge,
+ "cassette"
+ or "cassettetape"
+ or "cassette tape" => MediaType.Cassette,
+
+ #endregion
+
+ #region Disc / Disc
+
+ "bd"
+ or "bdrom"
+ or "bd-rom"
+ or "bluray" => MediaType.BluRay,
+ "cd"
+ or "cdrom"
+ or "cd-rom" => MediaType.CDROM,
+ "dvd"
+ or "dvd5"
+ or "dvd-5"
+ or "dvd9"
+ or "dvd-9"
+ or "dvdrom"
+ or "dvd-rom" => MediaType.DVD,
+ "fd"
+ or "floppy"
+ or "floppydisk"
+ or "floppy disk"
+ or "floppy diskette" => MediaType.FloppyDisk,
+ "floptical" => MediaType.Floptical,
+ "gd"
+ or "gdrom"
+ or "gd-rom" => MediaType.GDROM,
+ "hddvd"
+ or "hd-dvd"
+ or "hddvdrom"
+ or "hd-dvd-rom" => MediaType.HDDVD,
+ "hdd"
+ or "harddisk"
+ or "hard disk" => MediaType.HardDisk,
+ "bernoullidisk"
+ or "iomegabernoullidisk"
+ or "bernoulli disk"
+ or "iomega bernoulli disk" => MediaType.IomegaBernoulliDisk,
+ "jaz"
+ or "iomegajaz"
+ or "iomega jaz" => MediaType.IomegaJaz,
+ "zip"
+ or "zipdisk"
+ or "iomegazip"
+ or "iomega zip" => MediaType.IomegaZip,
+ "ldrom"
+ or "lvrom"
+ or "ld-rom"
+ or "lv-rom"
+ or "laserdisc"
+ or "laservision"
+ or "ld-rom / lv-rom" => MediaType.LaserDisc,
+ "64dd"
+ or "n64dd"
+ or "64dddisk"
+ or "n64dddisk"
+ or "64dd disk"
+ or "n64dd disk" => MediaType.Nintendo64DD,
+ "fds"
+ or "famicom"
+ or "nfds"
+ or "nintendofamicom"
+ or "famicomdisksystem"
+ or "famicom disk system"
+ or "famicom disk system disk" => MediaType.NintendoFamicomDiskSystem,
+ "gc"
+ or "gamecube"
+ or "nintendogamecube"
+ or "nintendo gamecube"
+ or "gamecube disc"
+ or "gamecube game disc" => MediaType.NintendoGameCubeGameDisc,
+ "wii"
+ or "nintendowii"
+ or "nintendo wii"
+ or "nintendo wii disc"
+ or "wii optical disc" => MediaType.NintendoWiiOpticalDisc,
+ "wiiu"
+ or "nintendowiiu"
+ or "nintendo wiiu"
+ or "nintendo wiiu disc"
+ or "wiiu optical disc"
+ or "wii u optical disc" => MediaType.NintendoWiiUOpticalDisc,
+ "umd" => MediaType.UMD,
+
+ #endregion
+
+ // Unsorted Formats
+ "cartridge" => MediaType.Cartridge,
+ "ced"
+ or "rcaced"
+ or "rca ced"
+ or "videodisc"
+ or "rca videodisc" => MediaType.CED,
+
+ _ => MediaType.NONE,
+ };
+ }
+
#endregion
#region Configuration