Code development platform for open source projects from the European Union institutions :large_blue_circle: EU Login authentication by SMS has been phased out. To see alternatives please check here

Skip to content
Snippets Groups Projects
Commit c2551c99 authored by Markus Quaritsch's avatar Markus Quaritsch
Browse files

Merge pull request #763 in VECTO/vecto-sim from ~EMQUARIMA/vecto-sim:develop to develop

* commit '7e000671':
  adding furter projects to vecto solution: VectoGIT, VectoGit-Test
  refactor xml validation to use xsd type to load according schema
parents a0d6dcf2 7e000671
Branches
Tags
No related merge requests found
......@@ -71,6 +71,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Article10Notifications", ".
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VECTO_GIT", "..\STUDENTEN_PROJEKTE\Kober_VectoGIT\VECTO_GIT\VECTO_GIT\VECTO_GIT.csproj", "{A684BC49-C9B3-4C0C-8D2E-A13077853EDA}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StandaloneApplication", "..\VECTO_API\StandaloneApplication\StandaloneApplication.csproj", "{C234077C-F81E-42FA-9367-1319753678A6}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "VECTO-GIT", "VECTO-GIT", "{5DDEEEC2-743F-4395-B058-687B5773E3D2}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VECTO_GIT_TEST", "..\STUDENTEN_PROJEKTE\Kober_VectoGIT\VECTO_GIT\VECTO_GIT_TEST\VECTO_GIT_TEST.csproj", "{52430C51-892A-4D8E-9189-B6C9D09791C0}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug PerformanceStats|Any CPU = Debug PerformanceStats|Any CPU
......@@ -768,6 +774,90 @@ Global
{A684BC49-C9B3-4C0C-8D2E-A13077853EDA}.ReleaseTUG|x64.Build.0 = Release|Any CPU
{A684BC49-C9B3-4C0C-8D2E-A13077853EDA}.ReleaseTUG|x86.ActiveCfg = Release|Any CPU
{A684BC49-C9B3-4C0C-8D2E-A13077853EDA}.ReleaseTUG|x86.Build.0 = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceStats|Any CPU.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceStats|Any CPU.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceStats|x64.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceStats|x64.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceStats|x86.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceStats|x86.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceTrace|Any CPU.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceTrace|Any CPU.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceTrace|x64.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceTrace|x64.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceTrace|x86.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug PerformanceTrace|x86.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug|x64.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug|x64.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug|x86.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Debug|x86.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.DebugTUG|Any CPU.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.DebugTUG|Any CPU.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.DebugTUG|x64.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.DebugTUG|x64.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.DebugTUG|x86.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.DebugTUG|x86.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Deploy|Any CPU.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Deploy|Any CPU.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Deploy|x64.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Deploy|x64.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Deploy|x86.ActiveCfg = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Deploy|x86.Build.0 = Debug|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Release|Any CPU.Build.0 = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Release|x64.ActiveCfg = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Release|x64.Build.0 = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Release|x86.ActiveCfg = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.Release|x86.Build.0 = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.ReleaseTUG|Any CPU.ActiveCfg = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.ReleaseTUG|Any CPU.Build.0 = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.ReleaseTUG|x64.ActiveCfg = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.ReleaseTUG|x64.Build.0 = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.ReleaseTUG|x86.ActiveCfg = Release|Any CPU
{C234077C-F81E-42FA-9367-1319753678A6}.ReleaseTUG|x86.Build.0 = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceStats|Any CPU.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceStats|Any CPU.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceStats|x64.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceStats|x64.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceStats|x86.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceStats|x86.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceTrace|Any CPU.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceTrace|Any CPU.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceTrace|x64.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceTrace|x64.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceTrace|x86.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug PerformanceTrace|x86.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug|x64.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug|x64.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug|x86.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Debug|x86.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.DebugTUG|Any CPU.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.DebugTUG|Any CPU.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.DebugTUG|x64.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.DebugTUG|x64.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.DebugTUG|x86.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.DebugTUG|x86.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Deploy|Any CPU.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Deploy|Any CPU.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Deploy|x64.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Deploy|x64.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Deploy|x86.ActiveCfg = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Deploy|x86.Build.0 = Debug|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Release|Any CPU.Build.0 = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Release|x64.ActiveCfg = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Release|x64.Build.0 = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Release|x86.ActiveCfg = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.Release|x86.Build.0 = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.ReleaseTUG|Any CPU.ActiveCfg = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.ReleaseTUG|Any CPU.Build.0 = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.ReleaseTUG|x64.ActiveCfg = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.ReleaseTUG|x64.Build.0 = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.ReleaseTUG|x86.ActiveCfg = Release|Any CPU
{52430C51-892A-4D8E-9189-B6C9D09791C0}.ReleaseTUG|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
......@@ -791,5 +881,8 @@ Global
{7C364099-9B85-473A-8A42-BBEBE4798FF5} = {CC93EA68-F3FE-4BCB-9292-1101F94A4D09}
{B673E12F-D323-4C4C-8805-9915B2C72D3D} = {73A5BF70-6168-456F-95E5-A1402BFA488C}
{760C1C5B-A767-463E-BA85-F0BCFC23A550} = {73A5BF70-6168-456F-95E5-A1402BFA488C}
{A684BC49-C9B3-4C0C-8D2E-A13077853EDA} = {5DDEEEC2-743F-4395-B058-687B5773E3D2}
{C234077C-F81E-42FA-9367-1319753678A6} = {D29E62A2-CF08-469F-B29F-1B25DCB35386}
{52430C51-892A-4D8E-9189-B6C9D09791C0} = {5DDEEEC2-743F-4395-B058-687B5773E3D2}
EndGlobalSection
EndGlobal
using System;
using System.Collections.Generic;
using System.Linq;
using System.Xml;
namespace TUGraz.VectoCore.Utils
{
......@@ -81,14 +82,25 @@ namespace TUGraz.VectoCore.Utils
public static string GetSchemaFilename(XmlDocumentType type, string version)
public static string GetSchemaFilename(XmlDocumentType type, string xsdType)
{
if (!schemaFilenames.ContainsKey(type)) {
throw new Exception(string.Format("Invalid argument {0} - only use single flags", type));
}
var entry = schemaFilenames[type];
var version = GetSchemaVersion(xsdType);
return string.Format(entry, string.IsNullOrWhiteSpace(version) ? "" : "." + version);
}
public static string GetSchemaVersion(string nodeType)
{
var parts = nodeType?.Split(':');
if (parts?.Length == 2) {
return XMLHelper.GetVersionFromNamespaceUri(parts[0]);
}
return null;
}
}
}
......@@ -68,18 +68,6 @@ namespace TUGraz.VectoCore.Utils
// return GetVersionFromNamespaceUri(node.NamespaceURI);
//}
public static string GetSchemaVersion(XmlNode node)
{
var nodeType = node.Attributes?.GetNamedItem("type", "http://www.w3.org/2001/XMLSchema-instance");
if (nodeType != null) {
var parts = nodeType.InnerText.Split(':');
if (parts.Length == 2) {
return GetVersionFromNamespaceUri(nodeType.GetNamespaceOfPrefix(parts[0]));
}
}
return GetVersionFromNamespaceUri(node.NamespaceURI);
}
public static string GetVersionFromNamespaceUri(XNamespace namespaceUri)
{
const string versionPrefix = "v";
......
......@@ -78,26 +78,12 @@ namespace TUGraz.VectoCore.Utils
throw new Exception("empty XML document");
}
var version = XMLHelper.GetSchemaVersion(_doc.DocumentElement);
var xsdType = _doc.DocumentElement.Attributes?.GetNamedItem("type", "http://www.w3.org/2001/XMLSchema-instance")
?.InnerText;
_doc.Schemas = GetXMLSchema(docType, version);
_doc.Schemas = GetXMLSchema(docType, xsdType);
_doc.Validate(ValidationCallBack);
//var settings = new XmlReaderSettings();
//settings.Schemas = GetXMLSchema(docType, version);
//settings.ValidationType = ValidationType.Schema;
//settings.ValidationFlags =
// XmlSchemaValidationFlags.ReportValidationWarnings | XmlSchemaValidationFlags.AllowXmlAttributes;
//settings.ValidationEventHandler += ValidationCallBack;
//var m = new MemoryStream();
//var w = new XmlTextWriter(m, Encoding.UTF8);
//_doc.WriteTo(w);
//w.Flush();
//m.Flush();
//m.Seek(0, SeekOrigin.Begin);
//var r = new XmlTextReader(m);
//var reader = XmlReader.Create(r, settings);
//_doc = new XmlDocument();
//_doc.Load(reader);
return _valid;
}
......@@ -115,7 +101,7 @@ namespace TUGraz.VectoCore.Utils
}
}
private static XmlSchemaSet GetXMLSchema(XmlDocumentType docType, string version)
private static XmlSchemaSet GetXMLSchema(XmlDocumentType docType, string xsdType)
{
var xset = new XmlSchemaSet() { XmlResolver = new XmlResourceResolver() };
......@@ -124,7 +110,7 @@ namespace TUGraz.VectoCore.Utils
continue;
}
var schemaFile = XMLDefinitions.GetSchemaFilename(entry, version);
var schemaFile = XMLDefinitions.GetSchemaFilename(entry, xsdType);
if (schemaFile == null) {
continue;
}
......@@ -134,7 +120,7 @@ namespace TUGraz.VectoCore.Utils
resource = RessourceHelper.LoadResourceAsStream(RessourceHelper.ResourceType.XMLSchema, schemaFile);
} catch (Exception e) {
throw new Exception(
string.Format("Unknown XML schema! version: {0}, xml document type: {1} ({2})", entry, version, schemaFile), e);
string.Format("Unknown XML schema! version: {0}, xml document type: {1} ({2})", entry, xsdType, schemaFile), e);
}
var reader = XmlReader.Create(resource, new XmlReaderSettings(), "schema://");
......
......@@ -31,7 +31,6 @@
using System.IO;
using NUnit.Framework;
using NUnit.Framework.Internal;
using TUGraz.VectoCommon.InputData;
using TUGraz.VectoCore.InputData.FileIO.JSON;
using TUGraz.VectoCore.Tests.Utils;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment