private void ProcessFiles(IEnumerable <ManifestInput> inputs) { foreach (ManifestInput input in inputs) { foreach (ManifestInput.InputFile inputFile in input.Files) { string fullPath = Path.Combine(_cmdLine.DistributionDirectory, inputFile.Name); if (!File.Exists(fullPath)) { if (!Directory.Exists(fullPath) && !inputFile.Ignore) { throw new ApplicationException("File in manifest not in distribution: " + inputFile.Name + " (" + fullPath + ")"); } ManifestFile directory = new ManifestFile { Ignore = inputFile.Ignore, Filename = inputFile.Name }; if (_manifest.ProductManifest != null) { _manifest.ProductManifest.Files.Add(directory); } else if (_manifest.PackageManifest != null) { _manifest.PackageManifest.Files.Add(directory); } continue; } FileVersionInfo versionInfo = FileVersionInfo.GetVersionInfo(fullPath); FileInfo info = new FileInfo(fullPath); ManifestFile file = new ManifestFile { Ignore = inputFile.Ignore, Filename = inputFile.Name, }; if (inputFile.Checksum) { file.Timestamp = info.CreationTimeUtc; file.GenerateChecksum(fullPath); file.Version = versionInfo.FileVersion; file.Copyright = versionInfo.LegalCopyright; } if (_manifest.ProductManifest != null) { _manifest.ProductManifest.Files.Add(file); // Set the default product name, based on the product name in the // common assembly if (file.Filename.ToLower().Equals("common\\clearcanvas.common.dll")) { _manifest.ProductManifest.Product.Name = versionInfo.ProductName; } } else if (_manifest.PackageManifest != null) { _manifest.PackageManifest.Files.Add(file); } } } }
private void ProcessFiles(IEnumerable<ManifestInput> inputs) { foreach (ManifestInput input in inputs) { foreach(ManifestInput.InputFile inputFile in input.Files) { string fullPath = Path.Combine(_cmdLine.DistributionDirectory, inputFile.Name); if (!File.Exists(fullPath)) { if (!Directory.Exists(fullPath) && !inputFile.Ignore) throw new ApplicationException("File in manifest not in distribution: " + inputFile.Name + " (" + fullPath +")"); ManifestFile directory = new ManifestFile { Ignore = inputFile.Ignore, Filename = inputFile.Name }; if (_manifest.ProductManifest != null) _manifest.ProductManifest.Files.Add(directory); else if (_manifest.PackageManifest != null) _manifest.PackageManifest.Files.Add(directory); continue; } FileVersionInfo versionInfo = FileVersionInfo.GetVersionInfo(fullPath); FileInfo info = new FileInfo(fullPath); ManifestFile file = new ManifestFile { Ignore = inputFile.Ignore, Filename = inputFile.Name, }; if (inputFile.Checksum) { file.Timestamp = info.CreationTimeUtc; file.GenerateChecksum(fullPath); file.Version = versionInfo.FileVersion; file.Copyright = versionInfo.LegalCopyright; } if (_manifest.ProductManifest != null) { _manifest.ProductManifest.Files.Add(file); // Set the default product name, based on the product name in the // common assembly if (file.Filename.ToLower().Equals("common\\clearcanvas.common.dll")) _manifest.ProductManifest.Product.Name = versionInfo.ProductName; } else if (_manifest.PackageManifest != null) _manifest.PackageManifest.Files.Add(file); } } }