From a0e5e1dbcecdb0d97be7d8adc1fc0948b2e316fe Mon Sep 17 00:00:00 2001 From: Natalia Portillo Date: Tue, 30 May 2017 21:33:35 +0100 Subject: [PATCH] Refactor: Create XML version information from a central point. --- DiscImageChef.Core/Devices/Dumping/SCSI.cs | 25 ++------- DiscImageChef.Core/DiscImageChef.Core.csproj | 1 + DiscImageChef.Core/Version.cs | 56 ++++++++++++++++++++ 3 files changed, 62 insertions(+), 20 deletions(-) create mode 100644 DiscImageChef.Core/Version.cs diff --git a/DiscImageChef.Core/Devices/Dumping/SCSI.cs b/DiscImageChef.Core/Devices/Dumping/SCSI.cs index 0082e5c6a..4acd994d7 100644 --- a/DiscImageChef.Core/Devices/Dumping/SCSI.cs +++ b/DiscImageChef.Core/Devices/Dumping/SCSI.cs @@ -621,10 +621,7 @@ namespace DiscImageChef.Core.Devices.Dumping sidecar.BlockMedia[0].DumpHardwareArray[0].Model = dev.Model; sidecar.BlockMedia[0].DumpHardwareArray[0].Revision = dev.Revision; sidecar.BlockMedia[0].DumpHardwareArray[0].Serial = dev.Serial; - sidecar.BlockMedia[0].DumpHardwareArray[0].Software = new SoftwareType(); - sidecar.BlockMedia[0].DumpHardwareArray[0].Software.Name = "DiscImageChef"; - sidecar.BlockMedia[0].DumpHardwareArray[0].Software.OperatingSystem = dev.PlatformID.ToString(); - sidecar.BlockMedia[0].DumpHardwareArray[0].Software.Version = typeof(SCSI).Assembly.GetName().Version.ToString(); + sidecar.BlockMedia[0].DumpHardwareArray[0].Software = Version.GetSoftwareType(dev.PlatformID); sidecar.BlockMedia[0].TapeInformation = partitions.ToArray(); if(!aborted) @@ -1831,10 +1828,7 @@ namespace DiscImageChef.Core.Devices.Dumping sidecar.OpticalDisc[0].DumpHardwareArray[0].Manufacturer = dev.Manufacturer; sidecar.OpticalDisc[0].DumpHardwareArray[0].Model = dev.Model; sidecar.OpticalDisc[0].DumpHardwareArray[0].Revision = dev.Revision; - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software = new SoftwareType(); - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software.Name = "DiscImageChef"; - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software.OperatingSystem = dev.PlatformID.ToString(); - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software.Version = typeof(SCSI).Assembly.GetName().Version.ToString(); + sidecar.OpticalDisc[0].DumpHardwareArray[0].Software = Version.GetSoftwareType(dev.PlatformID); sidecar.OpticalDisc[0].Image = new ImageType(); sidecar.OpticalDisc[0].Image.format = "Raw disk image (sector by sector copy)"; sidecar.OpticalDisc[0].Image.Value = outputPrefix + ".bin"; @@ -2538,10 +2532,7 @@ namespace DiscImageChef.Core.Devices.Dumping sidecar.OpticalDisc[0].DumpHardwareArray[0].Manufacturer = dev.Manufacturer; sidecar.OpticalDisc[0].DumpHardwareArray[0].Model = dev.Model; sidecar.OpticalDisc[0].DumpHardwareArray[0].Revision = dev.Revision; - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software = new SoftwareType(); - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software.Name = "DiscImageChef"; - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software.OperatingSystem = dev.PlatformID.ToString(); - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software.Version = typeof(SCSI).Assembly.GetName().Version.ToString(); + sidecar.OpticalDisc[0].DumpHardwareArray[0].Software = Version.GetSoftwareType(dev.PlatformID); sidecar.OpticalDisc[0].Image = new ImageType(); sidecar.OpticalDisc[0].Image.format = "Raw disk image (sector by sector copy)"; sidecar.OpticalDisc[0].Image.Value = outputPrefix + ".bin"; @@ -3009,10 +3000,7 @@ namespace DiscImageChef.Core.Devices.Dumping sidecar.OpticalDisc[0].DumpHardwareArray[0].Manufacturer = dev.Manufacturer; sidecar.OpticalDisc[0].DumpHardwareArray[0].Model = dev.Model; sidecar.OpticalDisc[0].DumpHardwareArray[0].Revision = dev.Revision; - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software = new SoftwareType(); - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software.Name = "DiscImageChef"; - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software.OperatingSystem = dev.PlatformID.ToString(); - sidecar.OpticalDisc[0].DumpHardwareArray[0].Software.Version = typeof(SCSI).Assembly.GetName().Version.ToString(); + sidecar.OpticalDisc[0].DumpHardwareArray[0].Software = Version.GetSoftwareType(dev.PlatformID); sidecar.OpticalDisc[0].Image = new ImageType(); sidecar.OpticalDisc[0].Image.format = "Raw disk image (sector by sector copy)"; sidecar.OpticalDisc[0].Image.Value = outputPrefix + ".bin"; @@ -3123,10 +3111,7 @@ namespace DiscImageChef.Core.Devices.Dumping sidecar.BlockMedia[0].DumpHardwareArray[0].Manufacturer = dev.Manufacturer; sidecar.BlockMedia[0].DumpHardwareArray[0].Model = dev.Model; sidecar.BlockMedia[0].DumpHardwareArray[0].Revision = dev.Revision; - sidecar.BlockMedia[0].DumpHardwareArray[0].Software = new SoftwareType(); - sidecar.BlockMedia[0].DumpHardwareArray[0].Software.Name = "DiscImageChef"; - sidecar.BlockMedia[0].DumpHardwareArray[0].Software.OperatingSystem = dev.PlatformID.ToString(); - sidecar.BlockMedia[0].DumpHardwareArray[0].Software.Version = typeof(SCSI).Assembly.GetName().Version.ToString(); + sidecar.BlockMedia[0].DumpHardwareArray[0].Software = Version.GetSoftwareType(dev.PlatformID); } } } diff --git a/DiscImageChef.Core/DiscImageChef.Core.csproj b/DiscImageChef.Core/DiscImageChef.Core.csproj index dd3d2fc46..efa1ec683 100644 --- a/DiscImageChef.Core/DiscImageChef.Core.csproj +++ b/DiscImageChef.Core/DiscImageChef.Core.csproj @@ -72,6 +72,7 @@ + diff --git a/DiscImageChef.Core/Version.cs b/DiscImageChef.Core/Version.cs new file mode 100644 index 000000000..378b2bbd5 --- /dev/null +++ b/DiscImageChef.Core/Version.cs @@ -0,0 +1,56 @@ +// /*************************************************************************** +// The Disc Image Chef +// ---------------------------------------------------------------------------- +// +// Filename : Version.cs +// Version : 1.0 +// Author(s) : Natalia Portillo +// +// Component : Component +// +// Revision : $Revision$ +// Last change by : $Author$ +// Date : $Date$ +// +// --[ Description ] ---------------------------------------------------------- +// +// Description +// +// --[ License ] -------------------------------------------------------------- +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// ---------------------------------------------------------------------------- +// Copyright (C) 2011-2015 Claunia.com +// ****************************************************************************/ +// //$Id$ + +using DiscImageChef.Interop; +using Schemas; + +namespace DiscImageChef.Core +{ + public static class Version + { + public static SoftwareType GetSoftwareType(PlatformID platform) + { + return new SoftwareType + { + Name = "DiscImageChef", + OperatingSystem = platform.ToString(), + Version = typeof(Version).Assembly.GetName().Version.ToString() + }; + } + } +}