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", ". ...@@ -71,6 +71,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Article10Notifications", ".
EndProject 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}" 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 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 Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug PerformanceStats|Any CPU = Debug PerformanceStats|Any CPU Debug PerformanceStats|Any CPU = Debug PerformanceStats|Any CPU
...@@ -768,6 +774,90 @@ Global ...@@ -768,6 +774,90 @@ Global
{A684BC49-C9B3-4C0C-8D2E-A13077853EDA}.ReleaseTUG|x64.Build.0 = Release|Any CPU {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.ActiveCfg = Release|Any CPU
{A684BC49-C9B3-4C0C-8D2E-A13077853EDA}.ReleaseTUG|x86.Build.0 = 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 EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE
...@@ -791,5 +881,8 @@ Global ...@@ -791,5 +881,8 @@ Global
{7C364099-9B85-473A-8A42-BBEBE4798FF5} = {CC93EA68-F3FE-4BCB-9292-1101F94A4D09} {7C364099-9B85-473A-8A42-BBEBE4798FF5} = {CC93EA68-F3FE-4BCB-9292-1101F94A4D09}
{B673E12F-D323-4C4C-8805-9915B2C72D3D} = {73A5BF70-6168-456F-95E5-A1402BFA488C} {B673E12F-D323-4C4C-8805-9915B2C72D3D} = {73A5BF70-6168-456F-95E5-A1402BFA488C}
{760C1C5B-A767-463E-BA85-F0BCFC23A550} = {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 EndGlobalSection
EndGlobal EndGlobal
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Xml;
namespace TUGraz.VectoCore.Utils namespace TUGraz.VectoCore.Utils
{ {
...@@ -81,14 +82,25 @@ 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)) { if (!schemaFilenames.ContainsKey(type)) {
throw new Exception(string.Format("Invalid argument {0} - only use single flags", type)); throw new Exception(string.Format("Invalid argument {0} - only use single flags", type));
} }
var entry = schemaFilenames[type]; var entry = schemaFilenames[type];
var version = GetSchemaVersion(xsdType);
return string.Format(entry, string.IsNullOrWhiteSpace(version) ? "" : "." + version); 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 ...@@ -68,18 +68,6 @@ namespace TUGraz.VectoCore.Utils
// return GetVersionFromNamespaceUri(node.NamespaceURI); // 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) public static string GetVersionFromNamespaceUri(XNamespace namespaceUri)
{ {
const string versionPrefix = "v"; const string versionPrefix = "v";
......
...@@ -78,26 +78,12 @@ namespace TUGraz.VectoCore.Utils ...@@ -78,26 +78,12 @@ namespace TUGraz.VectoCore.Utils
throw new Exception("empty XML document"); 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); _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; return _valid;
} }
...@@ -115,7 +101,7 @@ namespace TUGraz.VectoCore.Utils ...@@ -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() }; var xset = new XmlSchemaSet() { XmlResolver = new XmlResourceResolver() };
...@@ -124,7 +110,7 @@ namespace TUGraz.VectoCore.Utils ...@@ -124,7 +110,7 @@ namespace TUGraz.VectoCore.Utils
continue; continue;
} }
var schemaFile = XMLDefinitions.GetSchemaFilename(entry, version); var schemaFile = XMLDefinitions.GetSchemaFilename(entry, xsdType);
if (schemaFile == null) { if (schemaFile == null) {
continue; continue;
} }
...@@ -134,7 +120,7 @@ namespace TUGraz.VectoCore.Utils ...@@ -134,7 +120,7 @@ namespace TUGraz.VectoCore.Utils
resource = RessourceHelper.LoadResourceAsStream(RessourceHelper.ResourceType.XMLSchema, schemaFile); resource = RessourceHelper.LoadResourceAsStream(RessourceHelper.ResourceType.XMLSchema, schemaFile);
} catch (Exception e) { } catch (Exception e) {
throw new Exception( 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://"); var reader = XmlReader.Create(resource, new XmlReaderSettings(), "schema://");
......
...@@ -31,7 +31,6 @@ ...@@ -31,7 +31,6 @@
using System.IO; using System.IO;
using NUnit.Framework; using NUnit.Framework;
using NUnit.Framework.Internal;
using TUGraz.VectoCommon.InputData; using TUGraz.VectoCommon.InputData;
using TUGraz.VectoCore.InputData.FileIO.JSON; using TUGraz.VectoCore.InputData.FileIO.JSON;
using TUGraz.VectoCore.Tests.Utils; 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