From 441d764f399f64d90794ebdecef88cc4e7173ad2 Mon Sep 17 00:00:00 2001 From: Willem Date: Tue, 24 Mar 2026 15:58:44 +0100 Subject: [PATCH] NX01: Tested x4o-driver module for later --- nx01-x4o-driver/module-info-test-m2e.java | 39 ++++++++++++ nx01-x4o-driver/module-info.java | 59 +++++++++++++++++++ nx01-x4o-driver/pom.xml | 2 +- .../java/org/x4o/xml/el/X4OELContext.java | 18 +++--- .../org/x4o/xml/el/X4OELFunctionMapper.java | 2 +- .../java/org/x4o/xml/el/X4OELResolver.java | 18 +++--- .../org/x4o/xml/el/X4OELVariableMapper.java | 4 +- .../org/x4o/xml/el/X4OExpressionFactory.java | 4 +- .../java/org/x4o/xml/eld/EldModuleLoader.java | 2 +- .../DefaultElementAttributeValueParser.java | 2 +- .../java/org/x4o/xml/io/DefaultX4OReader.java | 2 +- .../xml/lang/AbstractX4OLanguageSession.java | 4 +- .../org/x4o/xml/lang/X4OLanguageSession.java | 4 +- .../x4o/xml/lang/X4OLanguageSessionLocal.java | 4 +- .../xml/lang/meta/ELIDAttributeHandler.java | 2 +- .../x4o/xml/lang/meta/ELReferenceElement.java | 2 +- .../org/x4o/xml/test/swixml/SwiXmlDriver.java | 2 +- .../src/main/java/module-info.java | 39 ++++++++++++ pom.xml | 13 ++-- 19 files changed, 177 insertions(+), 45 deletions(-) create mode 100644 nx01-x4o-driver/module-info-test-m2e.java create mode 100644 nx01-x4o-driver/module-info.java create mode 100644 nx01-x4o-maisdoc/src/main/java/module-info.java diff --git a/nx01-x4o-driver/module-info-test-m2e.java b/nx01-x4o-driver/module-info-test-m2e.java new file mode 100644 index 0000000..1c2f5d7 --- /dev/null +++ b/nx01-x4o-driver/module-info-test-m2e.java @@ -0,0 +1,39 @@ +/* + * Copyright ©Δ∞ 仙上主天 + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * * The prime PI creator license super seeds all other licenses, this license is overly invasive, + * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. + * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, + * even on air gaped systems, all information in the universe is owned by the pi creator. + * + * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/// The NX01 x4o-driver module. +/// +/// @author للَّٰهِilLצسُو +/// @version ©Δ∞ 仙上主天 +open module ᣕᕁᐤᣳ.ᕽᙾᐤ.ᒄᣗᑊᘁᓫᣗ.ᐪᓫᔆᐪ { + requires transitive ᣕᕁᐤᣳ.ᕽᙾᐤ.ᒄᣗᑊᘁᓫᣗ; + requires java.desktop; + //requires org.junit.jupiter.engine; + //requires org.junit.jupiter.api; + +// exports org.x4o.xml.test; +} diff --git a/nx01-x4o-driver/module-info.java b/nx01-x4o-driver/module-info.java new file mode 100644 index 0000000..2c6dbfd --- /dev/null +++ b/nx01-x4o-driver/module-info.java @@ -0,0 +1,59 @@ +/* + * Copyright ©Δ∞ 仙上主天 + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * * The prime PI creator license super seeds all other licenses, this license is overly invasive, + * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. + * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, + * even on air gaped systems, all information in the universe is owned by the pi creator. + * + * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/// The NX01 x4o-driver module. +/// +/// @author للَّٰهِilLצسُو +/// @version ©Δ∞ 仙上主天 +open module ᣕᕁᐤᣳ.ᕽᙾᐤ.ᒄᣗᑊᘁᓫᣗ { + // TODO: if driver is module than ClassLoader.getResources from /META-INF/* don't work anymore + + requires transitive ᣕᕁᐤᣳ.ᕽᙾᐤ.ᔆᣔᕽᕀᕀᕀ; + requires transitive ᣕᕁᐤᣳ.ᕽᙾᐤ.ᔿᣔᑊᔆᒄᐤᒼ; + requires transitive ᣕᕁᐤᣳ.ᕽᙾᐤ.ᣘᒼᣳᔥ; + requires transitive java.logging; + requires transitive org.apache.tomcat.jasper.el; + + // TEMP for tests only + requires java.desktop; + + exports org.x4o.xml; + exports org.x4o.xml.conv; + exports org.x4o.xml.conv.text; + exports org.x4o.xml.el; + exports org.x4o.xml.eld; + exports org.x4o.xml.eld.doc; + exports org.x4o.xml.eld.lang; + exports org.x4o.xml.eld.xsd; + exports org.x4o.xml.element; + exports org.x4o.xml.io; + exports org.x4o.xml.lang; + exports org.x4o.xml.lang.meta; + exports org.x4o.xml.lang.phase; + exports org.x4o.xml.lang.task; + exports org.x4o.xml.lang.task.run; +} diff --git a/nx01-x4o-driver/pom.xml b/nx01-x4o-driver/pom.xml index eb42ad9..4638b32 100644 --- a/nx01-x4o-driver/pom.xml +++ b/nx01-x4o-driver/pom.xml @@ -22,7 +22,7 @@ org.apache.tomcat - jasper-el + tomcat-jasper-el org.junit.jupiter diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELContext.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELContext.java index dda8fa5..2062b35 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELContext.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELContext.java @@ -24,15 +24,15 @@ package org.x4o.xml.el; import java.util.HashMap; -import javax.el.ArrayELResolver; -import javax.el.BeanELResolver; -import javax.el.CompositeELResolver; -import javax.el.ELContext; -import javax.el.ELResolver; -import javax.el.FunctionMapper; -import javax.el.ListELResolver; -import javax.el.MapELResolver; -import javax.el.VariableMapper; +import jakarta.el.ArrayELResolver; +import jakarta.el.BeanELResolver; +import jakarta.el.CompositeELResolver; +import jakarta.el.ELContext; +import jakarta.el.ELResolver; +import jakarta.el.FunctionMapper; +import jakarta.el.ListELResolver; +import jakarta.el.MapELResolver; +import jakarta.el.VariableMapper; /** * X4OELFunctionMapper simple EL context. diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELFunctionMapper.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELFunctionMapper.java index 32e1662..62482c6 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELFunctionMapper.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELFunctionMapper.java @@ -27,7 +27,7 @@ import java.lang.reflect.Modifier; import java.util.HashMap; import java.util.Map; -import javax.el.FunctionMapper; +import jakarta.el.FunctionMapper; /** * X4OELFunctionMapper simple EL function mapper. diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELResolver.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELResolver.java index 03f9fc2..2d90da8 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELResolver.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELResolver.java @@ -25,9 +25,9 @@ package org.x4o.xml.el; import java.util.Iterator; import java.util.Map; -import javax.el.ELContext; -import javax.el.ELResolver; -import javax.el.MapELResolver; +import jakarta.el.ELContext; +import jakarta.el.ELResolver; +import jakarta.el.MapELResolver; /** * X4OELResolver simple EL resolver. @@ -75,12 +75,12 @@ public class X4OELResolver extends ELResolver { return delegate.getCommonPropertyType(context, base); } - @Override - @SuppressWarnings({ "rawtypes", "unchecked" }) - public Iterator getFeatureDescriptors(ELContext context, Object base) { - base = checkBase(base); - return delegate.getFeatureDescriptors(context, base); - } +// @Override +// @SuppressWarnings({ "rawtypes", "unchecked" }) +// public Iterator getFeatureDescriptors(ELContext context, Object base) { +// base = checkBase(base); +// return delegate.getFeatureDescriptors(context, base); +// } @Override public Class getType(ELContext context, Object base, Object property) { diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELVariableMapper.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELVariableMapper.java index 9948e05..224c21f 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELVariableMapper.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OELVariableMapper.java @@ -25,8 +25,8 @@ package org.x4o.xml.el; import java.util.HashMap; import java.util.Map; -import javax.el.ValueExpression; -import javax.el.VariableMapper; +import jakarta.el.ValueExpression; +import jakarta.el.VariableMapper; /** * X4OELVariableMapper simple EL variable mapper. diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OExpressionFactory.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OExpressionFactory.java index 9b7dba3..3340682 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OExpressionFactory.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OExpressionFactory.java @@ -22,8 +22,8 @@ */ package org.x4o.xml.el; -import javax.el.ELContext; -import javax.el.ExpressionFactory; +import jakarta.el.ELContext; +import jakarta.el.ExpressionFactory; import org.x4o.xml.lang.X4OLanguageClassLoader; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoader.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoader.java index 986fe9e..8807ad4 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoader.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoader.java @@ -25,7 +25,7 @@ package org.x4o.xml.eld; import java.io.IOException; import java.util.logging.Logger; -import javax.el.ValueExpression; +import jakarta.el.ValueExpression; import org.x4o.xml.X4ODriver; import org.x4o.xml.X4ODriverManager; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/element/DefaultElementAttributeValueParser.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/element/DefaultElementAttributeValueParser.java index 91319a8..8a6ad0b 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/element/DefaultElementAttributeValueParser.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/element/DefaultElementAttributeValueParser.java @@ -25,7 +25,7 @@ package org.x4o.xml.element; import java.util.Locale; import java.util.logging.Logger; -import javax.el.ValueExpression; +import jakarta.el.ValueExpression; import org.x4o.xml.conv.ObjectConverterException; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OReader.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OReader.java index 41cf9c9..ddf0366 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OReader.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OReader.java @@ -31,7 +31,7 @@ import java.util.HashMap; import java.util.Map; import java.util.Objects; -import javax.el.ValueExpression; +import jakarta.el.ValueExpression; import javax.xml.parsers.ParserConfigurationException; import org.x4o.sax3.io.ContentWriter; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/AbstractX4OLanguageSession.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/AbstractX4OLanguageSession.java index e0602b3..c840f48 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/AbstractX4OLanguageSession.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/AbstractX4OLanguageSession.java @@ -28,8 +28,8 @@ import java.util.List; import java.util.Map; import java.util.logging.Logger; -import javax.el.ELContext; -import javax.el.ExpressionFactory; +import jakarta.el.ELContext; +import jakarta.el.ExpressionFactory; import org.x4o.xml.element.Element; import org.x4o.xml.element.ElementAttributeValueParser; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSession.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSession.java index 9242834..e4a286b 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSession.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSession.java @@ -24,8 +24,8 @@ package org.x4o.xml.lang; import java.util.List; -import javax.el.ELContext; -import javax.el.ExpressionFactory; +import jakarta.el.ELContext; +import jakarta.el.ExpressionFactory; import org.x4o.xml.element.Element; import org.x4o.xml.element.ElementAttributeValueParser; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSessionLocal.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSessionLocal.java index 0b72c34..e316540 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSessionLocal.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSessionLocal.java @@ -24,8 +24,8 @@ package org.x4o.xml.lang; import java.util.List; -import javax.el.ELContext; -import javax.el.ExpressionFactory; +import jakarta.el.ELContext; +import jakarta.el.ExpressionFactory; import org.x4o.xml.element.ElementAttributeValueParser; import org.x4o.xml.element.ElementObjectPropertyValue; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/ELIDAttributeHandler.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/ELIDAttributeHandler.java index cf71368..e80bf89 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/ELIDAttributeHandler.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/ELIDAttributeHandler.java @@ -24,7 +24,7 @@ package org.x4o.xml.lang.meta; import java.util.logging.Logger; -import javax.el.ValueExpression; +import jakarta.el.ValueExpression; import org.x4o.xml.element.AbstractElementNamespaceAttribute; import org.x4o.xml.element.Element; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/ELReferenceElement.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/ELReferenceElement.java index dd06963..a6436ef 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/ELReferenceElement.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/ELReferenceElement.java @@ -24,7 +24,7 @@ package org.x4o.xml.lang.meta; import java.util.logging.Logger; -import javax.el.ValueExpression; +import jakarta.el.ValueExpression; import org.x4o.xml.element.AbstractElement; import org.x4o.xml.element.ElementException; diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/test/swixml/SwiXmlDriver.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/test/swixml/SwiXmlDriver.java index 50c6101..ab62819 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/test/swixml/SwiXmlDriver.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/test/swixml/SwiXmlDriver.java @@ -24,7 +24,7 @@ package org.x4o.xml.test.swixml; import java.awt.Component; -import javax.el.ValueExpression; +import jakarta.el.ValueExpression; import org.x4o.xml.X4ODriver; import org.x4o.xml.X4ODriverManager; diff --git a/nx01-x4o-maisdoc/src/main/java/module-info.java b/nx01-x4o-maisdoc/src/main/java/module-info.java new file mode 100644 index 0000000..2b21a3f --- /dev/null +++ b/nx01-x4o-maisdoc/src/main/java/module-info.java @@ -0,0 +1,39 @@ +/* + * Copyright ©Δ∞ 仙上主天 + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * * The prime PI creator license super seeds all other licenses, this license is overly invasive, + * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. + * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, + * even on air gaped systems, all information in the universe is owned by the pi creator. + * + * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/// The NX01 x4o-maisdoc module. +/// +/// @author للَّٰهِilLצسُو +/// @version ©Δ∞ 仙上主天 +module ᣕᕁᐤᣳ.ᕽᙾᐤ.ᔿᣔᑊᔆᒄᐤᒼ { + requires transitive ᣕᕁᐤᣳ.ᕽᙾᐤ.ᔆᣔᕽᕀᕀᕀ; + requires transitive java.logging; + + exports org.x4o.maisdoc; + exports org.x4o.maisdoc.flake; + exports org.x4o.maisdoc.model; +} diff --git a/pom.xml b/pom.xml index 948d20a..0d02b7c 100644 --- a/pom.xml +++ b/pom.xml @@ -72,7 +72,7 @@ org.junit.jupiter junit-jupiter - 5.11.0-M1 + 6.0.3 ch.qos.logback @@ -191,13 +191,8 @@ org.apache.tomcat - jasper-el - 6.0.53 - - - de.odysseus.juel - juel - 2.1.0 + tomcat-jasper-el + 11.0.20 org.apache.ant @@ -562,7 +557,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 + 3.5.5 org.codehaus.mojo