From 34038a2ce913f202fd2af079edc397d0be269815 Mon Sep 17 00:00:00 2001 From: Adam Bem Date: Thu, 11 May 2023 15:23:54 +0200 Subject: [PATCH 1/2] Tools java backend now uses interfaces for engine classes (solves #167) (#179) Co-authored-by: Adam Bem Reviewed-on: https://gitea.release11.com/R11/release11-tools/pulls/179 Reviewed-by: Mikolaj Widla --- .../java/com/r11/tools/SparkApplication.java | 14 +++++++++---- .../controller/ProcessorInfoController.java | 11 +++++++--- .../r11/tools/controller/XPathController.java | 20 ++++++++++++------- .../r11/tools/controller/XsdController.java | 14 +++++++++---- .../r11/tools/controller/XsltController.java | 16 ++++++++++----- .../main/java/com/r11/tools/xml/Saxon.java | 13 ++++++++---- .../main/java/com/r11/tools/xml/Xalan.java | 12 +++++------ .../java/com/r11/tools/xml/XmlEngine.java | 12 +++++++++++ 8 files changed, 79 insertions(+), 33 deletions(-) create mode 100644 Backend/tools-services/src/main/java/com/r11/tools/xml/XmlEngine.java diff --git a/Backend/tools-services/src/main/java/com/r11/tools/SparkApplication.java b/Backend/tools-services/src/main/java/com/r11/tools/SparkApplication.java index cee98f2..e1c0c96 100644 --- a/Backend/tools-services/src/main/java/com/r11/tools/SparkApplication.java +++ b/Backend/tools-services/src/main/java/com/r11/tools/SparkApplication.java @@ -8,6 +8,9 @@ import com.r11.tools.controller.XPathController; import com.r11.tools.controller.XsdController; import com.r11.tools.controller.XsltController; import com.r11.tools.controller.internal.RestControllerRegistry; +import com.r11.tools.xml.Saxon; +import com.r11.tools.xml.Xalan; +import com.r11.tools.xml.XmlEngine; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import spark.Spark; @@ -35,12 +38,15 @@ public class SparkApplication { Gson jsongson = new GsonBuilder() .disableHtmlEscaping() .create(); + XmlEngine saxon = new Saxon(); + XmlEngine xalan = new Xalan(); + RestControllerRegistry registry = new RestControllerRegistry(); - registry.registerController(new ProcessorInfoController(logger)); - registry.registerController(new XsdController(gson, logger)); - registry.registerController(new XPathController(gson, logger)); - registry.registerController(new XsltController(gson, logger)); + registry.registerController(new ProcessorInfoController(logger, saxon, xalan)); + registry.registerController(new XsdController(gson, logger, saxon, xalan)); + registry.registerController(new XPathController(gson, logger, saxon, xalan)); + registry.registerController(new XsltController(gson, logger, saxon, xalan)); registry.registerController(new JsonController(gson, jsongson, logger)); registry.register(); diff --git a/Backend/tools-services/src/main/java/com/r11/tools/controller/ProcessorInfoController.java b/Backend/tools-services/src/main/java/com/r11/tools/controller/ProcessorInfoController.java index 2a8333c..a926345 100644 --- a/Backend/tools-services/src/main/java/com/r11/tools/controller/ProcessorInfoController.java +++ b/Backend/tools-services/src/main/java/com/r11/tools/controller/ProcessorInfoController.java @@ -5,6 +5,7 @@ import com.r11.tools.controller.internal.HandlerType; import com.r11.tools.controller.internal.RestController; import com.r11.tools.controller.internal.ScopedControllerManifest; import com.r11.tools.xml.Saxon; +import com.r11.tools.xml.XmlEngine; import org.apache.logging.log4j.Logger; import spark.Request; import spark.Response; @@ -13,9 +14,13 @@ import spark.Response; public class ProcessorInfoController implements RestController { private final Logger logger; + private final XmlEngine saxon; + private final XmlEngine xalan; - public ProcessorInfoController(Logger logger) { + public ProcessorInfoController(Logger logger, XmlEngine saxon, XmlEngine xalan) { this.logger = logger; + this.saxon = saxon; + this.xalan = xalan; } /** @@ -24,8 +29,8 @@ public class ProcessorInfoController implements RestController { @ScopedControllerManifest(method = HandlerType.GET, path = "/procinfo") public void processorInfo(Request request, Response response) { try { - response.header("processor", "Saxon " + Saxon.getVersion() + " over s9api"); - response.body(Saxon.getVersion()); + response.header("processor", "Saxon " + saxon.getVersion() + " over s9api"); + response.body(saxon.getVersion()); } catch (Exception ex) { this.logger.error("Error on retrieving engine version. " + ex); response.body(ex.getMessage()); diff --git a/Backend/tools-services/src/main/java/com/r11/tools/controller/XPathController.java b/Backend/tools-services/src/main/java/com/r11/tools/controller/XPathController.java index a3d0ca2..822a113 100644 --- a/Backend/tools-services/src/main/java/com/r11/tools/controller/XPathController.java +++ b/Backend/tools-services/src/main/java/com/r11/tools/controller/XPathController.java @@ -5,6 +5,7 @@ import com.google.gson.JsonObject; import com.r11.tools.controller.internal.*; import com.r11.tools.xml.Saxon; import com.r11.tools.xml.Xalan; +import com.r11.tools.xml.XmlEngine; import org.apache.logging.log4j.Logger; import spark.Request; import spark.Response; @@ -15,9 +16,14 @@ public class XPathController implements RestController { private final Gson gson; private final Logger logger; - public XPathController(Gson gson, Logger logger) { + private final XmlEngine saxon; + private final XmlEngine xalan; + + public XPathController(Gson gson, Logger logger, XmlEngine saxon, XmlEngine xalan) { this.gson = gson; this.logger = logger; + this.saxon = saxon; + this.xalan = xalan; } @ScopedControllerManifest(method = HandlerType.POST, path = "/xpath") @@ -56,11 +62,11 @@ public class XPathController implements RestController { JsonObject responseJson = new JsonObject(); switch (processor) { case "saxon": - response.header("processor", "Saxon " + Saxon.getVersion() + " " + version + " over s9api"); + response.header("processor", "Saxon " + saxon.getVersion() + " " + version + " over s9api"); timeStart = System.currentTimeMillis(); try { - tmp = Saxon.processXPath(data, query, version).getData().trim(); + tmp = saxon.processXPath(data, query, version).getData().trim(); response.status(200); @@ -78,18 +84,18 @@ public class XPathController implements RestController { duration = System.currentTimeMillis() - timeStart; this.logger.info("Request (XPath, Saxon) processed in " + duration + " ms."); - responseJson.addProperty("processor", "Saxon " + Saxon.getVersion() + " " + version + " over s9api"); + responseJson.addProperty("processor", "Saxon " + saxon.getVersion() + " " + version + " over s9api"); responseJson.addProperty("time", duration); response.body(this.gson.toJson(responseJson)); return; case "xalan": - response.header("processor", Xalan.getVersion()); + response.header("processor", xalan.getVersion()); timeStart = System.currentTimeMillis(); try { - XPathQueryResult xPathQueryResult = Xalan.processXPath(data, query); + XPathQueryResult xPathQueryResult = xalan.processXPath(data, query, ""); response.status(200); @@ -108,7 +114,7 @@ public class XPathController implements RestController { duration = System.currentTimeMillis() - timeStart; this.logger.info("Request (XPath, Xalan) processed in " + duration + " ms."); - responseJson.addProperty("processor", Xalan.getVersion()); + responseJson.addProperty("processor", xalan.getVersion()); responseJson.addProperty("time", duration); response.body(this.gson.toJson(responseJson)); diff --git a/Backend/tools-services/src/main/java/com/r11/tools/controller/XsdController.java b/Backend/tools-services/src/main/java/com/r11/tools/controller/XsdController.java index f14e9da..68ecc15 100644 --- a/Backend/tools-services/src/main/java/com/r11/tools/controller/XsdController.java +++ b/Backend/tools-services/src/main/java/com/r11/tools/controller/XsdController.java @@ -7,6 +7,7 @@ import com.r11.tools.controller.internal.HandlerType; import com.r11.tools.controller.internal.RestController; import com.r11.tools.controller.internal.ScopedControllerManifest; import com.r11.tools.xml.Xalan; +import com.r11.tools.xml.XmlEngine; import org.apache.logging.log4j.Logger; import spark.Request; import spark.Response; @@ -17,9 +18,14 @@ public class XsdController implements RestController { private final Gson gson; private final Logger logger; - public XsdController(Gson gson, Logger logger) { + private final XmlEngine saxon; + private final XmlEngine xalan; + + public XsdController(Gson gson, Logger logger, XmlEngine saxon, XmlEngine xalan) { this.gson = gson; this.logger = logger; + this.saxon = saxon; + this.xalan = xalan; } @ScopedControllerManifest(method = HandlerType.POST, path = "/xsd") @@ -44,14 +50,14 @@ public class XsdController implements RestController { String data = requestJson.get("data").getAsString(); String xsd = requestJson.get("process").getAsString(); - response.header("processor", Xalan.getVersion()); + response.header("processor", xalan.getVersion()); long timeStart = System.currentTimeMillis(); String tmp; JsonObject responseJson = new JsonObject(); try { - tmp = Xalan.validate(data, xsd).trim(); + tmp = xalan.validate(data, xsd).trim(); response.status(200); @@ -69,7 +75,7 @@ public class XsdController implements RestController { long duration = System.currentTimeMillis() - timeStart; this.logger.info("Request (XSD, Xalan) processed in " + duration + " ms."); - responseJson.addProperty("processor", Xalan.getVersion()); + responseJson.addProperty("processor", xalan.getVersion()); responseJson.addProperty("time", duration); response.body(this.gson.toJson(responseJson)); diff --git a/Backend/tools-services/src/main/java/com/r11/tools/controller/XsltController.java b/Backend/tools-services/src/main/java/com/r11/tools/controller/XsltController.java index 6159456..966ea47 100644 --- a/Backend/tools-services/src/main/java/com/r11/tools/controller/XsltController.java +++ b/Backend/tools-services/src/main/java/com/r11/tools/controller/XsltController.java @@ -8,6 +8,7 @@ import com.r11.tools.controller.internal.RestController; import com.r11.tools.controller.internal.ScopedControllerManifest; import com.r11.tools.xml.Saxon; import com.r11.tools.xml.Xalan; +import com.r11.tools.xml.XmlEngine; import org.apache.logging.log4j.Logger; import spark.Request; import spark.Response; @@ -18,9 +19,14 @@ public class XsltController implements RestController { private final Gson gson; private final Logger logger; - public XsltController(Gson gson, Logger logger) { + private final XmlEngine saxon; + private final XmlEngine xalan; + + public XsltController(Gson gson, Logger logger, XmlEngine saxon, XmlEngine xalan) { this.gson = gson; this.logger = logger; + this.saxon = saxon; + this.xalan = xalan; } @ScopedControllerManifest(method = HandlerType.POST, path = "/xslt") @@ -61,7 +67,7 @@ public class XsltController implements RestController { case "saxon": timeStart = System.currentTimeMillis(); try { - tmp = Saxon.processXSLT(data, query); + tmp = saxon.processXSLT(data, query); response.status(200); @@ -79,7 +85,7 @@ public class XsltController implements RestController { duration = System.currentTimeMillis() - timeStart; this.logger.info("Request (XSLT, Saxon) processed in " + duration + " ms."); - responseJson.addProperty("processor", "Saxon " + Saxon.getVersion() + " " + version); + responseJson.addProperty("processor", "Saxon " + saxon.getVersion() + " " + version); responseJson.addProperty("time", duration); response.body(this.gson.toJson(responseJson)); @@ -88,7 +94,7 @@ public class XsltController implements RestController { case "xalan": timeStart = System.currentTimeMillis(); try { - tmp = Xalan.processXSLT(data, query); + tmp = xalan.processXSLT(data, query); response.status(200); @@ -106,7 +112,7 @@ public class XsltController implements RestController { duration = System.currentTimeMillis() - timeStart; this.logger.info("Request (XSLT, Xalan) processed in " + duration + " ms."); - responseJson.addProperty("processor", Xalan.getVersion()); + responseJson.addProperty("processor", xalan.getVersion()); responseJson.addProperty("time", duration); response.body(this.gson.toJson(responseJson)); diff --git a/Backend/tools-services/src/main/java/com/r11/tools/xml/Saxon.java b/Backend/tools-services/src/main/java/com/r11/tools/xml/Saxon.java index 4cb2835..f9f330b 100644 --- a/Backend/tools-services/src/main/java/com/r11/tools/xml/Saxon.java +++ b/Backend/tools-services/src/main/java/com/r11/tools/xml/Saxon.java @@ -11,7 +11,7 @@ import java.io.StringWriter; * Handler for Saxon engine * @author Wojciech Czop */ -public class Saxon { +public class Saxon implements XmlEngine{ /** * Transforms string containing xml document via xslt @@ -20,7 +20,7 @@ public class Saxon { * @return transformed xml * @throws SaxonApiException thrown on stylesheet or transformation errors */ - public static String processXSLT(String data, String transform) throws SaxonApiException { + public String processXSLT(String data, String transform) throws SaxonApiException { Processor processor = new Processor(false); XsltCompiler compiler = processor.newXsltCompiler(); XsltExecutable stylesheet = compiler.compile(new StreamSource(new StringReader(transform))); @@ -34,6 +34,11 @@ public class Saxon { return sw.toString(); } + @Override + public String validate(String data, String xsd) { + throw new UnsupportedOperationException(); + } + /** * Process xpath and return either node or wrapped atomic value * @param data xml to be querried @@ -42,7 +47,7 @@ public class Saxon { * @return string xml representation of the node * @throws Exception thrown on node building errors or invalid xpath */ - public static XPathQueryResult processXPath(String data, String query, String version) throws Exception { + public XPathQueryResult processXPath(String data, String query, String version) throws Exception { Processor p = new Processor(false); XPathCompiler compiler = p.newXPathCompiler(); DocumentBuilder builder = p.newDocumentBuilder(); @@ -70,7 +75,7 @@ public class Saxon { * Returns version of the processor * @return version of the processor */ - public static String getVersion() { + public String getVersion() { return new Processor(false).getSaxonProductVersion(); } } diff --git a/Backend/tools-services/src/main/java/com/r11/tools/xml/Xalan.java b/Backend/tools-services/src/main/java/com/r11/tools/xml/Xalan.java index 1caad08..d9cf805 100644 --- a/Backend/tools-services/src/main/java/com/r11/tools/xml/Xalan.java +++ b/Backend/tools-services/src/main/java/com/r11/tools/xml/Xalan.java @@ -24,7 +24,7 @@ import java.io.*; * Handler for Xalan engine * @author Wojciech Czop */ -public class Xalan { +public class Xalan implements XmlEngine{ /** * Transforms string containing xml document via xslt @@ -33,7 +33,7 @@ public class Xalan { * @return transformed xml * @throws Exception thrown on stylesheet or transformation errors */ - public static String processXSLT(String data, String transform) throws Exception{ + public String processXSLT(String data, String transform) throws Exception { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse(new InputSource(new StringReader(data))); @@ -51,7 +51,7 @@ public class Xalan { return sw.toString(); } - private static boolean isTextNode(Node n) { + private boolean isTextNode(Node n) { if (n == null) return false; short nodeType = n.getNodeType(); @@ -65,7 +65,7 @@ public class Xalan { * @return xml processed using given xpath * @throws Exception thrown on node building errors or invalid xpath */ - public static XPathQueryResult processXPath(String data, String transform) throws Exception { + public XPathQueryResult processXPath(String data, String transform, String version) throws Exception { // Set up a DOM tree to query. InputSource in = new InputSource(new StringReader(data)); @@ -112,7 +112,7 @@ public class Xalan { * Returns version of the processor * @return version of the processor */ - public static String getVersion(){ + public String getVersion(){ return org.apache.xalan.Version.getVersion(); } @@ -123,7 +123,7 @@ public class Xalan { * @return statement of validity * @throws Exception thrown on invalid xsd schema or xml */ - public static String validate(String data, String xsd) throws Exception{ + public String validate(String data, String xsd) throws Exception { Source dataSource = new StreamSource(new StringReader(data)); Source xsdSource = new StreamSource(new StringReader(xsd)); SchemaFactory schemaFactory = SchemaFactory diff --git a/Backend/tools-services/src/main/java/com/r11/tools/xml/XmlEngine.java b/Backend/tools-services/src/main/java/com/r11/tools/xml/XmlEngine.java new file mode 100644 index 0000000..5742073 --- /dev/null +++ b/Backend/tools-services/src/main/java/com/r11/tools/xml/XmlEngine.java @@ -0,0 +1,12 @@ +package com.r11.tools.xml; + +import com.r11.tools.controller.internal.XPathQueryResult; + +public interface XmlEngine { + XPathQueryResult processXPath(String data, String query, String version) throws Exception; + String processXSLT(String data, String transform) throws Exception; + String validate(String data, String xsd) throws Exception; + + public String getVersion(); + +} From dc3df79fc16c33646eaa6dbf0039fbb1005412e0 Mon Sep 17 00:00:00 2001 From: Adam Bem Date: Fri, 12 May 2023 10:06:19 +0200 Subject: [PATCH 2/2] Moved frontend of REST Mock to frontend container (solves #168) Co-authored-by: Adam Bem Reviewed-on: https://gitea.release11.com/R11/release11-tools/pulls/186 Reviewed-by: Mikolaj Widla --- .../r11/tools/controller/MainController.java | 27 ------------ .../assets/css/tools/mock}/common.css | 0 .../css/tools/mock}/font/Material-Icons.woff2 | Bin .../mock}/font/Nunito-VariableFont_wght.ttf | Bin .../assets/css/tools/mock}/font/fontello.eot | Bin .../assets/css/tools/mock}/font/fontello.svg | 0 .../assets/css/tools/mock}/font/fontello.ttf | Bin .../assets/css/tools/mock}/font/fontello.woff | Bin .../css/tools/mock}/font/fontello.woff2 | Bin .../assets/css/tools/mock}/fontello.css | 0 .../assets/css/tools/mock}/main.css | 0 .../assets/css/tools/mock}/r11addons.css | 0 .../assets/css/tools/mock}/r11flexbox.css | 0 .../assets/css/tools/mock}/r11modal.css | 0 .../assets/css/tools/mock}/r11tables.css | 0 .../assets/css/tools/mock}/r11tool.css | 0 .../assets/css/tools/mock}/r11tooltip.css | 0 Frontend/assets/scripts/frame.js | 2 +- .../scripts/tools/mock}/datatransfer.js | 2 +- .../assets/scripts/tools/mock}/fiddle.js | 0 .../scripts/tools/mock}/historyloader.js | 0 .../assets/scripts/tools/mock}/modal.js | 0 .../assets/scripts/tools/mock}/uianimation.js | 0 Frontend/assets/scripts/tools/scripts.js | 32 +++++--------- Frontend/index.html | 1 - .../static/html => Frontend/tools}/mock.html | 41 ++++-------------- 26 files changed, 21 insertions(+), 84 deletions(-) delete mode 100644 Backend/mocked-services/src/main/java/com/r11/tools/controller/MainController.java rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/common.css (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/font/Material-Icons.woff2 (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/font/Nunito-VariableFont_wght.ttf (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/font/fontello.eot (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/font/fontello.svg (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/font/fontello.ttf (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/font/fontello.woff (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/font/fontello.woff2 (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/fontello.css (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/main.css (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/r11addons.css (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/r11flexbox.css (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/r11modal.css (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/r11tables.css (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/r11tool.css (100%) rename {Backend/mocked-services/src/main/resources/static/css => Frontend/assets/css/tools/mock}/r11tooltip.css (100%) rename {Backend/mocked-services/src/main/resources/static/js => Frontend/assets/scripts/tools/mock}/datatransfer.js (99%) rename {Backend/mocked-services/src/main/resources/static/js => Frontend/assets/scripts/tools/mock}/fiddle.js (100%) rename {Backend/mocked-services/src/main/resources/static/js => Frontend/assets/scripts/tools/mock}/historyloader.js (100%) rename {Backend/mocked-services/src/main/resources/static/js => Frontend/assets/scripts/tools/mock}/modal.js (100%) rename {Backend/mocked-services/src/main/resources/static/js => Frontend/assets/scripts/tools/mock}/uianimation.js (100%) rename {Backend/mocked-services/src/main/resources/static/html => Frontend/tools}/mock.html (89%) diff --git a/Backend/mocked-services/src/main/java/com/r11/tools/controller/MainController.java b/Backend/mocked-services/src/main/java/com/r11/tools/controller/MainController.java deleted file mode 100644 index e4c3b66..0000000 --- a/Backend/mocked-services/src/main/java/com/r11/tools/controller/MainController.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.r11.tools.controller; - -import lombok.SneakyThrows; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.servlet.ModelAndView; - -/** - * Class responsible for returning homepage html - * @author Gabriel Modzelewski - */ -@Controller -@RequestMapping("/") -public class MainController { - /** - * Default path to get the homepage - * @return the view of homepage - */ - @SneakyThrows - @GetMapping - public ModelAndView showHome(){ - ModelAndView mov = new ModelAndView(); - mov.setViewName("html/mock"); - return mov; - } -} diff --git a/Backend/mocked-services/src/main/resources/static/css/common.css b/Frontend/assets/css/tools/mock/common.css similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/common.css rename to Frontend/assets/css/tools/mock/common.css diff --git a/Backend/mocked-services/src/main/resources/static/css/font/Material-Icons.woff2 b/Frontend/assets/css/tools/mock/font/Material-Icons.woff2 similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/font/Material-Icons.woff2 rename to Frontend/assets/css/tools/mock/font/Material-Icons.woff2 diff --git a/Backend/mocked-services/src/main/resources/static/css/font/Nunito-VariableFont_wght.ttf b/Frontend/assets/css/tools/mock/font/Nunito-VariableFont_wght.ttf similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/font/Nunito-VariableFont_wght.ttf rename to Frontend/assets/css/tools/mock/font/Nunito-VariableFont_wght.ttf diff --git a/Backend/mocked-services/src/main/resources/static/css/font/fontello.eot b/Frontend/assets/css/tools/mock/font/fontello.eot similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/font/fontello.eot rename to Frontend/assets/css/tools/mock/font/fontello.eot diff --git a/Backend/mocked-services/src/main/resources/static/css/font/fontello.svg b/Frontend/assets/css/tools/mock/font/fontello.svg similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/font/fontello.svg rename to Frontend/assets/css/tools/mock/font/fontello.svg diff --git a/Backend/mocked-services/src/main/resources/static/css/font/fontello.ttf b/Frontend/assets/css/tools/mock/font/fontello.ttf similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/font/fontello.ttf rename to Frontend/assets/css/tools/mock/font/fontello.ttf diff --git a/Backend/mocked-services/src/main/resources/static/css/font/fontello.woff b/Frontend/assets/css/tools/mock/font/fontello.woff similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/font/fontello.woff rename to Frontend/assets/css/tools/mock/font/fontello.woff diff --git a/Backend/mocked-services/src/main/resources/static/css/font/fontello.woff2 b/Frontend/assets/css/tools/mock/font/fontello.woff2 similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/font/fontello.woff2 rename to Frontend/assets/css/tools/mock/font/fontello.woff2 diff --git a/Backend/mocked-services/src/main/resources/static/css/fontello.css b/Frontend/assets/css/tools/mock/fontello.css similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/fontello.css rename to Frontend/assets/css/tools/mock/fontello.css diff --git a/Backend/mocked-services/src/main/resources/static/css/main.css b/Frontend/assets/css/tools/mock/main.css similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/main.css rename to Frontend/assets/css/tools/mock/main.css diff --git a/Backend/mocked-services/src/main/resources/static/css/r11addons.css b/Frontend/assets/css/tools/mock/r11addons.css similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/r11addons.css rename to Frontend/assets/css/tools/mock/r11addons.css diff --git a/Backend/mocked-services/src/main/resources/static/css/r11flexbox.css b/Frontend/assets/css/tools/mock/r11flexbox.css similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/r11flexbox.css rename to Frontend/assets/css/tools/mock/r11flexbox.css diff --git a/Backend/mocked-services/src/main/resources/static/css/r11modal.css b/Frontend/assets/css/tools/mock/r11modal.css similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/r11modal.css rename to Frontend/assets/css/tools/mock/r11modal.css diff --git a/Backend/mocked-services/src/main/resources/static/css/r11tables.css b/Frontend/assets/css/tools/mock/r11tables.css similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/r11tables.css rename to Frontend/assets/css/tools/mock/r11tables.css diff --git a/Backend/mocked-services/src/main/resources/static/css/r11tool.css b/Frontend/assets/css/tools/mock/r11tool.css similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/r11tool.css rename to Frontend/assets/css/tools/mock/r11tool.css diff --git a/Backend/mocked-services/src/main/resources/static/css/r11tooltip.css b/Frontend/assets/css/tools/mock/r11tooltip.css similarity index 100% rename from Backend/mocked-services/src/main/resources/static/css/r11tooltip.css rename to Frontend/assets/css/tools/mock/r11tooltip.css diff --git a/Frontend/assets/scripts/frame.js b/Frontend/assets/scripts/frame.js index 493333a..9d2335c 100644 --- a/Frontend/assets/scripts/frame.js +++ b/Frontend/assets/scripts/frame.js @@ -42,7 +42,7 @@ function init() { tools.set("xslt", "tools/xslt.html"); tools.set("xmlform", "tools/xmlFormatter.html"); tools.set("jsonform", "tools/jsonFormatter.html"); - tools.set("mock", getMockHost()); + tools.set("mock", "tools/mock.html"); changeActiveTools('XML'); loadLastPage(); diff --git a/Backend/mocked-services/src/main/resources/static/js/datatransfer.js b/Frontend/assets/scripts/tools/mock/datatransfer.js similarity index 99% rename from Backend/mocked-services/src/main/resources/static/js/datatransfer.js rename to Frontend/assets/scripts/tools/mock/datatransfer.js index ba21743..922d5eb 100644 --- a/Backend/mocked-services/src/main/resources/static/js/datatransfer.js +++ b/Frontend/assets/scripts/tools/mock/datatransfer.js @@ -4,7 +4,7 @@ var json = {}; var jsonIndex = 0; var lastId = 1; var htable_row = 0; -var host = getDomain(); +var host = window.location.protocol + "//" + window.location.hostname + ":8097"; var dataModified = false; const addMessageName = 'addMessage'; const loadMessageName = 'changeMessage'; diff --git a/Backend/mocked-services/src/main/resources/static/js/fiddle.js b/Frontend/assets/scripts/tools/mock/fiddle.js similarity index 100% rename from Backend/mocked-services/src/main/resources/static/js/fiddle.js rename to Frontend/assets/scripts/tools/mock/fiddle.js diff --git a/Backend/mocked-services/src/main/resources/static/js/historyloader.js b/Frontend/assets/scripts/tools/mock/historyloader.js similarity index 100% rename from Backend/mocked-services/src/main/resources/static/js/historyloader.js rename to Frontend/assets/scripts/tools/mock/historyloader.js diff --git a/Backend/mocked-services/src/main/resources/static/js/modal.js b/Frontend/assets/scripts/tools/mock/modal.js similarity index 100% rename from Backend/mocked-services/src/main/resources/static/js/modal.js rename to Frontend/assets/scripts/tools/mock/modal.js diff --git a/Backend/mocked-services/src/main/resources/static/js/uianimation.js b/Frontend/assets/scripts/tools/mock/uianimation.js similarity index 100% rename from Backend/mocked-services/src/main/resources/static/js/uianimation.js rename to Frontend/assets/scripts/tools/mock/uianimation.js diff --git a/Frontend/assets/scripts/tools/scripts.js b/Frontend/assets/scripts/tools/scripts.js index 9c89779..3532208 100644 --- a/Frontend/assets/scripts/tools/scripts.js +++ b/Frontend/assets/scripts/tools/scripts.js @@ -65,28 +65,6 @@ function clearDataField() { } -/** - * The `escapeHTML` function is used to escape special characters in an HTML element's innerHTML property. - * This is done to prevent these characters from being interpreted as HTML tags or attributes, - * which could potentially cause security vulnerabilities or unintended behavior. - * - * @function - * @name escapeHTML - * @kind function - * @param {any} element - * @returns {void} - */ -function escapeHTML(elementID) { - document.getElementById(elementID).innerHTML = document.getElementById(elementID).innerHTML - .replace(/&/g, "&") - .replace(//g, ">") - .replace(/"/g, """) - .replace(/'/g, "'"); -} - - - /** * It fills the XML area with a sample XML. * @@ -111,6 +89,16 @@ function fillDefaultXML(element) { } } + +/** +* It fills the XSD area with a sample XSD and XML area with matching XML. +* +* @function +* @name fillDefaultXSD +* @kind function +* @param {any} element +* @returns {void} +*/ function fillDefaultXSD(){ const serverAddress = window.location.protocol + "//" + window.location.hostname + ":8086"; fetch(serverAddress + "/assets/samples/sampleXSD.xsd") diff --git a/Frontend/index.html b/Frontend/index.html index 4073ca4..d8aeaa6 100644 --- a/Frontend/index.html +++ b/Frontend/index.html @@ -5,7 +5,6 @@ - Release11 Web Tools diff --git a/Backend/mocked-services/src/main/resources/static/html/mock.html b/Frontend/tools/mock.html similarity index 89% rename from Backend/mocked-services/src/main/resources/static/html/mock.html rename to Frontend/tools/mock.html index d3ff264..6039601 100644 --- a/Backend/mocked-services/src/main/resources/static/html/mock.html +++ b/Frontend/tools/mock.html @@ -3,12 +3,10 @@ R11 MockedServices - - - - + + + -
@@ -155,14 +153,6 @@ -
@@ -179,19 +169,6 @@
-
@@ -302,7 +279,7 @@
Message saved
-
Your message has been successfuly saved.
You might view it under the link.
+
Your message has been successfully saved.
You might view it under the link.
- - - - - + + + + +