aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs')
-rw-r--r--Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs83
1 files changed, 0 insertions, 83 deletions
diff --git a/Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs b/Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs
deleted file mode 100644
index 8c66b1c12..000000000
--- a/Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs
+++ /dev/null
@@ -1,83 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Tango.PMR.FirmwareUpgrade;
-
-public static class VersionPackageDescriptorExtensions
-{
- /// <summary>
- /// Throws exception if the tfp package is invalid.
- /// </summary>
- /// <param name="descriptor">The descriptor.</param>
- /// <exception cref="InvalidDataException">
- /// TFP package contains multiple MCU files.
- /// or
- /// TFP package MCU does specify any version.
- /// or
- /// </exception>
- public static void Validate(this VersionPackageDescriptor descriptor)
- {
- if (descriptor.FileDescriptors.Where(x => x.Destination == VersionFileDestination.Mcu).Count() > 1)
- {
- throw new InvalidDataException("TFP package contains multiple MCU files.");
- }
-
- if (descriptor.FileDescriptors.GroupBy(x => x.FileName).Any(x => x.Count() > 1))
- {
- throw new InvalidDataException("The TPF package cannot contain duplicate file names.");
- }
-
- foreach (var item in descriptor.FileDescriptors)
- {
- try
- {
- Version.Parse(item.Version);
- }
- catch
- {
- throw new InvalidDataException($"Invalid version ({item.Version}) for file '{item.FileName}'.");
- }
- }
- }
-
- /// <summary>
- /// Gets the MCU version.
- /// </summary>
- /// <param name="descriptor">The descriptor.</param>
- /// <returns></returns>
- public static Version GetMcuVersion(this VersionPackageDescriptor descriptor)
- {
- descriptor.Validate();
-
- var mcuFile = descriptor.FileDescriptors.SingleOrDefault(x => x.Destination == VersionFileDestination.Mcu);
-
- if (mcuFile == null)
- {
- throw new FileNotFoundException("Could not retrieve TFP package version. MCU file not found.");
- }
-
- return Version.Parse(mcuFile.Version);
- }
-
- /// <summary>
- /// Determines whether this package contains an MCU file.
- /// </summary>
- /// <param name="descriptor">The descriptor.</param>
- public static bool ContainsMcu(this VersionPackageDescriptor descriptor)
- {
- return descriptor.FileDescriptors.Any(x => x.Destination == VersionFileDestination.Mcu);
- }
-
- /// <summary>
- /// Determines whether this package contains none MCU files.
- /// </summary>
- /// <param name="descriptor">The descriptor.</param>
- public static bool ContainsNoneMcu(this VersionPackageDescriptor descriptor)
- {
- return descriptor.FileDescriptors.Any(x => x.Destination != VersionFileDestination.Mcu);
- }
-}
-