From d161591f003600a2502d4a2bae18a848a9a62c5a Mon Sep 17 00:00:00 2001 From: glopes Date: Tue, 1 Oct 2019 19:56:33 +0100 Subject: [PATCH] Updated dependency inspector to use the new XML metadata format. --- Bonsai/DependencyInspector.cs | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/Bonsai/DependencyInspector.cs b/Bonsai/DependencyInspector.cs index b1ff81289..0a0b7a249 100644 --- a/Bonsai/DependencyInspector.cs +++ b/Bonsai/DependencyInspector.cs @@ -63,7 +63,9 @@ Configuration.PackageReference[] GetWorkflowPackageDependencies(string[] fileNam var assemblies = new HashSet(); foreach (var path in fileNames) { - using (var reader = XmlReader.Create(path)) + var metadata = WorkflowBuilder.ReadMetadata(path); + using (var markupReader = new StringReader(metadata.WorkflowMarkup)) + using (var reader = XmlReader.Create(markupReader)) { reader.ReadToFollowing(WorkflowElementName); using (var workflowReader = reader.ReadSubtree()) @@ -87,22 +89,11 @@ Configuration.PackageReference[] GetWorkflowPackageDependencies(string[] fileNam } } } - - reader.ReadToFollowing(ExtensionTypeElementName); - reader.ReadStartElement(); - - assemblies.Add(typeof(WorkflowBuilder).Assembly); - while (reader.ReadToNextSibling(TypeElementName)) - { - var typeName = reader.ReadElementString(); - var type = Type.GetType(typeName, false); - if (type != null) - { - assemblies.Add(type.Assembly); - } - } } + assemblies.Add(typeof(WorkflowBuilder).Assembly); + assemblies.AddRange(metadata.GetExtensionTypes().Select(type => type.Assembly)); + var layoutPath = Path.ChangeExtension(path, BonsaiExtension + LayoutExtension); if (File.Exists(layoutPath)) {