diff options
Diffstat (limited to 'Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs')
| -rw-r--r-- | Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs | 83 |
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); - } -} - |
