diff --git a/nx01-popcorn-mm-jdbc/src/main/java/org/eobjects/metamodel/doc/DocModelWriterTable.java b/nx01-popcorn-mm-jdbc/src/main/java/org/eobjects/metamodel/doc/DocModelWriterTable.java index bf7eba2..4f6d4ba 100644 --- a/nx01-popcorn-mm-jdbc/src/main/java/org/eobjects/metamodel/doc/DocModelWriterTable.java +++ b/nx01-popcorn-mm-jdbc/src/main/java/org/eobjects/metamodel/doc/DocModelWriterTable.java @@ -44,7 +44,6 @@ import org.apache.metamodel.schema.Column; import org.apache.metamodel.schema.Relationship; import org.apache.metamodel.schema.Table; import org.apache.metamodel.schema.TableType; -import org.x4o.o2o.io.ContentWriterHtml.Tag; import org.x4o.o2o.tdoc.ApiDocContentCss; import org.x4o.o2o.tdoc.ApiDocContentWriter; import org.x4o.o2o.tdoc.ApiDocNodeWriterMethod; @@ -52,6 +51,7 @@ import org.x4o.o2o.tdoc.dom.ApiDocIndexItem; import org.x4o.o2o.tdoc.dom.ApiDocNode; import org.x4o.o2o.tdoc.dom.ApiDocNodeBody; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.SAX3WriterHtml.Tag; public class DocModelWriterTable { diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/WarpManifestorDriver.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/WarpManifestorDriver.java index 29af75c..fd11093 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/WarpManifestorDriver.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/WarpManifestorDriver.java @@ -38,10 +38,10 @@ import java.io.Writer; import java.nio.ByteBuffer; import java.nio.charset.StandardCharsets; -import org.x4o.o2o.io.sax3.xdbx.XDBXReaderXml; -import org.x4o.o2o.io.sax3.xdbx.XDBXWriterXml; import org.x4o.o2o.io.tlv.TLVChainOctalSex; import org.x4o.o2o.io.tlv.TLVChainSexTeenBit; +import org.x4o.sax3.io.xdbx.XDBXReaderXml; +import org.x4o.sax3.io.xdbx.XDBXWriterXml; import love.distributedrebirth.nx01.warp.manifestor.manifest.WarpManifestX8; import love.distributedrebirth.nx01.warp.manifestor.manifest.WarpManifestX18; diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0TheMimeType.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0TheMimeType.java index b9f6887..edd93e8 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0TheMimeType.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0TheMimeType.java @@ -33,7 +33,7 @@ import java.io.OutputStream; import java.util.Arrays; import java.util.Optional; -import org.x4o.o2o.io.sax3.xdbx.XDBXConstants; +import org.x4o.sax3.io.xdbx.XDBXConstants; import love.distributedrebirth.nx01.warp.manifestor.scopic.ScopicManifestException; diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ioini/ScopicIniContentReader.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ioini/ScopicIniContentReader.java index e8e606a..7a152f8 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ioini/ScopicIniContentReader.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ioini/ScopicIniContentReader.java @@ -34,7 +34,7 @@ import java.io.InputStreamReader; import java.nio.charset.StandardCharsets; import java.util.PrimitiveIterator; -import org.x4o.o2o.io.sax3.XMLConstants; +import org.x4o.sax3.io.SAX3XMLConstants; import love.distributedrebirth.nx01.warp.manifestor.scopic.ScopicManifestContent; import love.distributedrebirth.nx01.warp.manifestor.scopic.ScopicManifestException; @@ -228,7 +228,7 @@ public class ScopicIniContentReader { result.appendCodePoint(':'); continue; } - if (c2 != XMLConstants.CODE_POINT_ENTIY_REF_NUMBER_HEX) { + if (c2 != SAX3XMLConstants.CODE_POINT_ENTIY_REF_NUMBER_HEX) { throw new ScopicManifestException("Illegal body escape found: " + value); } StringBuilder charRef = new StringBuilder(16); diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf/ScopicManifestConstants.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf/ScopicManifestConstants.java index 7a801ae..cbf02fc 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf/ScopicManifestConstants.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf/ScopicManifestConstants.java @@ -29,8 +29,8 @@ package love.distributedrebirth.nx01.warp.manifestor.scopic.iomf; import java.util.PrimitiveIterator; -import org.x4o.o2o.io.sax3.XMLConstants; import org.x4o.o2o.octal.PrimordialOctalOrangeJuiceCord; +import org.x4o.sax3.io.SAX3XMLConstants; /// Stroboscopic manifest 1 and 2 constants. /// @@ -127,11 +127,11 @@ public enum ScopicManifestConstants { while (iterator.hasNext()) { int c = iterator.nextInt(); if (isV1HeaderChar(c) == false) { - result.appendCodePoint(XMLConstants.CODE_POINT_ENTIY_REF_ESCAPE); - result.appendCodePoint(XMLConstants.CODE_POINT_ENTIY_REF_NUMBER); - result.appendCodePoint(XMLConstants.CODE_POINT_ENTIY_REF_NUMBER_HEX); + result.appendCodePoint(SAX3XMLConstants.CODE_POINT_ENTIY_REF_ESCAPE); + result.appendCodePoint(SAX3XMLConstants.CODE_POINT_ENTIY_REF_NUMBER); + result.appendCodePoint(SAX3XMLConstants.CODE_POINT_ENTIY_REF_NUMBER_HEX); result.append(Integer.toHexString(c).toUpperCase()); - result.appendCodePoint(XMLConstants.CODE_POINT_ENTIY_REF_TERMINATOR); + result.appendCodePoint(SAX3XMLConstants.CODE_POINT_ENTIY_REF_TERMINATOR); } else { result.appendCodePoint(c); } diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf/ScopicManifestContentReader.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf/ScopicManifestContentReader.java index 8ed08a4..df35948 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf/ScopicManifestContentReader.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf/ScopicManifestContentReader.java @@ -35,7 +35,7 @@ import java.nio.charset.StandardCharsets; import java.util.Optional; import java.util.PrimitiveIterator; -import org.x4o.o2o.io.sax3.XMLConstants; +import org.x4o.sax3.io.SAX3XMLConstants; import love.distributedrebirth.nx01.warp.manifestor.manifest.WarpManifestX8HeaderField; import love.distributedrebirth.nx01.warp.manifestor.manifest.WarpManifestX0TheVersion; @@ -179,24 +179,24 @@ public class ScopicManifestContentReader { PrimitiveIterator.OfInt iterator = value.codePoints().iterator(); while (iterator.hasNext()) { int c = iterator.nextInt(); - if (c != XMLConstants.CODE_POINT_ENTIY_REF_ESCAPE) { + if (c != SAX3XMLConstants.CODE_POINT_ENTIY_REF_ESCAPE) { result.appendCodePoint(c); } else { StringBuilder charRef = new StringBuilder(16); int c2 = iterator.nextInt(); - if (c2 != XMLConstants.CODE_POINT_ENTIY_REF_NUMBER) { + if (c2 != SAX3XMLConstants.CODE_POINT_ENTIY_REF_NUMBER) { throw new ScopicManifestException("Illegal lonely amp sign found: " + value); } int c3 = iterator.nextInt(); boolean isHex = false; - if (c3 == XMLConstants.CODE_POINT_ENTIY_REF_NUMBER_HEX) { + if (c3 == SAX3XMLConstants.CODE_POINT_ENTIY_REF_NUMBER_HEX) { isHex = true; } else { charRef.appendCodePoint(c3); } while (iterator.hasNext()) { int charRefCodePoint = iterator.nextInt(); - if (charRefCodePoint == XMLConstants.CODE_POINT_ENTIY_REF_TERMINATOR) { + if (charRefCodePoint == SAX3XMLConstants.CODE_POINT_ENTIY_REF_TERMINATOR) { break; } charRef.appendCodePoint(charRefCodePoint); diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5ContentParser.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5ContentParser.java index 9816773..3d34e82 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5ContentParser.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5ContentParser.java @@ -30,8 +30,8 @@ package love.distributedrebirth.nx01.warp.manifestor.scopic.iomf5; import java.io.IOException; import java.util.Objects; -import org.x4o.o2o.io.sax3.ContentWriterAdapter; -import org.x4o.o2o.io.sax3.XMLConstants; +import org.x4o.sax3.io.ContentWriterAdapter; +import org.x4o.sax3.io.SAX3XMLConstants; import org.xml.sax.Attributes; import org.xml.sax.SAXException; @@ -92,17 +92,17 @@ public class ScopicManifest5ContentParser extends ContentWriterAdapter { @Override public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { if (ScopicManifest5FrameTag.ATTRIBUTE.name().equals(localName)) { - attrName = attributes.getValue(XMLConstants.NULL_NS_URI, ScopicManifest5FrameTag.ATTRIBUTE_NAME); + attrName = attributes.getValue(SAX3XMLConstants.NULL_NS_URI, ScopicManifest5FrameTag.ATTRIBUTE_NAME); return; } if (ScopicManifest5FrameTag.SECTION.name().equals(localName)) { attrMain = false; - String sectionName = attributes.getValue(XMLConstants.NULL_NS_URI, ScopicManifest5FrameTag.SECTION_NAME); + String sectionName = attributes.getValue(SAX3XMLConstants.NULL_NS_URI, ScopicManifest5FrameTag.SECTION_NAME); handler.strobeSectionHeader(sectionName); return; } if (ScopicManifest5FrameTag.MANIFEST.name().equals(localName)) { - String version = attributes.getValue(XMLConstants.NULL_NS_URI, ScopicManifest5FrameTag.MANIFEST_VERSION); + String version = attributes.getValue(SAX3XMLConstants.NULL_NS_URI, ScopicManifest5FrameTag.MANIFEST_VERSION); handler.strobeManifestDeclaration(version); return; } diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5ContentWriter.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5ContentWriter.java index 70638d9..a3a6258 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5ContentWriter.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5ContentWriter.java @@ -29,8 +29,8 @@ package love.distributedrebirth.nx01.warp.manifestor.scopic.iomf5; import java.io.IOException; -import org.x4o.o2o.io.sax3.ContentWriter; -import org.x4o.o2o.io.sax3.ContentWriterTagWrapper; +import org.x4o.sax3.SAX3WriterEnum; +import org.x4o.sax3.io.ContentWriter; import org.xml.sax.helpers.AttributesImpl; import love.distributedrebirth.nx01.warp.manifestor.manifest.WarpManifestX0TheVersion; @@ -46,12 +46,12 @@ import love.distributedrebirth.nx01.warp.manifestor.scopic.iomf.ScopicManifestCo /// @version ©Δ∞ 仙上主天 public class ScopicManifest5ContentWriter implements ScopicManifestContent { - private final ContentWriterTagWrapper writer; + private final SAX3WriterEnum writer; private final ScopicManifestDuplicateDetector duplicateDetector; private boolean openSection = false; public ScopicManifest5ContentWriter(ContentWriter writerXml) { - this.writer = new ContentWriterTagWrapper<>(writerXml); + this.writer = new SAX3WriterEnum<>(writerXml); this.duplicateDetector = new ScopicManifestDuplicateDetector<>(v -> v.length()); } diff --git a/nx01-warp-manifestor/src/test/java/love/distributedrebirth/nx01/warp/manifestor/WarpManifestChinaTest.java b/nx01-warp-manifestor/src/test/java/love/distributedrebirth/nx01/warp/manifestor/WarpManifestChinaTest.java index f14b14c..fd590d2 100644 --- a/nx01-warp-manifestor/src/test/java/love/distributedrebirth/nx01/warp/manifestor/WarpManifestChinaTest.java +++ b/nx01-warp-manifestor/src/test/java/love/distributedrebirth/nx01/warp/manifestor/WarpManifestChinaTest.java @@ -31,7 +31,7 @@ import java.io.StringWriter; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -import org.x4o.o2o.io.sax3.ContentWriterXml; +import org.x4o.sax3.SAX3WriterXml; import love.distributedrebirth.nx01.warp.manifestor.manifest.WarpManifestX0TheVersion; import love.distributedrebirth.nx01.warp.manifestor.manifest.WarpManifestX8; @@ -210,7 +210,7 @@ public class WarpManifestChinaTest { WarpManifestX8 manifestV5 = WarpManifestorDriver.readV5Array(outputV5); StringWriter outputXml = new StringWriter(); - ContentWriterXml writerXml = new ContentWriterXml(outputXml); + SAX3WriterXml writerXml = new SAX3WriterXml(outputXml); ScopicManifest5ContentWriter writer = new ScopicManifest5ContentWriter(writerXml); ScopicManifestContentPulser.strobelight(manifestV5, writer, WarpManifestX0TheVersion.VERSION_5_0.getQName()); Assertions.assertTrue(outputXml.toString().contains("")); diff --git a/nx01-x4o-driver/pom.xml b/nx01-x4o-driver/pom.xml index 81fbd93..ca557ae 100644 --- a/nx01-x4o-driver/pom.xml +++ b/nx01-x4o-driver/pom.xml @@ -8,6 +8,10 @@ nx01-x4o-driver + + love.distributedrebirth.nx01 + nx01-x4o-sax3 + love.distributedrebirth.nx01 nx01-x4o-fc18 diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocLanguageTask.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocLanguageTask.java index 8c5dc9e..dc7794a 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocLanguageTask.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocLanguageTask.java @@ -22,7 +22,7 @@ */ package org.x4o.xml.eld.doc; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.element.ElementException; import org.x4o.xml.lang.X4OLanguage; import org.x4o.xml.lang.task.AbstractX4OLanguageTask; @@ -48,7 +48,7 @@ public class EldDocLanguageTask extends AbstractX4OLanguageTask { /** * Executes this language task. */ - protected X4OLanguageTaskExecutor createTaskExecutorChecked(final PropertyConfig config) { + protected X4OLanguageTaskExecutor createTaskExecutorChecked(final SAX3PropertyConfig config) { return new X4OLanguageTaskExecutor() { public void execute(X4OLanguage language) throws X4OLanguageTaskException { try { diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocWriter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocWriter.java index ebc08ec..e3a81e5 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocWriter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocWriter.java @@ -29,9 +29,6 @@ import java.util.Calendar; import java.util.List; import java.util.Map; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.PropertyConfig.PropertyConfigItem; -import org.x4o.o2o.io.sax3.ContentWriterXml; import org.x4o.o2o.tdoc.ApiDocGenerator; import org.x4o.o2o.tdoc.DefaultPageWriterHelp; import org.x4o.o2o.tdoc.DefaultPageWriterIndexAll; @@ -40,6 +37,9 @@ import org.x4o.o2o.tdoc.dom.ApiDoc; import org.x4o.o2o.tdoc.dom.ApiDocConcept; import org.x4o.o2o.tdoc.dom.ApiDocNode; import org.x4o.o2o.tdoc.dom.ApiDocRemoteClass; +import org.x4o.sax3.SAX3WriterXml; +import org.x4o.sax3.io.SAX3PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig.PropertyConfigItem; import org.x4o.xml.element.ElementNamespaceAttribute; import org.x4o.xml.element.ElementBindingHandler; import org.x4o.xml.element.ElementClass; @@ -79,8 +79,8 @@ public class EldDocWriter { private static final String[] CC_CONFIGURATOR_G = {"configurator-global","ConfiguratorGlobal","The global configurator.","The global configurator."}; private static final String[] CC_BINDING = {"binding","Binding","The element binding.","The element binding."}; - private final static String PROPERTY_CONTEXT_PREFIX = PropertyConfig.X4O_PROPERTIES_PREFIX+"eld-doc/"; - public final static PropertyConfig DEFAULT_PROPERTY_CONFIG; + private final static String PROPERTY_CONTEXT_PREFIX = SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"eld-doc/"; + public final static SAX3PropertyConfig DEFAULT_PROPERTY_CONFIG; public final static String OUTPUT_PATH = PROPERTY_CONTEXT_PREFIX+"output/path"; public final static String DOC_NAME = PROPERTY_CONTEXT_PREFIX+"doc/name"; @@ -99,7 +99,7 @@ public class EldDocWriter { public final static String PAGE_PRINT_HELP = PROPERTY_CONTEXT_PREFIX+"page/print-help"; static { - DEFAULT_PROPERTY_CONFIG = new PropertyConfig(true,ContentWriterXml.DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX, + DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true,SAX3WriterXml.DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX, new PropertyConfigItem(true,OUTPUT_PATH,File.class), new PropertyConfigItem(false,DOC_NAME,String.class), new PropertyConfigItem(false,DOC_DESCRIPTION,String.class), @@ -119,7 +119,7 @@ public class EldDocWriter { } /** The config of this writer. */ - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; /** The language to write doc over. */ private final X4OLanguage language; @@ -128,9 +128,9 @@ public class EldDocWriter { * Creates an EldDocGenerator for this langauge context. * @param language The language to generate doc for. */ - public EldDocWriter(X4OLanguage language,PropertyConfig parentConfig) { + public EldDocWriter(X4OLanguage language,SAX3PropertyConfig parentConfig) { this.language=language; - this.propertyConfig=new PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); + this.propertyConfig=new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); this.propertyConfig.copyParentProperties(parentConfig); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocWriterElementClass.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocWriterElementClass.java index 0c63398..6943646 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocWriterElementClass.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocWriterElementClass.java @@ -25,7 +25,6 @@ package org.x4o.xml.eld.doc; import java.io.IOException; import java.util.List; -import org.x4o.o2o.io.ContentWriterHtml.Tag; import org.x4o.o2o.tdoc.ApiDocContentPrinter; import org.x4o.o2o.tdoc.ApiDocContentWriter; import org.x4o.o2o.tdoc.ApiDocNodeDataConfiguratorMethod; @@ -35,6 +34,7 @@ import org.x4o.o2o.tdoc.dom.ApiDocNode; import org.x4o.o2o.tdoc.dom.ApiDocNodeBody; import org.x4o.o2o.tdoc.dom.ApiDocNodeData; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.SAX3WriterHtml.Tag; import org.x4o.xml.eld.doc.EldDocXTreePageWriter.TreeNode; import org.x4o.xml.element.ElementClass; import org.x4o.xml.element.ElementClassAttribute; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocXTreePageWriter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocXTreePageWriter.java index db9fdad..ec5d7ea 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocXTreePageWriter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/doc/EldDocXTreePageWriter.java @@ -28,7 +28,6 @@ import java.util.Collections; import java.util.Comparator; import java.util.List; -import org.x4o.o2o.io.ContentWriterHtml.Tag; import org.x4o.o2o.tdoc.ApiDocContentWriter; import org.x4o.o2o.tdoc.DefaultPageWriterTree; import org.x4o.o2o.tdoc.dom.ApiDoc; @@ -36,6 +35,7 @@ import org.x4o.o2o.tdoc.dom.ApiDocNode; import org.x4o.o2o.tdoc.dom.ApiDocPage; import org.x4o.o2o.tdoc.dom.ApiDocPageWriter; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.SAX3WriterHtml.Tag; import org.x4o.xml.element.ElementBindingHandler; import org.x4o.xml.element.ElementClass; import org.x4o.xml.element.ElementInterface; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdLanguageTask.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdLanguageTask.java index fa41a3b..2179d50 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdLanguageTask.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdLanguageTask.java @@ -24,7 +24,7 @@ package org.x4o.xml.eld.xsd; import java.io.IOException; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.lang.X4OLanguage; import org.x4o.xml.lang.task.AbstractX4OLanguageTask; import org.x4o.xml.lang.task.X4OLanguageTaskException; @@ -50,7 +50,7 @@ public class EldXsdLanguageTask extends AbstractX4OLanguageTask { /** * Executes this language task. */ - protected X4OLanguageTaskExecutor createTaskExecutorChecked(final PropertyConfig config) { + protected X4OLanguageTaskExecutor createTaskExecutorChecked(final SAX3PropertyConfig config) { return new X4OLanguageTaskExecutor() { public void execute(X4OLanguage language) throws X4OLanguageTaskException { try { diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdWriter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdWriter.java index 3711c6f..d62d25d 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdWriter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdWriter.java @@ -28,10 +28,10 @@ import java.io.IOException; import java.io.OutputStreamWriter; import java.io.Writer; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.PropertyConfig.PropertyConfigItem; -import org.x4o.o2o.io.ContentWriterXsd; -import org.x4o.o2o.io.sax3.ContentWriterXml; +import org.x4o.sax3.SAX3WriterXml; +import org.x4o.sax3.SAX3WriterXsd; +import org.x4o.sax3.io.SAX3PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig.PropertyConfigItem; import org.x4o.xml.element.ElementClass; import org.x4o.xml.element.ElementNamespace; import org.x4o.xml.lang.X4OLanguageModule; @@ -46,8 +46,8 @@ import org.xml.sax.SAXException; */ public class EldXsdWriter { - private final static String PROPERTY_CONTEXT_PREFIX = PropertyConfig.X4O_PROPERTIES_PREFIX+"eld-xsd/"; - public final static PropertyConfig DEFAULT_PROPERTY_CONFIG; + private final static String PROPERTY_CONTEXT_PREFIX = SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"eld-xsd/"; + public final static SAX3PropertyConfig DEFAULT_PROPERTY_CONFIG; public final static String OUTPUT_PATH = PROPERTY_CONTEXT_PREFIX+"output/path"; public final static String OUTPUT_DOCUMENTATION = PROPERTY_CONTEXT_PREFIX+"output/documentation"; @@ -64,7 +64,7 @@ public class EldXsdWriter { private static final String DEFAULT_PROLOG_SEPERATOR = " ===================================================================== "; static { - DEFAULT_PROPERTY_CONFIG = new PropertyConfig(true,ContentWriterXml.DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX, + DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true,SAX3WriterXml.DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX, new PropertyConfigItem(true,OUTPUT_PATH, File.class ), new PropertyConfigItem(OUTPUT_DOCUMENTATION, Boolean.class, true), new PropertyConfigItem(FILTER_NAMESPACE, String.class ), @@ -80,11 +80,11 @@ public class EldXsdWriter { } private final X4OLanguage language; - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; - public EldXsdWriter(X4OLanguage language,PropertyConfig parentConfig) { + public EldXsdWriter(X4OLanguage language,SAX3PropertyConfig parentConfig) { this.language=language; - this.propertyConfig=new PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); + this.propertyConfig=new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); this.propertyConfig.copyParentProperties(parentConfig); } @@ -99,7 +99,7 @@ public class EldXsdWriter { public void writeSchema() throws SAXException, IOException { File basePath = propertyConfig.getPropertyFile(OUTPUT_PATH); - String encoding = propertyConfig.getPropertyString(ContentWriterXml.OUTPUT_ENCODING); + String encoding = propertyConfig.getPropertyString(SAX3WriterXml.OUTPUT_ENCODING); String namespace = propertyConfig.getPropertyString(FILTER_NAMESPACE); if (basePath==null) { throw new NullPointerException("Can't write schema to null output path."); @@ -116,7 +116,7 @@ public class EldXsdWriter { File outputFile = new File(basePath.getAbsolutePath()+File.separatorChar+ns.getSchemaResource()); Writer wr = new OutputStreamWriter(new FileOutputStream(outputFile), encoding); try { - ContentWriterXsd xsdWriter = new ContentWriterXsd(wr,encoding); + SAX3WriterXsd xsdWriter = new SAX3WriterXsd(wr,encoding); xsdWriter.getPropertyConfig().copyParentProperties(propertyConfig); generateSchema(ns.getUri(), xsdWriter); } finally { @@ -130,7 +130,7 @@ public class EldXsdWriter { File outputFile = new File(basePath.getAbsolutePath()+File.separatorChar+ns.getSchemaResource()); Writer wr = new OutputStreamWriter(new FileOutputStream(outputFile), encoding); try { - ContentWriterXsd xsdWriter = new ContentWriterXsd(wr,encoding); + SAX3WriterXsd xsdWriter = new SAX3WriterXsd(wr,encoding); xsdWriter.getPropertyConfig().copyParentProperties(propertyConfig); generateSchema(ns.getUri(), xsdWriter); } finally { @@ -140,7 +140,7 @@ public class EldXsdWriter { } } - private void generateSchema(String namespaceUri,ContentWriterXsd xsdWriter) throws IOException { + private void generateSchema(String namespaceUri,SAX3WriterXsd xsdWriter) throws IOException { ElementNamespace ns = language.findElementNamespace(namespaceUri); if (ns==null) { throw new NullPointerException("Could not find namespace: "+namespaceUri); diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdWriterElement.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdWriterElement.java index cc2b36e..87b00e0 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdWriterElement.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/xsd/EldXsdWriterElement.java @@ -33,11 +33,11 @@ import java.util.List; import java.util.Map; import java.util.Set; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.io.ContentWriterXsd; -import org.x4o.o2o.io.ContentWriterXsd.Tag; -import org.x4o.o2o.io.sax3.ContentWriterXml; -import org.x4o.o2o.io.sax3.XMLConstants; +import org.x4o.sax3.SAX3WriterXml; +import org.x4o.sax3.SAX3WriterXsd; +import org.x4o.sax3.SAX3WriterXsd.Tag; +import org.x4o.sax3.io.SAX3PropertyConfig; +import org.x4o.sax3.io.SAX3XMLConstants; import org.x4o.xml.element.ElementBindingHandler; import org.x4o.xml.element.ElementClass; import org.x4o.xml.element.ElementClassAttribute; @@ -60,13 +60,13 @@ import org.xml.sax.helpers.AttributesImpl; */ public class EldXsdWriterElement { - private PropertyConfig propertyConfig; + private SAX3PropertyConfig propertyConfig; protected X4OLanguage language = null; - protected ContentWriterXsd xsdWriter = null; + protected SAX3WriterXsd xsdWriter = null; protected String writeNamespace = null; protected Map namespaces = null; - public EldXsdWriterElement(ContentWriterXsd xsdWriter,X4OLanguage language,PropertyConfig propertyConfig) { + public EldXsdWriterElement(SAX3WriterXsd xsdWriter,X4OLanguage language,SAX3PropertyConfig propertyConfig) { this.xsdWriter=xsdWriter; this.language=language; this.propertyConfig=propertyConfig; @@ -156,8 +156,8 @@ public class EldXsdWriterElement { if (!propertyConfig.getPropertyBoolean(EldXsdWriter.PROLOG_GENERATED_ENABLE)) { return; } - String chEnter = propertyConfig.getPropertyString(ContentWriterXml.OUTPUT_CHAR_NEWLINE); - String chTab = propertyConfig.getPropertyString(ContentWriterXml.OUTPUT_CHAR_TAB); + String chEnter = propertyConfig.getPropertyString(SAX3WriterXml.OUTPUT_CHAR_NEWLINE); + String chTab = propertyConfig.getPropertyString(SAX3WriterXml.OUTPUT_CHAR_TAB); String generatedBy = propertyConfig.getPropertyString(EldXsdWriter.PROLOG_GENERATED_BY, EldXsdWriter.class.getSimpleName()); String generatedVersion = propertyConfig.getPropertyString(EldXsdWriter.PROLOG_GENERATED_VERSION); StringBuilder b = new StringBuilder(); @@ -173,8 +173,8 @@ public class EldXsdWriterElement { } private void prologWriteNSMeta(ElementNamespace ns) throws IOException { - String chEnter = propertyConfig.getPropertyString(ContentWriterXml.OUTPUT_CHAR_NEWLINE); - String chTab = propertyConfig.getPropertyString(ContentWriterXml.OUTPUT_CHAR_TAB); + String chEnter = propertyConfig.getPropertyString(SAX3WriterXml.OUTPUT_CHAR_NEWLINE); + String chTab = propertyConfig.getPropertyString(SAX3WriterXml.OUTPUT_CHAR_TAB); if (propertyConfig.getPropertyBoolean(EldXsdWriter.PROLOG_XMLNS_INFO_ENABLE)) { StringBuilder b = new StringBuilder(); b.append(chEnter + chTab + String.format(COMMENT_FORMAT,"NSId:",ns.getId())); @@ -242,7 +242,7 @@ public class EldXsdWriterElement { public void endSchema() throws IOException { xsdWriter.printTagEnd(Tag.schema); try { - xsdWriter.getContentWriterWrapped().ignorableWhitespace(XMLConstants.CHAR_NEWLINE); + xsdWriter.getContentWriterWrapped().ignorableWhitespace(SAX3XMLConstants.CHAR_NEWLINE); } catch (SAXException e) { throw new IOException(e); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnection.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnection.java index c277644..84720b1 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnection.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnection.java @@ -26,7 +26,7 @@ import java.util.ArrayList; import java.util.Collection; import java.util.List; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.lang.X4OLanguage; /** @@ -50,7 +50,7 @@ public abstract class AbstractX4OConnection extends AbstractX4OConnectionDebug { return language; } - abstract PropertyConfig getPropertyConfig(); + abstract SAX3PropertyConfig getPropertyConfig(); /** * Sets an X4O Language property. diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnectionDebug.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnectionDebug.java index b4bddba..f10c784 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnectionDebug.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnectionDebug.java @@ -28,8 +28,8 @@ import java.io.PrintWriter; import java.io.StringWriter; import java.io.UnsupportedEncodingException; -import org.x4o.o2o.io.sax3.ContentWriter; -import org.x4o.o2o.io.sax3.ContentWriterXml; +import org.x4o.sax3.SAX3WriterXml; +import org.x4o.sax3.io.ContentWriter; import org.x4o.xml.lang.X4OLanguageSession; import org.x4o.xml.lang.X4OLanguageSessionLocal; import org.x4o.xml.lang.phase.X4OPhase; @@ -64,7 +64,7 @@ public abstract class AbstractX4OConnectionDebug implements X4OConnection { xmlDebugWriter = (ContentWriter)debugOutputHandler; } else if (debugOutputStream instanceof OutputStream) { debugCloseOutputStream = (OutputStream)debugOutputStream; - xmlDebugWriter = new ContentWriterXml(debugCloseOutputStream); + xmlDebugWriter = new SAX3WriterXml(debugCloseOutputStream); } if (xmlDebugWriter!=null) { xmlDebugWriter.startDocument(); diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriterSession.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriterSession.java index 6cabc4a..8a37cba 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriterSession.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriterSession.java @@ -28,7 +28,7 @@ import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; -import org.x4o.o2o.io.sax3.ContentWriterXml; +import org.x4o.sax3.SAX3WriterXml; import org.x4o.xml.lang.X4OLanguage; import org.x4o.xml.lang.X4OLanguageSession; import org.xml.sax.SAXException; @@ -67,7 +67,7 @@ public abstract class AbstractX4OWriterSession extends AbstractX4OConnection public String writeStringSession(X4OLanguageSession languageSession) throws X4OConnectionException,SAXException,IOException { ByteArrayOutputStream out = new ByteArrayOutputStream(4096); writeSession(languageSession, out); - String encoding = (String)getProperty(ContentWriterXml.OUTPUT_ENCODING); + String encoding = (String)getProperty(SAX3WriterXml.OUTPUT_ENCODING); return out.toString(encoding); } } 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 d4ea619..9a9c708 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,10 +31,10 @@ import java.net.URL; import javax.el.ValueExpression; import javax.xml.parsers.ParserConfigurationException; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.PropertyConfig.PropertyConfigItem; -import org.x4o.o2o.io.sax3.ContentWriter; -import org.x4o.o2o.io.sax3.XMLConstants; +import org.x4o.sax3.io.ContentWriter; +import org.x4o.sax3.io.SAX3PropertyConfig; +import org.x4o.sax3.io.SAX3XMLConstants; +import org.x4o.sax3.io.SAX3PropertyConfig.PropertyConfigItem; import org.x4o.xml.lang.X4OLanguage; import org.x4o.xml.lang.X4OLanguageSession; import org.x4o.xml.lang.X4OLanguageSessionLocal; @@ -55,11 +55,11 @@ public class DefaultX4OReader extends AbstractX4OReader { private X4OLanguageSession languageSession = null; - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; - private final static String PROPERTY_CONTEXT_PREFIX = PropertyConfig.X4O_PROPERTIES_PREFIX+"reader/x4o/"; + private final static String PROPERTY_CONTEXT_PREFIX = SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"reader/x4o/"; - public final static PropertyConfig DEFAULT_PROPERTY_CONFIG; + public final static SAX3PropertyConfig DEFAULT_PROPERTY_CONFIG; public final static String SAX_ERROR_HANDLER = PROPERTY_CONTEXT_PREFIX + "sax/error-handler"; public final static String SAX_ENTITY_RESOLVER = PROPERTY_CONTEXT_PREFIX + "sax/entity-resolver"; public final static String DOC_EMPTY_NAMESPACE_URI = PROPERTY_CONTEXT_PREFIX + "doc/empty-namespace-uri"; @@ -78,13 +78,13 @@ public class DefaultX4OReader extends AbstractX4OReader { public final static String DEBUG_OUTPUT_STREAM_CLOSE = PROPERTY_CONTEXT_PREFIX + ABSTRACT_DEBUG_OUTPUT_STREAM_CLOSE; static { - DEFAULT_PROPERTY_CONFIG = new PropertyConfig(true,null,PROPERTY_CONTEXT_PREFIX, + DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true,null,PROPERTY_CONTEXT_PREFIX, new PropertyConfigItem(SAX_ERROR_HANDLER,ErrorHandler.class), new PropertyConfigItem(SAX_ENTITY_RESOLVER,EntityResolver.class), new PropertyConfigItem(DOC_EMPTY_NAMESPACE_URI,String.class), new PropertyConfigItem(DOC_BUFFER_SIZE,Integer.class,4096*2), new PropertyConfigItem(INPUT_STREAM,InputStream.class), - new PropertyConfigItem(INPUT_ENCODING,String.class,XMLConstants.XML_DEFAULT_ENCODING), + new PropertyConfigItem(INPUT_ENCODING,String.class,SAX3XMLConstants.XML_DEFAULT_ENCODING), new PropertyConfigItem(INPUT_SOURCE,InputSource.class), new PropertyConfigItem(true,INPUT_SYSTEM_ID,String.class), new PropertyConfigItem(true,INPUT_BASE_PATH,URL.class), @@ -101,11 +101,11 @@ public class DefaultX4OReader extends AbstractX4OReader { public DefaultX4OReader(X4OLanguage language) { super(language); languageSession = language.createLanguageSession(); - propertyConfig = new PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); + propertyConfig = new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); } @Override - PropertyConfig getPropertyConfig() { + SAX3PropertyConfig getPropertyConfig() { return propertyConfig; } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OWriter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OWriter.java index 63f762a..f757376 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OWriter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OWriter.java @@ -33,12 +33,12 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.PropertyConfig.PropertyConfigItem; -import org.x4o.o2o.io.sax3.ContentWriter; -import org.x4o.o2o.io.sax3.ContentWriterXml; -import org.x4o.o2o.io.sax3.XMLConstants; -import org.x4o.o2o.io.sax3.xdbx.XDBXWriterXml; +import org.x4o.sax3.SAX3WriterXml; +import org.x4o.sax3.io.ContentWriter; +import org.x4o.sax3.io.SAX3PropertyConfig; +import org.x4o.sax3.io.SAX3XMLConstants; +import org.x4o.sax3.io.SAX3PropertyConfig.PropertyConfigItem; +import org.x4o.sax3.io.xdbx.XDBXWriterXml; import org.x4o.xml.element.Element; import org.x4o.xml.element.ElementClass; import org.x4o.xml.element.ElementClassAttribute; @@ -62,11 +62,11 @@ import org.xml.sax.helpers.AttributesImpl; */ public class DefaultX4OWriter extends AbstractX4OWriter { - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; - private final static String PROPERTY_CONTEXT_PREFIX = PropertyConfig.X4O_PROPERTIES_PREFIX+"writer/x4o/"; + private final static String PROPERTY_CONTEXT_PREFIX = SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"writer/x4o/"; - public final static PropertyConfig DEFAULT_PROPERTY_CONFIG; + public final static SAX3PropertyConfig DEFAULT_PROPERTY_CONFIG; public final static String OUTPUT_STREAM = PROPERTY_CONTEXT_PREFIX+"output/stream"; public final static String OUTPUT_XDBX = PROPERTY_CONTEXT_PREFIX+"output/xdbx"; @@ -77,7 +77,7 @@ public class DefaultX4OWriter extends AbstractX4OWriter { public final static String DEBUG_OUTPUT_STREAM_CLOSE = PROPERTY_CONTEXT_PREFIX + ABSTRACT_DEBUG_OUTPUT_STREAM_CLOSE; static { - DEFAULT_PROPERTY_CONFIG = new PropertyConfig(true,ContentWriterXml.DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX, + DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true,SAX3WriterXml.DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX, new PropertyConfigItem(true,OUTPUT_STREAM,OutputStream.class), new PropertyConfigItem(OUTPUT_XDBX,Boolean.class,false), new PropertyConfigItem(SCHEMA_PRINT,Boolean.class,true), @@ -94,13 +94,13 @@ public class DefaultX4OWriter extends AbstractX4OWriter { */ public DefaultX4OWriter(X4OLanguage language) { super(language); - propertyConfig = new PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); + propertyConfig = new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); } /** * @see org.x4o.xml.io.AbstractX4OConnection#getPropertyConfig() */ - public PropertyConfig getPropertyConfig() { + public SAX3PropertyConfig getPropertyConfig() { return propertyConfig; } @@ -130,10 +130,10 @@ public class DefaultX4OWriter extends AbstractX4OWriter { private void runWrite(X4OLanguageSession languageSession) throws X4OConnectionException { OutputStream out = (OutputStream)getProperty(OUTPUT_STREAM); try { - String encoding = getPropertyConfig().getPropertyString(ContentWriterXml.OUTPUT_ENCODING); + String encoding = getPropertyConfig().getPropertyString(SAX3WriterXml.OUTPUT_ENCODING); schemaUriPrint = getPropertyConfig().getPropertyBoolean(SCHEMA_PRINT); schemaUriRoot = getPropertyConfig().getPropertyString(SCHEMA_ROOT_URI); - if (encoding==null) { encoding = XMLConstants.XML_DEFAULT_ENCODING; } + if (encoding==null) { encoding = SAX3XMLConstants.XML_DEFAULT_ENCODING; } Element root = languageSession.getRootElement(); if (schemaUriRoot==null) { @@ -146,7 +146,7 @@ public class DefaultX4OWriter extends AbstractX4OWriter { boolean useXDBX = getPropertyConfig().getPropertyBoolean(OUTPUT_XDBX); ContentWriter writer = null; if (!useXDBX) { - ContentWriterXml writerXML = new ContentWriterXml(out,encoding); + SAX3WriterXml writerXML = new SAX3WriterXml(out,encoding); writerXML.getPropertyConfig().copyParentProperties(getPropertyConfig()); writer = writerXML; } else { @@ -289,7 +289,7 @@ public class DefaultX4OWriter extends AbstractX4OWriter { AttributesImpl atts = new AttributesImpl(); if (isRoot && schemaUriPrint) { String rootUri = findElementUri(element); - writer.startPrefixMapping("xsi", XMLConstants.XML_SCHEMA_INSTANCE_NS_URI); + writer.startPrefixMapping("xsi", SAX3XMLConstants.XML_SCHEMA_INSTANCE_NS_URI); atts.addAttribute ("xsi", "schemaLocation", "", "", rootUri+" "+schemaUriRoot); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentHandler.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentHandler.java index 6317aa7..330b76e 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentHandler.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentHandler.java @@ -22,8 +22,8 @@ */ package org.x4o.xml.io; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.io.sax3.AttributeMap; +import org.x4o.sax3.io.AttributeMap; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.element.Element; import org.x4o.xml.element.Element.ElementType; import org.x4o.xml.element.ElementException; @@ -68,13 +68,13 @@ public class X4OContentHandler extends DefaultHandler2 { /** Store the override element handler */ private DefaultHandler2 overrideSaxHandler = null; - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; /** * Creates an X4OTagHandler * which can receice sax xml events and converts them into the Element* interfaces events. */ - public X4OContentHandler(X4OLanguageSession elementLanguage,PropertyConfig propertyConfig) { + public X4OContentHandler(X4OLanguageSession elementLanguage,SAX3PropertyConfig propertyConfig) { logger = Logger.getLogger(X4OContentHandler.class.getName()); loggerFinest = logger.isLoggable(Level.FINEST); elementStack = new Stack(); diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentParser.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentParser.java index bd7e186..d4e79a4 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentParser.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentParser.java @@ -22,7 +22,7 @@ */ package org.x4o.xml.io; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.eld.EldDriver; import org.x4o.xml.element.ElementException; import org.x4o.xml.lang.X4OLanguageSession; @@ -46,13 +46,13 @@ import java.util.Map; */ public class X4OContentParser { - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; - public X4OContentParser(PropertyConfig propertyConfig) { + public X4OContentParser(SAX3PropertyConfig propertyConfig) { this.propertyConfig=propertyConfig; } - private PropertyConfig getPropertyConfig() { + private SAX3PropertyConfig getPropertyConfig() { return propertyConfig; } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4ODebugWriter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4ODebugWriter.java index d85c379..246f41d 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4ODebugWriter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4ODebugWriter.java @@ -29,9 +29,9 @@ import java.util.Collection; import java.util.List; import java.util.Map; -import org.x4o.o2o.io.sax3.ContentWriter; -import org.x4o.o2o.io.sax3.ContentWriterTagWrapper; -import org.x4o.o2o.io.sax3.XMLConstants; +import org.x4o.sax3.SAX3WriterEnum; +import org.x4o.sax3.io.ContentWriter; +import org.x4o.sax3.io.SAX3XMLConstants; import org.x4o.xml.conv.ObjectConverter; import org.x4o.xml.element.Element; import org.x4o.xml.element.ElementNamespaceAttribute; @@ -65,10 +65,10 @@ public class X4ODebugWriter { static public final String DEBUG_URI = "http://language.x4o.org/xml/ns/debug-output"; - protected ContentWriterTagWrapper contentWriter = null; + protected SAX3WriterEnum contentWriter = null; public X4ODebugWriter(ContentWriter debugWriter) { - this.contentWriter=new ContentWriterTagWrapper(debugWriter,DEBUG_URI,XMLConstants.NULL_NS_URI); + this.contentWriter=new SAX3WriterEnum(debugWriter,DEBUG_URI,SAX3XMLConstants.NULL_NS_URI); } public ContentWriter getContentWriter() { diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OEntityResolver.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OEntityResolver.java index c37ed3b..85737ab 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OEntityResolver.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OEntityResolver.java @@ -30,7 +30,7 @@ import java.util.HashMap; import java.util.Map; import java.util.logging.Logger; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.element.ElementNamespace; import org.x4o.xml.lang.X4OLanguageModule; import org.x4o.xml.lang.X4OLanguageSession; @@ -57,13 +57,13 @@ public class X4OEntityResolver implements EntityResolver { private URL basePath = null; private Map schemaResources = null; private Map schemaPathResources = null; - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; /** * Creates an X4OEntityResolver for a language. * @param elementContext The x4o language to resolve entities for. */ - public X4OEntityResolver(X4OLanguageSession elementContext,PropertyConfig propertyConfig) { + public X4OEntityResolver(X4OLanguageSession elementContext,SAX3PropertyConfig propertyConfig) { if (elementContext==null) { throw new NullPointerException("Can't provide entities with null elementContext."); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OErrorHandler.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OErrorHandler.java index 011052a..9b1e262 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OErrorHandler.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OErrorHandler.java @@ -22,7 +22,7 @@ */ package org.x4o.xml.io; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.element.ElementException; import org.x4o.xml.lang.X4OLanguageSession; import org.xml.sax.ErrorHandler; @@ -44,7 +44,7 @@ public class X4OErrorHandler implements ErrorHandler { * Construct a new SAXErrorPrinter * @param languageSession The language to get errors to. */ - public X4OErrorHandler(X4OLanguageSession languageSession,PropertyConfig propertyConfig) { + public X4OErrorHandler(X4OLanguageSession languageSession,SAX3PropertyConfig propertyConfig) { if (languageSession==null) { throw new NullPointerException("Can't debug and proxy errors with null languageSession."); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/AbstractX4OLanguageTask.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/AbstractX4OLanguageTask.java index c2066eb..01bca15 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/AbstractX4OLanguageTask.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/AbstractX4OLanguageTask.java @@ -24,7 +24,7 @@ package org.x4o.xml.lang.task; import java.util.List; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; /** * AbstractX4OLanguageTask holds the language task meta info. @@ -37,29 +37,29 @@ public abstract class AbstractX4OLanguageTask implements X4OLanguageTask { private final String id; private final String name; private final String description; - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; - public AbstractX4OLanguageTask(String id,PropertyConfig propertyConfig) { + public AbstractX4OLanguageTask(String id,SAX3PropertyConfig propertyConfig) { this(id,id,id,propertyConfig); } - public AbstractX4OLanguageTask(String id,String name,String description,PropertyConfig propertyConfig) { + public AbstractX4OLanguageTask(String id,String name,String description,SAX3PropertyConfig propertyConfig) { this.id=id; this.name=name; this.description=description; this.propertyConfig=propertyConfig; } - protected abstract X4OLanguageTaskExecutor createTaskExecutorChecked(PropertyConfig config); + protected abstract X4OLanguageTaskExecutor createTaskExecutorChecked(SAX3PropertyConfig config); /** - * @see org.x4o.xml.lang.task.X4OLanguageTask#createTaskExecutor(org.x4o.o2o.PropertyConfig) + * @see org.x4o.xml.lang.task.X4OLanguageTask#createTaskExecutor(org.x4o.sax3.io.SAX3PropertyConfig) */ - public X4OLanguageTaskExecutor createTaskExecutor(PropertyConfig config) { + public X4OLanguageTaskExecutor createTaskExecutor(SAX3PropertyConfig config) { return createTaskExecutorChecked(checkConfig(config)); } - private PropertyConfig checkConfig(PropertyConfig config) { + private SAX3PropertyConfig checkConfig(SAX3PropertyConfig config) { List keys = config.getPropertyKeysRequiredValues(); if (keys.isEmpty()) { return config; @@ -81,7 +81,7 @@ public abstract class AbstractX4OLanguageTask implements X4OLanguageTask { /** * @see org.x4o.xml.lang.task.X4OLanguageTask#createTaskConfig() */ - public PropertyConfig createTaskConfig() { + public SAX3PropertyConfig createTaskConfig() { return propertyConfig.clone(); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OLanguageTask.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OLanguageTask.java index 06df9f1..e66054c 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OLanguageTask.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OLanguageTask.java @@ -22,7 +22,7 @@ */ package org.x4o.xml.lang.task; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; /** * X4OLanguageTask runs a task for a language. @@ -50,11 +50,11 @@ public interface X4OLanguageTask { /** * @return Returns newly created PropertyConfig for configuring this task. */ - PropertyConfig createTaskConfig(); + SAX3PropertyConfig createTaskConfig(); /** * @param config The config with which the task will be runned. * @return The task executor for running the task. */ - X4OLanguageTaskExecutor createTaskExecutor(PropertyConfig config); + X4OLanguageTaskExecutor createTaskExecutor(SAX3PropertyConfig config); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OLanguageTaskException.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OLanguageTaskException.java index c150ea8..f10d9e7 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OLanguageTaskException.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OLanguageTaskException.java @@ -22,7 +22,7 @@ */ package org.x4o.xml.lang.task; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; /** * X4OLanguageTaskException addes the property config to the exception. @@ -33,19 +33,19 @@ import org.x4o.o2o.PropertyConfig; public class X4OLanguageTaskException extends Exception { private static final long serialVersionUID = 8490969221732950292L; - private PropertyConfig propertyConfig = null; + private SAX3PropertyConfig propertyConfig = null; - public X4OLanguageTaskException(PropertyConfig propertyConfig,String message) { + public X4OLanguageTaskException(SAX3PropertyConfig propertyConfig,String message) { super(message); this.propertyConfig=propertyConfig; } - public X4OLanguageTaskException(PropertyConfig propertyConfig,String message,Exception exception) { + public X4OLanguageTaskException(SAX3PropertyConfig propertyConfig,String message,Exception exception) { super(message,exception); this.propertyConfig=propertyConfig; } - public PropertyConfig getPropertyConfig() { + public SAX3PropertyConfig getPropertyConfig() { return propertyConfig; } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OStaticLanguageTask.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OStaticLanguageTask.java index 80a6725..9a4ca24 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OStaticLanguageTask.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OStaticLanguageTask.java @@ -24,7 +24,7 @@ package org.x4o.xml.lang.task; import java.io.IOException; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.lang.X4OLanguage; import org.xml.sax.SAXException; @@ -47,7 +47,7 @@ public class X4OStaticLanguageTask extends AbstractX4OLanguageTask { /** * Executes this language task. */ - protected X4OLanguageTaskExecutor createTaskExecutorChecked(final PropertyConfig config) { + protected X4OLanguageTaskExecutor createTaskExecutorChecked(final SAX3PropertyConfig config) { return new X4OLanguageTaskExecutor() { public void execute(X4OLanguage language) throws X4OLanguageTaskException { try { diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OStaticWriter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OStaticWriter.java index a38881b..4502b6a 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OStaticWriter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/X4OStaticWriter.java @@ -28,8 +28,8 @@ import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.PropertyConfig.PropertyConfigItem; +import org.x4o.sax3.io.SAX3PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig.PropertyConfigItem; import org.x4o.xml.lang.X4OLanguageClassLoader; import org.xml.sax.SAXException; @@ -41,23 +41,23 @@ import org.xml.sax.SAXException; */ public class X4OStaticWriter { - private final static String PROPERTY_CONTEXT_PREFIX = PropertyConfig.X4O_PROPERTIES_PREFIX+"x4o-static/"; - public final static PropertyConfig DEFAULT_PROPERTY_CONFIG; + private final static String PROPERTY_CONTEXT_PREFIX = SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"x4o-static/"; + public final static SAX3PropertyConfig DEFAULT_PROPERTY_CONFIG; public final static String OUTPUT_PATH = PROPERTY_CONTEXT_PREFIX+"output/path"; public final static String OUTPUT_OASIS_XMLNS_CATALOG = PROPERTY_CONTEXT_PREFIX+"output/oasis-xml-catalog"; static { - DEFAULT_PROPERTY_CONFIG = new PropertyConfig(true,null,PROPERTY_CONTEXT_PREFIX, + DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true,null,PROPERTY_CONTEXT_PREFIX, new PropertyConfigItem(true,OUTPUT_PATH, File.class ), new PropertyConfigItem(OUTPUT_OASIS_XMLNS_CATALOG, Boolean.class, false) ); } - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; - public X4OStaticWriter(PropertyConfig parentConfig) { - this.propertyConfig=new PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); + public X4OStaticWriter(SAX3PropertyConfig parentConfig) { + this.propertyConfig=new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); this.propertyConfig.copyParentProperties(parentConfig); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskCommandLine.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskCommandLine.java index ccd667a..1efb69d 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskCommandLine.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskCommandLine.java @@ -32,7 +32,7 @@ import java.util.Iterator; import java.util.List; import java.util.Properties; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.X4ODriver; import org.x4o.xml.X4ODriverManager; import org.x4o.xml.lang.X4OLanguage; @@ -50,7 +50,7 @@ public class X4OTaskCommandLine { private X4ODriver driver = null; private X4OLanguageTask task = null; - private PropertyConfig config = null; + private SAX3PropertyConfig config = null; public static void main(String[] argu) { X4OTaskCommandLine cmd = new X4OTaskCommandLine(); @@ -175,7 +175,7 @@ public class X4OTaskCommandLine { String arg = arguIterator.next(); if ("-list-keys".equals(arg) || "-lk".equals(arg)) { System.out.println(task.getName()+" config keys;"); - PropertyConfig config = task.createTaskConfig(); + SAX3PropertyConfig config = task.createTaskConfig(); for (String key:config.getPropertyKeys()) { Class keyType = config.getPropertyType(key); Object valueDefault = config.getPropertyDefault(key); diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskRunner.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskRunner.java index 06adf9b..6f11075 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskRunner.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskRunner.java @@ -24,7 +24,7 @@ package org.x4o.xml.lang.task.run; import java.util.List; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.X4ODriver; import org.x4o.xml.X4ODriverManager; import org.x4o.xml.lang.X4OLanguage; @@ -46,7 +46,7 @@ public final class X4OTaskRunner { if (task==null) { throw new NullPointerException("Could not find x4o task with id; "+taskId); } - PropertyConfig config = task.createTaskConfig(); + SAX3PropertyConfig config = task.createTaskConfig(); for (X4OTaskProperty prop:props) { String key = prop.getKey(); String value = prop.getValue(); diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4OEntityResolverTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4OEntityResolverTest.java index 52acb3f..a3c9e2d 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4OEntityResolverTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4OEntityResolverTest.java @@ -26,7 +26,7 @@ import java.io.IOException; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.X4ODriver; import org.x4o.xml.eld.CelDriver; import org.x4o.xml.io.DefaultX4OReader; @@ -86,7 +86,7 @@ public class X4OEntityResolverTest { public void testResolveProperty() throws Exception { X4ODriver driver = new TestDriver(); X4OLanguageSession language = driver.createLanguage().createLanguageSession(); - PropertyConfig conf = new PropertyConfig(DefaultX4OReader.DEFAULT_PROPERTY_CONFIG,PropertyConfig.X4O_PROPERTIES_PREFIX+"reader/x4o/"); + SAX3PropertyConfig conf = new SAX3PropertyConfig(DefaultX4OReader.DEFAULT_PROPERTY_CONFIG,SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"reader/x4o/"); conf.setProperty(DefaultX4OReader.SAX_ENTITY_RESOLVER, new TestEntityResolver()); X4OEntityResolver resolver = new X4OEntityResolver(language,conf); Exception e = null; @@ -104,7 +104,7 @@ public class X4OEntityResolverTest { public void testResolvePropertyNull() throws Exception { X4ODriver driver = new TestDriver(); X4OLanguageSession language = driver.createLanguage().createLanguageSession(); - PropertyConfig conf = new PropertyConfig(DefaultX4OReader.DEFAULT_PROPERTY_CONFIG,PropertyConfig.X4O_PROPERTIES_PREFIX+"reader/x4o/"); + SAX3PropertyConfig conf = new SAX3PropertyConfig(DefaultX4OReader.DEFAULT_PROPERTY_CONFIG,SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"reader/x4o/"); conf.setProperty(DefaultX4OReader.SAX_ENTITY_RESOLVER, new TestEntityResolver()); X4OEntityResolver resolver = new X4OEntityResolver(language,conf); Exception e = null; diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/doc/X4OWriteLanguageDocExecutorTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/doc/X4OWriteLanguageDocExecutorTest.java index 37d818e..9b3887a 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/doc/X4OWriteLanguageDocExecutorTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/doc/X4OWriteLanguageDocExecutorTest.java @@ -26,7 +26,7 @@ import java.io.File; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -import org.x4o.o2o.PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.X4ODriver; import org.x4o.xml.X4ODriverManager; import org.x4o.xml.eld.CelDriver; @@ -53,7 +53,7 @@ public class X4OWriteLanguageDocExecutorTest { public void testDoc(String language,String outputPostfix) throws Exception { X4ODriver driver = X4ODriverManager.getX4ODriver(language); X4OLanguageTask task = driver.getLanguageTask(EldDocLanguageTask.TASK_ID); - PropertyConfig config = task.createTaskConfig(); + SAX3PropertyConfig config = task.createTaskConfig(); File outputPath = createOutputPath(outputPostfix); config.setProperty(EldDocWriter.OUTPUT_PATH,outputPath); task.createTaskExecutor(config).execute(driver.createLanguage()); diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/xsd/EldXsdLanguageTaskTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/xsd/EldXsdLanguageTaskTest.java index 66e8070..c2dbf8f 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/xsd/EldXsdLanguageTaskTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/xsd/EldXsdLanguageTaskTest.java @@ -28,8 +28,8 @@ import java.util.Map; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.io.sax3.ContentWriterXml; +import org.x4o.sax3.SAX3WriterXml; +import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.X4ODriver; import org.x4o.xml.X4ODriverManager; import org.x4o.xml.eld.CelDriver; @@ -59,12 +59,12 @@ public class EldXsdLanguageTaskTest { private File testSchema(String language,String outputPostfix,Map props) throws Exception { X4ODriver driver = X4ODriverManager.getX4ODriver(language); X4OLanguageTask task = driver.getLanguageTask(EldXsdLanguageTask.TASK_ID); - PropertyConfig config = task.createTaskConfig(); + SAX3PropertyConfig config = task.createTaskConfig(); File outputPath = createOutputPath(outputPostfix); config.setProperty(EldXsdWriter.OUTPUT_PATH,outputPath); config.setProperty(EldXsdWriter.OUTPUT_DOCUMENTATION,false); - config.setProperty(ContentWriterXml.PROLOG_LICENCE_FILE,new File("../licence.txt")); - config.setProperty(ContentWriterXml.PROLOG_USER_COMMENT,"Generated by junit-test-run in class: "+this.getClass().getSimpleName()); + config.setProperty(SAX3WriterXml.PROLOG_LICENCE_FILE,new File("../licence.txt")); + config.setProperty(SAX3WriterXml.PROLOG_USER_COMMENT,"Generated by junit-test-run in class: "+this.getClass().getSimpleName()); if (props!=null) { for (String key:props.keySet()) { Object value = props.get(key); @@ -110,7 +110,7 @@ public class EldXsdLanguageTaskTest { props.put(EldXsdWriter.FILTER_ELEMENT, "elementInterface"); props.put(EldXsdWriter.PROLOG_GENERATED_ENABLE, false); props.put(EldXsdWriter.PROLOG_XMLNS_INFO_ENABLE, false); - props.put(ContentWriterXml.PROLOG_LICENCE_ENABLE,false); + props.put(SAX3WriterXml.PROLOG_LICENCE_ENABLE,false); File outputPath = testSchema(CelDriver.LANGUAGE_NAME,"junit-one-element",props); Assertions.assertTrue(outputPath.list().length==1); diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/test/element/InlinePropertiesElement.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/test/element/InlinePropertiesElement.java index 0028b32..898cad0 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/test/element/InlinePropertiesElement.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/test/element/InlinePropertiesElement.java @@ -24,7 +24,7 @@ package org.x4o.xml.test.element; import java.io.StringWriter; -import org.x4o.o2o.io.sax3.ContentWriterXml; +import org.x4o.sax3.SAX3WriterXml; import org.x4o.xml.element.AbstractElement; import org.x4o.xml.element.ElementException; @@ -44,7 +44,7 @@ public class InlinePropertiesElement extends AbstractElement { @Override public void doElementStart() throws ElementException { StringWriter xmlString = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(xmlString); + SAX3WriterXml writer = new SAX3WriterXml(xmlString); setElementObject(writer); } diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7TempleScrolls.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7TempleScrolls.java index 5d90117..8c3b4ab 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7TempleScrolls.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7TempleScrolls.java @@ -27,8 +27,41 @@ package org.x4o.fc18.zion7; /// @author Willem Cazander /// @version 1.0 Jan 11, 2025 public interface FourCornerZion7TempleScrolls extends FourCornerZion7Candlelier { + /* + DOCUMENT_END(FCDotCDC1604DashP6.NX27_AMPERSAND), + ELEMENT_END(FCDotCDC1604DashP6.NX26_Z), - //void strobeElementStart(PrimordialOctalOrangeJuiceCord uri, PrimordialOctalOrangeJuiceCord tag); + ELEMENT_II(FCDotCDC1604DashP6.NX05_E), + ELEMENT_SI(FCDotCDC1604DashP6.NX24_X), - //void strobeElementEnd(); + ATTRIBUTE_II(FCDotCDC1604DashP6.NX01_A), + ATTRIBUTE_SI(FCDotCDC1604DashP6.NX02_B), + + NS_DECL_II(FCDotCDC1604DashP6.NX13_M), + NS_SCHEMA_SI(FCDotCDC1604DashP6.NX14_N), + + CHARACTERS(FCDotCDC1604DashP6.NX20_T), + COMMENT(FCDotCDC1604DashP6.NX03_C), + + STRING_ID(FCDotCDC1604DashP6.NX09_I), + */ + /* + void strobeDocumentStart(); + + void strobeDocumentEnd(); + + void strobeElementStart(PrimordialOctalOrangeJuiceCord uri, PrimordialOctalOrangeJuiceCord tag); + + void strobeElementEnd(); + + void strobeAttribute(PrimordialOctalOrangeJuiceCord uri, PrimordialOctalOrangeJuiceCord name, PrimordialOctalOrangeJuiceCord value); + + void strobeNamespace(PrimordialOctalOrangeJuiceCord uri, PrimordialOctalOrangeJuiceCord prefix); + + void strobeNamespaceSchema(PrimordialOctalOrangeJuiceCord uri, PrimordialOctalOrangeJuiceCord location); + + void strobeCharacters(PrimordialOctalOrangeJuiceCord text); + + void strobeComment(PrimordialOctalOrangeJuiceCord text); + */ } diff --git a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocPageWriterBaklava.java b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocPageWriterBaklava.java index fa8e455..713ba89 100644 --- a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocPageWriterBaklava.java +++ b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocPageWriterBaklava.java @@ -30,13 +30,13 @@ import org.x4o.fc18.FourCornerUnicodeDisplay; import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.dec1.FCDotDEC2701DashPX0; -import org.x4o.o2o.io.ContentWriterHtml.Tag; -import org.x4o.o2o.io.sax3.ContentCloseable; import org.x4o.o2o.tdoc.ApiDocContentCss; import org.x4o.o2o.tdoc.ApiDocContentWriter; import org.x4o.o2o.tdoc.dom.ApiDocPage; import org.x4o.o2o.tdoc.dom.ApiDocPageWriter; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.SAX3WriterHtml.Tag; +import org.x4o.sax3.io.ContentCloseable; /** * Cake doc muffin page writer. diff --git a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocPageWriterMuffin.java b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocPageWriterMuffin.java index e2d385f..5e81ae2 100644 --- a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocPageWriterMuffin.java +++ b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocPageWriterMuffin.java @@ -33,13 +33,13 @@ import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7C; import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7D; import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7E; import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7F; -import org.x4o.o2o.io.ContentWriterHtml.Tag; -import org.x4o.o2o.io.sax3.ContentCloseable; import org.x4o.o2o.tdoc.ApiDocContentCss; import org.x4o.o2o.tdoc.ApiDocContentWriter; import org.x4o.o2o.tdoc.dom.ApiDocPage; import org.x4o.o2o.tdoc.dom.ApiDocPageWriter; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.SAX3WriterHtml.Tag; +import org.x4o.sax3.io.ContentCloseable; /** * Cake doc muffin page writer. diff --git a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriter.java b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriter.java index ce8b0ad..392e0b0 100644 --- a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriter.java +++ b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriter.java @@ -27,10 +27,10 @@ import java.util.function.Function; import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; -import org.x4o.o2o.io.ContentWriterHtml.Tag; -import org.x4o.o2o.io.sax3.ContentCloseable; import org.x4o.o2o.tdoc.ApiDocContentCss; import org.x4o.o2o.tdoc.ApiDocContentWriter; +import org.x4o.sax3.SAX3WriterHtml.Tag; +import org.x4o.sax3.io.ContentCloseable; import org.xml.sax.helpers.AttributesImpl; /** diff --git a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCake.java b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCake.java index f14d4a3..3600652 100644 --- a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCake.java +++ b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCake.java @@ -29,8 +29,6 @@ import java.util.Optional; import java.util.Set; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.o2o.io.ContentWriterHtml.Tag; -import org.x4o.o2o.io.sax3.ContentCloseable; import org.x4o.o2o.tdoc.ApiDocContentCss; import org.x4o.o2o.tdoc.ApiDocContentWriter; import org.x4o.o2o.tdoc.ApiDocNodeWriterMethod; @@ -38,6 +36,8 @@ import org.x4o.o2o.tdoc.dom.ApiDocConcept; import org.x4o.o2o.tdoc.dom.ApiDocNode; import org.x4o.o2o.tdoc.dom.ApiDocNodeBody; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.SAX3WriterHtml.Tag; +import org.x4o.sax3.io.ContentCloseable; /** * Cake doc slice writer. diff --git a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeSlice.java b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeSlice.java index cbe377c..bb69b63 100644 --- a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeSlice.java +++ b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeSlice.java @@ -26,7 +26,6 @@ import java.io.IOException; import java.util.List; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.o2o.io.sax3.ContentCloseable; import org.x4o.o2o.tdoc.ApiDocContentCss; import org.x4o.o2o.tdoc.ApiDocContentWriter; import org.x4o.o2o.tdoc.ApiDocNodeWriterMethod; @@ -34,6 +33,7 @@ import org.x4o.o2o.tdoc.dom.ApiDocConcept; import org.x4o.o2o.tdoc.dom.ApiDocNode; import org.x4o.o2o.tdoc.dom.ApiDocNodeBody; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.io.ContentCloseable; /** * Cake doc segment slice writer. diff --git a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeWord.java b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeWord.java index da206a1..b8b00a6 100644 --- a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeWord.java +++ b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeWord.java @@ -36,13 +36,13 @@ import org.x4o.fc18.cake2.FourCornerX18CakePointDotName; import org.x4o.fc18.cake2.FourCornerX18CakePointSequence; import org.x4o.fc18.cake2.FourCornerX21CodePointSequence; import org.x4o.fc18.cake2.FourCornerX00PetitVide; -import org.x4o.o2o.io.ContentWriterHtml.Tag; import org.x4o.o2o.tdoc.ApiDocContentCss; import org.x4o.o2o.tdoc.ApiDocContentWriter; import org.x4o.o2o.tdoc.ApiDocNodeWriterMethod; import org.x4o.o2o.tdoc.dom.ApiDocNode; import org.x4o.o2o.tdoc.dom.ApiDocNodeBody; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.SAX3WriterHtml.Tag; /** * Cake doc word writer. diff --git a/nx01-x4o-o2o/pom.xml b/nx01-x4o-o2o/pom.xml index b802f9d..d657736 100644 --- a/nx01-x4o-o2o/pom.xml +++ b/nx01-x4o-o2o/pom.xml @@ -8,6 +8,10 @@ nx01-x4o-o2o + + love.distributedrebirth.nx01 + nx01-x4o-sax3 + org.junit.jupiter junit-jupiter diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/package-info.java b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/package-info.java deleted file mode 100644 index 9ad5a77..0000000 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/package-info.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2004-2014, Willem Cazander - * 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. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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. - */ - -/** - * Object two object input output structure support. - * - * - * @since 1.0 - */ -package org.x4o.o2o.io; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax4/X4ContentFrameTag.java b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax4/X4ContentFrameTag.java deleted file mode 100644 index c6fc59a..0000000 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax4/X4ContentFrameTag.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (c) 2004-2014, Willem Cazander - * 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. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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. - */ -package org.x4o.o2o.io.sax4; - -import java.util.Objects; - -import org.x4o.o2o.octal.PrimordialOctalOrangeJuice; -import org.x4o.o2o.octal.PrimordialOctalOrangeSexWord; - -/** - * Handle streaming XML4 content. - * - * @author Willem Cazander - * @version 1.0 Dec 25, 2024 - */ -public enum X4ContentFrameTag { - /* - DOCUMENT_END(FCDotCDC1604DashP6.NX27_AMPERSAND), - ELEMENT_END(FCDotCDC1604DashP6.NX26_Z), - - ELEMENT_II(FCDotCDC1604DashP6.NX05_E), - ELEMENT_SI(FCDotCDC1604DashP6.NX24_X), - - ATTRIBUTE_II(FCDotCDC1604DashP6.NX01_A), - ATTRIBUTE_SI(FCDotCDC1604DashP6.NX02_B), - - NS_DECL_II(FCDotCDC1604DashP6.NX13_M), - NS_SCHEMA_SI(FCDotCDC1604DashP6.NX14_N), - - CHARACTERS(FCDotCDC1604DashP6.NX20_T), - COMMENT(FCDotCDC1604DashP6.NX03_C), - - STRING_ID(FCDotCDC1604DashP6.NX09_I), - */ - ; - - private final PrimordialOctalOrangeJuice tagNumber; - -// private X4ContentFrameTag(FCDotCDC1604DashP6 tag) { -// this(PrimordialOctalOrangeSexWord.valueOfSmurf(tag.ordinal())); -// } - - private X4ContentFrameTag(PrimordialOctalOrangeJuice tagNumber) { - this.tagNumber = Objects.requireNonNull(tagNumber); - } - - public PrimordialOctalOrangeJuice getTagNumber() { - return tagNumber; - } -} diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax4/X4ContentHandler.java b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax4/X4ContentHandler.java deleted file mode 100644 index b219d8f..0000000 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax4/X4ContentHandler.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) 2004-2014, Willem Cazander - * 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. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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. - */ -package org.x4o.o2o.io.sax4; - -import org.x4o.o2o.octal.PrimordialOctalOrangeJuiceCord; - -/** - * Handle streaming XML4 content. - * - * @author Willem Cazander - * @version 1.0 Dec 25, 2024 - */ -public interface X4ContentHandler { - - void strobeDocumentStart(); - - void strobeDocumentEnd(); - - void strobeElementStart(PrimordialOctalOrangeJuiceCord uri, PrimordialOctalOrangeJuiceCord tag); - - void strobeElementEnd(); - - void strobeAttribute(PrimordialOctalOrangeJuiceCord uri, PrimordialOctalOrangeJuiceCord name, PrimordialOctalOrangeJuiceCord value); - - void strobeNamespace(PrimordialOctalOrangeJuiceCord uri, PrimordialOctalOrangeJuiceCord prefix); - - void strobeNamespaceSchema(PrimordialOctalOrangeJuiceCord uri, PrimordialOctalOrangeJuiceCord location); - - void strobeCharacters(PrimordialOctalOrangeJuiceCord text); - - void strobeComment(PrimordialOctalOrangeJuiceCord text); -} diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/package-info.java b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/package-info.java deleted file mode 100644 index f099614..0000000 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/package-info.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2004-2014, Willem Cazander - * 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. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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. - */ - -/** - * Object two object SAX and binary and octal support classes. - * - * - * @since 1.0 - */ -package org.x4o.o2o; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocContentWriter.java b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocContentWriter.java index 114c3ae..7b96244 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocContentWriter.java +++ b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocContentWriter.java @@ -28,8 +28,8 @@ import java.io.Writer; import java.util.Date; import java.util.List; -import org.x4o.o2o.io.ContentWriterHtml; -import org.x4o.o2o.io.sax3.ContentCloseable; +import org.x4o.sax3.SAX3WriterHtml; +import org.x4o.sax3.io.ContentCloseable; import org.xml.sax.helpers.AttributesImpl; /** @@ -38,7 +38,7 @@ import org.xml.sax.helpers.AttributesImpl; * @author Willem Cazander * @version 1.0 Apr 30, 2013 */ -public class ApiDocContentWriter extends ContentWriterHtml { +public class ApiDocContentWriter extends SAX3WriterHtml { private boolean isRowAlt = false; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocGenerator.java b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocGenerator.java index a88dbb9..901eaf0 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocGenerator.java +++ b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocGenerator.java @@ -40,10 +40,6 @@ import java.util.Comparator; import java.util.Iterator; import java.util.List; -import org.x4o.o2o.io.ContentWriterHtml.DocType; -import org.x4o.o2o.io.ContentWriterHtml.Tag; -import org.x4o.o2o.io.sax3.ContentWriterXml; -import org.x4o.o2o.io.sax3.XMLConstants; import org.x4o.o2o.tdoc.dom.ApiDoc; import org.x4o.o2o.tdoc.dom.ApiDocConcept; import org.x4o.o2o.tdoc.dom.ApiDocNavLink; @@ -55,6 +51,10 @@ import org.x4o.o2o.tdoc.dom.ApiDocNodeWriter; import org.x4o.o2o.tdoc.dom.ApiDocPage; import org.x4o.o2o.tdoc.dom.ApiDocPageWriter; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.SAX3WriterXml; +import org.x4o.sax3.SAX3WriterHtml.DocType; +import org.x4o.sax3.SAX3WriterHtml.Tag; +import org.x4o.sax3.io.SAX3XMLConstants; import org.xml.sax.SAXException; import org.xml.sax.helpers.AttributesImpl; @@ -453,12 +453,12 @@ public class ApiDocGenerator implements ApiDocContentPrinter { } private ApiDocContentWriter createContentWriter(File outputFile) throws IOException { - String encoding = XMLConstants.XML_DEFAULT_ENCODING; + String encoding = SAX3XMLConstants.XML_DEFAULT_ENCODING; try { Writer out = new OutputStreamWriter(new FileOutputStream(outputFile), encoding); ApiDocContentWriter result = new ApiDocContentWriter(out,encoding); - result.getPropertyConfig().setProperty(ContentWriterXml.OUTPUT_CHAR_NEWLINE, XMLConstants.CHAR_NEWLINE+""); - result.getPropertyConfig().setProperty(ContentWriterXml.OUTPUT_CHAR_TAB, " "); + result.getPropertyConfig().setProperty(SAX3WriterXml.OUTPUT_CHAR_NEWLINE, SAX3XMLConstants.CHAR_NEWLINE+""); + result.getPropertyConfig().setProperty(SAX3WriterXml.OUTPUT_CHAR_TAB, " "); return result; } catch (UnsupportedEncodingException e) { throw new IOException(e); diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocWriter.java b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocWriter.java index bc1907e..f33364e 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocWriter.java +++ b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/ApiDocWriter.java @@ -29,9 +29,6 @@ import java.util.Calendar; import java.util.List; import java.util.Map; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.PropertyConfig.PropertyConfigItem; -import org.x4o.o2o.io.sax3.ContentWriterXml; import org.x4o.o2o.tdoc.ApiDocGenerator; import org.x4o.o2o.tdoc.DefaultPageWriterHelp; import org.x4o.o2o.tdoc.DefaultPageWriterIndexAll; @@ -40,6 +37,9 @@ import org.x4o.o2o.tdoc.dom.ApiDoc; import org.x4o.o2o.tdoc.dom.ApiDocConcept; import org.x4o.o2o.tdoc.dom.ApiDocNode; import org.x4o.o2o.tdoc.dom.ApiDocRemoteClass; +import org.x4o.sax3.SAX3WriterXml; +import org.x4o.sax3.io.SAX3PropertyConfig; +import org.x4o.sax3.io.SAX3PropertyConfig.PropertyConfigItem; import org.xml.sax.SAXException; /** @@ -53,8 +53,8 @@ public class ApiDocWriter { // NOTE: this class is unused, and is waiting for ApiDocProject code and replaces most code in EldDocWriter to here. - private final static String PROPERTY_CONTEXT_PREFIX = PropertyConfig.X4O_PROPERTIES_PREFIX+"api-doc/"; - public final static PropertyConfig DEFAULT_PROPERTY_CONFIG; + private final static String PROPERTY_CONTEXT_PREFIX = SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"api-doc/"; + public final static SAX3PropertyConfig DEFAULT_PROPERTY_CONFIG; public final static String OUTPUT_PATH = PROPERTY_CONTEXT_PREFIX+"output/path"; public final static String DOC_NAME = PROPERTY_CONTEXT_PREFIX+"doc/name"; @@ -74,7 +74,7 @@ public class ApiDocWriter { public final static String PAGE_PRINT_HELP = PROPERTY_CONTEXT_PREFIX+"page/print-help"; static { - DEFAULT_PROPERTY_CONFIG = new PropertyConfig(true,ContentWriterXml.DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX, + DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true,SAX3WriterXml.DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX, new PropertyConfigItem(true,OUTPUT_PATH,File.class), new PropertyConfigItem(DOC_NAME,String.class,"X4O API DOC"), new PropertyConfigItem(DOC_DESCRIPTION,String.class,"X4O API Documentation."), @@ -95,10 +95,10 @@ public class ApiDocWriter { } /** The config of this writer. */ - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; - public ApiDocWriter(PropertyConfig parentConfig) { - this.propertyConfig=new PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); + public ApiDocWriter(SAX3PropertyConfig parentConfig) { + this.propertyConfig=new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); this.propertyConfig.copyParentProperties(parentConfig); } diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterHelp.java b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterHelp.java index f1327b0..13eed96 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterHelp.java +++ b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterHelp.java @@ -24,12 +24,12 @@ package org.x4o.o2o.tdoc; import java.io.IOException; -import org.x4o.o2o.io.ContentWriterHtml.Tag; import org.x4o.o2o.tdoc.dom.ApiDoc; import org.x4o.o2o.tdoc.dom.ApiDocConcept; import org.x4o.o2o.tdoc.dom.ApiDocPage; import org.x4o.o2o.tdoc.dom.ApiDocPageWriter; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.SAX3WriterHtml.Tag; /** * DefaultPageWriterHelp creates the help page content. diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterIndexAll.java b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterIndexAll.java index e2cb1ae..ee5a04c 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterIndexAll.java +++ b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterIndexAll.java @@ -24,10 +24,10 @@ package org.x4o.o2o.tdoc; import java.io.IOException; -import org.x4o.o2o.io.ContentWriterHtml.Tag; import org.x4o.o2o.tdoc.dom.ApiDocPage; import org.x4o.o2o.tdoc.dom.ApiDocPageWriter; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.SAX3WriterHtml.Tag; /** * DefaultPageWriterIndexAll creates the index-all page content. diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterTree.java b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterTree.java index e41dad4..a5aa1cb 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterTree.java +++ b/nx01-x4o-o2o/src/main/java/org/x4o/o2o/tdoc/DefaultPageWriterTree.java @@ -24,12 +24,12 @@ package org.x4o.o2o.tdoc; import java.io.IOException; -import org.x4o.o2o.io.ContentWriterHtml.Tag; import org.x4o.o2o.tdoc.dom.ApiDoc; import org.x4o.o2o.tdoc.dom.ApiDocNode; import org.x4o.o2o.tdoc.dom.ApiDocPage; import org.x4o.o2o.tdoc.dom.ApiDocPageWriter; import org.x4o.o2o.tdoc.dom.ApiDocWriteEvent; +import org.x4o.sax3.SAX3WriterHtml.Tag; /** * DefaultPageWriterTree creates the default tree overview page content. diff --git a/nx01-x4o-sax3/pom.xml b/nx01-x4o-sax3/pom.xml new file mode 100644 index 0000000..a79da02 --- /dev/null +++ b/nx01-x4o-sax3/pom.xml @@ -0,0 +1,17 @@ + + 4.0.0 + + love.distributedrebirth.nx01 + nx01 + 〇一。壬寅。一〄-SNAPSHOT + + nx01-x4o-sax3 + + + org.junit.jupiter + junit-jupiter + test + + + \ No newline at end of file diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriterTagWrapper.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnum.java similarity index 89% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriterTagWrapper.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnum.java index dfb2e2e..999b632 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriterTagWrapper.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnum.java @@ -20,12 +20,15 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3; import java.io.Closeable; import java.io.IOException; import java.util.Objects; +import org.x4o.sax3.io.ContentCloseable; +import org.x4o.sax3.io.ContentWriter; +import org.x4o.sax3.io.SAX3XMLConstants; import org.xml.sax.Attributes; import org.xml.sax.SAXException; import org.xml.sax.helpers.AttributesImpl; @@ -36,18 +39,18 @@ import org.xml.sax.helpers.AttributesImpl; * @author Willem Cazander * @version 1.0 May 3, 2013 */ -public class ContentWriterTagWrapper,TAG_WRITER extends ContentWriter> implements ContentWriterTag, Closeable { +public class SAX3WriterEnum,TAG_WRITER extends ContentWriter> implements SAX3WriterEnumHammer, Closeable { private final Attributes EMPTY_ATTRIBUTES = new AttributesImpl(); private final TAG_WRITER contentWriter; private final String tagNamespaceUri; private final String tagNamespacePrefix; - public ContentWriterTagWrapper(TAG_WRITER contentWriter) { - this(contentWriter, XMLConstants.NULL_NS_URI, XMLConstants.NULL_NS_URI); + public SAX3WriterEnum(TAG_WRITER contentWriter) { + this(contentWriter, SAX3XMLConstants.NULL_NS_URI, SAX3XMLConstants.NULL_NS_URI); } - public ContentWriterTagWrapper(TAG_WRITER contentWriter, String tagNamespaceUri, String tagNamespacePrefix) { + public SAX3WriterEnum(TAG_WRITER contentWriter, String tagNamespaceUri, String tagNamespacePrefix) { this.contentWriter = Objects.requireNonNull(contentWriter, "Can't create wrapper on null ContentWriter"); this.tagNamespaceUri = Objects.requireNonNull(tagNamespaceUri, "Can't create wrapper with null tagNamespaceUri"); this.tagNamespacePrefix = Objects.requireNonNull(tagNamespacePrefix, "Can't create wrapper with null tagNamespacePrefix"); diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriterTag.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnumHammer.java similarity index 96% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriterTag.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnumHammer.java index 5355821..bf3d567 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriterTag.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnumHammer.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3; import java.io.IOException; @@ -32,7 +32,7 @@ import org.xml.sax.Attributes; * @author Willem Cazander * @version 1.0 May 3, 2013 */ -public interface ContentWriterTag> { +public interface SAX3WriterEnumHammer> { String getTagNamespaceUri(); diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/ContentWriterHtml.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterHtml.java similarity index 94% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/ContentWriterHtml.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterHtml.java index 1c0ed54..9b86246 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/ContentWriterHtml.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterHtml.java @@ -20,17 +20,15 @@ * 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. */ -package org.x4o.o2o.io; +package org.x4o.sax3; import java.io.IOException; import java.io.Writer; import java.util.Calendar; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.io.sax3.ContentCloseable; -import org.x4o.o2o.io.sax3.ContentWriterTagWrapper; -import org.x4o.o2o.io.sax3.ContentWriterXml; -import org.x4o.o2o.io.sax3.XMLConstants; +import org.x4o.sax3.io.ContentCloseable; +import org.x4o.sax3.io.SAX3PropertyConfig; +import org.x4o.sax3.io.SAX3XMLConstants; import org.xml.sax.SAXException; import org.xml.sax.helpers.AttributesImpl; @@ -40,13 +38,13 @@ import org.xml.sax.helpers.AttributesImpl; * @author Willem Cazander * @version 1.0 Apr 30, 2013 */ -public class ContentWriterHtml extends ContentWriterTagWrapper { +public class SAX3WriterHtml extends SAX3WriterEnum { - public ContentWriterHtml(Writer out,String encoding) { - super(new ContentWriterXml(out, encoding), "", XMLConstants.NULL_NS_URI); + public SAX3WriterHtml(Writer out,String encoding) { + super(new SAX3WriterXml(out, encoding), "", SAX3XMLConstants.NULL_NS_URI); } - public PropertyConfig getPropertyConfig() { + public SAX3PropertyConfig getPropertyConfig() { return getContentWriterWrapped().getPropertyConfig(); } @@ -83,7 +81,7 @@ public class ContentWriterHtml extends ContentWriterTagWrapper { +public class SAX3WriterXsd extends SAX3WriterEnum { - public ContentWriterXsd(Writer out,String encoding) { - super(new ContentWriterXml(out, encoding),XMLConstants.XML_SCHEMA_NS_URI, XMLConstants.NULL_NS_URI); + public SAX3WriterXsd(Writer out,String encoding) { + super(new SAX3WriterXml(out, encoding),SAX3XMLConstants.XML_SCHEMA_NS_URI, SAX3XMLConstants.NULL_NS_URI); } - public PropertyConfig getPropertyConfig() { + public SAX3PropertyConfig getPropertyConfig() { return getContentWriterWrapped().getPropertyConfig(); } diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AbstractContentWriter.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriter.java similarity index 92% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AbstractContentWriter.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriter.java index c7e7dc3..f96cded 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AbstractContentWriter.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriter.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3.io; import java.io.Writer; @@ -45,7 +45,7 @@ public abstract class AbstractContentWriter extends AbstractContentWriterLexical /** * Starts and end then element. - * @see org.x4o.o2o.io.sax3.ContentWriter#startElementEnd(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes) + * @see org.x4o.sax3.io.ContentWriter#startElementEnd(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes) */ public void startElementEnd(String uri, String localName, String name, Attributes atts) throws SAXException { startElement(uri,localName,name, atts); diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AbstractContentWriterHandler.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriterHandler.java similarity index 87% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AbstractContentWriterHandler.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriterHandler.java index 398aef4..86e6687 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AbstractContentWriterHandler.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriterHandler.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3.io; import java.io.BufferedReader; import java.io.Closeable; @@ -41,8 +41,7 @@ import java.util.PrimitiveIterator; import java.util.Set; import java.util.Stack; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.PropertyConfig.PropertyConfigItem; +import org.x4o.sax3.io.SAX3PropertyConfig.PropertyConfigItem; import org.xml.sax.Attributes; import org.xml.sax.ContentHandler; import org.xml.sax.Locator; @@ -56,7 +55,7 @@ import org.xml.sax.SAXException; */ public class AbstractContentWriterHandler implements ContentHandler, Closeable { - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; private final Writer out; private int indent = 0; private Map prefixMapping = null; @@ -66,8 +65,8 @@ public class AbstractContentWriterHandler implements ContentHandler, Closeable { private String lastElement = null; private Stack elements = null; - private final static String PROPERTY_CONTEXT_PREFIX = PropertyConfig.X4O_PROPERTIES_PREFIX+"content/"; // TODO: change to "writer/xml" - public final static PropertyConfig DEFAULT_PROPERTY_CONFIG; + private final static String PROPERTY_CONTEXT_PREFIX = SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"content/"; // TODO: change to "writer/xml" + public final static SAX3PropertyConfig DEFAULT_PROPERTY_CONFIG; public final static String OUTPUT_ENCODING = PROPERTY_CONTEXT_PREFIX+"output/encoding"; public final static String OUTPUT_CHAR_TAB = PROPERTY_CONTEXT_PREFIX+"output/char-tab"; public final static String OUTPUT_CHAR_NEWLINE = PROPERTY_CONTEXT_PREFIX+"output/char-newline"; @@ -86,16 +85,16 @@ public class AbstractContentWriterHandler implements ContentHandler, Closeable { public final static String ROOT_START_NAMESPACE_ALL = PROPERTY_CONTEXT_PREFIX+"root/start-namespace-all"; static { - DEFAULT_PROPERTY_CONFIG = new PropertyConfig(true,null,PROPERTY_CONTEXT_PREFIX, - new PropertyConfigItem(OUTPUT_ENCODING, String.class, XMLConstants.XML_DEFAULT_ENCODING), - new PropertyConfigItem(OUTPUT_CHAR_TAB, String.class, XMLConstants.CHAR_TAB+""), - new PropertyConfigItem(OUTPUT_CHAR_NEWLINE, String.class, XMLConstants.CHAR_NEWLINE+""), + DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true,null,PROPERTY_CONTEXT_PREFIX, + new PropertyConfigItem(OUTPUT_ENCODING, String.class, SAX3XMLConstants.XML_DEFAULT_ENCODING), + new PropertyConfigItem(OUTPUT_CHAR_TAB, String.class, SAX3XMLConstants.CHAR_TAB+""), + new PropertyConfigItem(OUTPUT_CHAR_NEWLINE, String.class, SAX3XMLConstants.CHAR_NEWLINE+""), new PropertyConfigItem(OUTPUT_CHAR_NULL, String.class, "NULL"), new PropertyConfigItem(OUTPUT_COMMENT_ENABLE, Boolean.class, true), new PropertyConfigItem(OUTPUT_COMMENT_AUTO_SPACE, Boolean.class, true), new PropertyConfigItem(OUTPUT_LINE_BREAK_WIDTH, Integer.class, -1), new PropertyConfigItem(OUTPUT_LINE_PER_ATTRIBUTE, Boolean.class, false), - new PropertyConfigItem(PROLOG_LICENCE_ENCODING, String.class, XMLConstants.XML_DEFAULT_ENCODING), + new PropertyConfigItem(PROLOG_LICENCE_ENCODING, String.class, SAX3XMLConstants.XML_DEFAULT_ENCODING), new PropertyConfigItem(PROLOG_LICENCE_FILE, File.class ), new PropertyConfigItem(PROLOG_LICENCE_RESOURCE, String.class ), new PropertyConfigItem(PROLOG_LICENCE_ENABLE, Boolean.class, true), @@ -115,10 +114,10 @@ public class AbstractContentWriterHandler implements ContentHandler, Closeable { this.prefixMapping = new HashMap(15); this.printedMappings = new ArrayList(15); this.elements = new Stack(); - this.propertyConfig = new PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); + this.propertyConfig = new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); } - public PropertyConfig getPropertyConfig() { + public SAX3PropertyConfig getPropertyConfig() { return propertyConfig; } @@ -132,7 +131,7 @@ public class AbstractContentWriterHandler implements ContentHandler, Closeable { */ public void startDocument() throws SAXException { indent = 0; - write(XMLConstants.getDocumentDeclaration(getPropertyConfig().getPropertyString(OUTPUT_ENCODING))); + write(SAX3XMLConstants.getDocumentDeclaration(getPropertyConfig().getPropertyString(OUTPUT_ENCODING))); prologWriteLicence(); prologWriteUserComment(); } @@ -176,7 +175,7 @@ public class AbstractContentWriterHandler implements ContentHandler, Closeable { private String readLicenceStream(InputStream inputStream, String encoding) throws IOException { if (encoding==null) { - encoding = XMLConstants.XML_DEFAULT_ENCODING; + encoding = SAX3XMLConstants.XML_DEFAULT_ENCODING; } BufferedReader br = new BufferedReader(new InputStreamReader(inputStream,Charset.forName(encoding))); try { @@ -238,7 +237,7 @@ public class AbstractContentWriterHandler implements ContentHandler, Closeable { if (localName==null) { throw new SAXException("LocalName may not be null."); } - if (XMLConstants.isNameString(localName)==false) { + if (SAX3XMLConstants.isNameString(localName)==false) { throw new SAXException("LocalName of element is not valid in xml; '"+localName+"'"); } for (int i=0;i0) { + if (value.indexOf(SAX3XMLConstants.CHAR_NEWLINE)>0) { printReturn = true; } else { printReturn = false; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AbstractContentWriterLexical.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriterLexical.java similarity index 88% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AbstractContentWriterLexical.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriterLexical.java index b0cb260..c7b4b89 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AbstractContentWriterLexical.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriterLexical.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3.io; import java.io.Writer; @@ -50,7 +50,7 @@ public abstract class AbstractContentWriterLexical extends AbstractContentWriter */ public void startCDATA() throws SAXException { autoCloseStartElement(); - charactersRaw(XMLConstants.CDATA_START); + charactersRaw(SAX3XMLConstants.CDATA_START); printCDATA = true; } @@ -58,7 +58,7 @@ public abstract class AbstractContentWriterLexical extends AbstractContentWriter * @see org.xml.sax.ext.LexicalHandler#endCDATA() */ public void endCDATA() throws SAXException { - charactersRaw(XMLConstants.CDATA_END); + charactersRaw(SAX3XMLConstants.CDATA_END); printCDATA = false; } @@ -66,7 +66,7 @@ public abstract class AbstractContentWriterLexical extends AbstractContentWriter * @see org.xml.sax.ext.LexicalHandler#startDTD(java.lang.String, java.lang.String, java.lang.String) */ public void startDTD(String name, String publicId, String systemId) throws SAXException { - charactersRaw(XMLConstants.XML_DOCTYPE_TAG_OPEN); + charactersRaw(SAX3XMLConstants.XML_DOCTYPE_TAG_OPEN); charactersRaw(" "); charactersRaw(name); if (publicId!=null) { @@ -78,7 +78,7 @@ public abstract class AbstractContentWriterLexical extends AbstractContentWriter charactersRaw(systemId); charactersRaw("\""); } - charactersRaw(XMLConstants.TAG_CLOSE); + charactersRaw(SAX3XMLConstants.TAG_CLOSE); } /** @@ -101,7 +101,7 @@ public abstract class AbstractContentWriterLexical extends AbstractContentWriter } /** - * @see org.x4o.o2o.io.sax3.AbstractContentWriterHandler#characters(char[], int, int) + * @see org.x4o.sax3.io.AbstractContentWriterHandler#characters(char[], int, int) */ @Override public void characters(char[] ch, int start, int length) throws SAXException { @@ -109,12 +109,12 @@ public abstract class AbstractContentWriterLexical extends AbstractContentWriter } /** - * @see org.x4o.o2o.io.sax3.AbstractContentWriterHandler#characters(java.lang.String) + * @see org.x4o.sax3.io.AbstractContentWriterHandler#characters(java.lang.String) */ @Override public void characters(String text) throws SAXException { if (printCDATA) { - charactersRaw(XMLConstants.escapeCharactersCdata(text,"","")); + charactersRaw(SAX3XMLConstants.escapeCharactersCdata(text,"","")); } else { super.characters(text); } diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AttributeMap.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AttributeMap.java similarity index 99% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AttributeMap.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AttributeMap.java index ac20270..b037bd9 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/AttributeMap.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AttributeMap.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3.io; import org.xml.sax.Attributes; import java.util.ArrayList; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentCloseable.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentCloseable.java similarity index 98% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentCloseable.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentCloseable.java index d2d6699..5d1b78b 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentCloseable.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentCloseable.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3.io; import java.io.Closeable; import java.io.IOException; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriter.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentWriter.java similarity index 99% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriter.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentWriter.java index 6437e24..e090eae 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriter.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentWriter.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3.io; import java.io.Closeable; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriterAdapter.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentWriterAdapter.java similarity index 99% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriterAdapter.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentWriterAdapter.java index cadc976..214e9e4 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/ContentWriterAdapter.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentWriterAdapter.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3.io; import org.xml.sax.Attributes; import org.xml.sax.Locator; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/PropertyConfig.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/SAX3PropertyConfig.java similarity index 87% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/PropertyConfig.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/SAX3PropertyConfig.java index 4e8872a..21e2877 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/PropertyConfig.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/SAX3PropertyConfig.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o; +package org.x4o.sax3.io; import java.io.File; import java.util.ArrayList; @@ -30,31 +30,28 @@ import java.util.List; import java.util.Map; import java.util.function.Supplier; -import org.x4o.o2o.octal.PrimordialOctalOrangeJuiceCord; -import org.x4o.o2o.octal.PrimordialOctalOrangeString; - /** * ContentConfig Defines checked config options. * * @author Willem Cazander * @version 1.0 May 1, 2013 */ -public final class PropertyConfig implements Cloneable { +public final class SAX3PropertyConfig implements Cloneable { public final static String X4O_PROPERTIES_PREFIX = "http://x4o.org/properties/"; private final Map items; private final boolean readOnly; private final String keyPrefix; - public PropertyConfig(String keyPrefix,PropertyConfigItem...items) { + public SAX3PropertyConfig(String keyPrefix,PropertyConfigItem...items) { this(false,null,keyPrefix,items); } - public PropertyConfig(PropertyConfig parentPropertyConfig,String keyPrefix,PropertyConfigItem...items) { + public SAX3PropertyConfig(SAX3PropertyConfig parentPropertyConfig,String keyPrefix,PropertyConfigItem...items) { this(false,parentPropertyConfig,keyPrefix,items); } - public PropertyConfig(boolean readOnly,PropertyConfig parentPropertyConfig,String keyPrefix,PropertyConfigItem...itemConfig) { + public SAX3PropertyConfig(boolean readOnly,SAX3PropertyConfig parentPropertyConfig,String keyPrefix,PropertyConfigItem...itemConfig) { if (keyPrefix==null) { throw new NullPointerException("Can't create PropertyConfig with null keyPrefix."); } @@ -89,7 +86,7 @@ public final class PropertyConfig implements Cloneable { } } - private final void copyParentPropertyConfig(Map fillItems,PropertyConfig parentPropertyConfig) { + private final void copyParentPropertyConfig(Map fillItems,SAX3PropertyConfig parentPropertyConfig) { if (parentPropertyConfig==null) { return; } @@ -393,35 +390,7 @@ public final class PropertyConfig implements Cloneable { return defaultValue.get(); } - public final PrimordialOctalOrangeJuiceCord getPropertyString18(String key) { - Object value = getProperty(key); - if (value instanceof PrimordialOctalOrangeJuiceCord) { - return (PrimordialOctalOrangeJuiceCord)value; - } - if (value==null) { - return null; - } - throw new IllegalStateException("Wrong value type: "+value.getClass()+" for key: "+key); - } - - public final PrimordialOctalOrangeJuiceCord getPropertyString18(String key,PrimordialOctalOrangeJuiceCord defaultValue) { - PrimordialOctalOrangeJuiceCord propertyValue = getPropertyString18(key); - if (propertyValue==null) { - return defaultValue; - } else { - return propertyValue; - } - } - - public final PrimordialOctalOrangeJuiceCord getPropertyString18(String key,Supplier defaultValue) { - PrimordialOctalOrangeJuiceCord result = getPropertyString18(key); - if (result != null) { - return result; - } - return defaultValue.get(); - } - - public final void copyParentProperties(PropertyConfig config) { + public final void copyParentProperties(SAX3PropertyConfig config) { for (String key:getPropertyKeys()) { Object value = config.getProperty(key); if (value==null) { @@ -486,10 +455,6 @@ public final class PropertyConfig implements Cloneable { result.put(mKey, mValue); return; } - if (PrimordialOctalOrangeJuiceCord.class.equals(valueType)) { - setProperty(key, PrimordialOctalOrangeString.valueOfHinari(value)); - return; - } } /** @@ -497,8 +462,8 @@ public final class PropertyConfig implements Cloneable { * @see java.lang.Object#clone() */ @Override - public PropertyConfig clone() { - PropertyConfig clone = new PropertyConfig(this,this.keyPrefix); + public SAX3PropertyConfig clone() { + SAX3PropertyConfig clone = new SAX3PropertyConfig(this,this.keyPrefix); clone.copyParentProperties(this); return clone; } diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/XMLConstants.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/SAX3XMLConstants.java similarity index 99% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/XMLConstants.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/SAX3XMLConstants.java index ba005e5..c1ed87d 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/XMLConstants.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/SAX3XMLConstants.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3.io; import java.util.PrimitiveIterator; @@ -30,7 +30,7 @@ import java.util.PrimitiveIterator; * @author Willem Cazander * @version 1.0 Mrt 31, 2012 */ -public final class XMLConstants { +public final class SAX3XMLConstants { /** * Lowcase xml. diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax4/package-info.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/package-info.java similarity index 95% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax4/package-info.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/package-info.java index 05eeb86..0cd96cf 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax4/package-info.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/package-info.java @@ -22,8 +22,8 @@ */ /** - * The SAX4 18 bit binary XML support. + * The SAX 3-Extended classes and interfaces. * * @since 1.0 */ -package org.x4o.o2o.io.sax4; +package org.x4o.sax3.io; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/AbstractXDBXWriter.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/AbstractXDBXWriter.java similarity index 90% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/AbstractXDBXWriter.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/AbstractXDBXWriter.java index eca7cb9..cc2accf 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/AbstractXDBXWriter.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/AbstractXDBXWriter.java @@ -20,11 +20,11 @@ * 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. */ -package org.x4o.o2o.io.sax3.xdbx; +package org.x4o.sax3.io.xdbx; import java.io.OutputStream; -import org.x4o.o2o.io.sax3.ContentWriter; +import org.x4o.sax3.io.ContentWriter; import org.xml.sax.Attributes; import org.xml.sax.SAXException; @@ -46,7 +46,7 @@ public abstract class AbstractXDBXWriter extends AbstractXDBXWriterLexical imple /** * Starts and end then element. - * @see org.x4o.o2o.io.sax3.ContentWriter#startElementEnd(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes) + * @see org.x4o.sax3.io.ContentWriter#startElementEnd(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes) */ public void startElementEnd(String uri, String localName, String name, Attributes atts) throws SAXException { startElement(uri,localName,name, atts); diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/AbstractXDBXWriterHandler.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/AbstractXDBXWriterHandler.java similarity index 91% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/AbstractXDBXWriterHandler.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/AbstractXDBXWriterHandler.java index 54d0e8d..5baa272 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/AbstractXDBXWriterHandler.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/AbstractXDBXWriterHandler.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3.xdbx; +package org.x4o.sax3.io.xdbx; import java.io.BufferedReader; import java.io.Closeable; @@ -42,9 +42,9 @@ import java.util.PrimitiveIterator; import java.util.Set; import java.util.Stack; -import org.x4o.o2o.PropertyConfig; -import org.x4o.o2o.PropertyConfig.PropertyConfigItem; -import org.x4o.o2o.io.sax3.XMLConstants; +import org.x4o.sax3.io.SAX3PropertyConfig; +import org.x4o.sax3.io.SAX3XMLConstants; +import org.x4o.sax3.io.SAX3PropertyConfig.PropertyConfigItem; import org.xml.sax.Attributes; import org.xml.sax.ContentHandler; import org.xml.sax.Locator; @@ -58,15 +58,15 @@ import org.xml.sax.SAXException; */ public class AbstractXDBXWriterHandler implements ContentHandler, Closeable { - private final PropertyConfig propertyConfig; + private final SAX3PropertyConfig propertyConfig; private final OutputStream out; private Map prefixMapping = null; private List printedMappings = null; private Stack elements = null; private Map stringIdx = null; - private final static String PROPERTY_CONTEXT_PREFIX = PropertyConfig.X4O_PROPERTIES_PREFIX+"writer/xdbx/"; - public final static PropertyConfig DEFAULT_PROPERTY_CONFIG; + private final static String PROPERTY_CONTEXT_PREFIX = SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"writer/xdbx/"; + public final static SAX3PropertyConfig DEFAULT_PROPERTY_CONFIG; public final static String OUTPUT_DECLARATION = PROPERTY_CONTEXT_PREFIX+"output/declaration"; public final static String OUTPUT_CHAR_NULL = PROPERTY_CONTEXT_PREFIX+"output/char-null"; public final static String OUTPUT_COMMENT_ENABLE = PROPERTY_CONTEXT_PREFIX+"output/comment-enable"; @@ -80,12 +80,12 @@ public class AbstractXDBXWriterHandler implements ContentHandler, Closeable { public final static String ROOT_START_NAMESPACE_ALL = PROPERTY_CONTEXT_PREFIX+"root/start-namespace-all"; static { - DEFAULT_PROPERTY_CONFIG = new PropertyConfig(true,null,PROPERTY_CONTEXT_PREFIX, + DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true,null,PROPERTY_CONTEXT_PREFIX, new PropertyConfigItem(OUTPUT_DECLARATION, Boolean.class, true), new PropertyConfigItem(OUTPUT_CHAR_NULL, String.class, "NULL"), new PropertyConfigItem(OUTPUT_COMMENT_ENABLE, Boolean.class, true), new PropertyConfigItem(OUTPUT_COMMENT_AUTO_SPACE, Boolean.class, true), - new PropertyConfigItem(PROLOG_LICENCE_ENCODING, String.class, XMLConstants.XML_DEFAULT_ENCODING), + new PropertyConfigItem(PROLOG_LICENCE_ENCODING, String.class, SAX3XMLConstants.XML_DEFAULT_ENCODING), new PropertyConfigItem(PROLOG_LICENCE_FILE, File.class ), new PropertyConfigItem(PROLOG_LICENCE_RESOURCE, String.class ), new PropertyConfigItem(PROLOG_LICENCE_ENABLE, Boolean.class, true), @@ -104,11 +104,11 @@ public class AbstractXDBXWriterHandler implements ContentHandler, Closeable { this.prefixMapping = new HashMap(15); this.printedMappings = new ArrayList(15); this.elements = new Stack(); - this.propertyConfig = new PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); + this.propertyConfig = new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); this.stringIdx = new HashMap<>(); } - public PropertyConfig getPropertyConfig() { + public SAX3PropertyConfig getPropertyConfig() { return propertyConfig; } @@ -193,7 +193,7 @@ public class AbstractXDBXWriterHandler implements ContentHandler, Closeable { private String readLicenceStream(InputStream inputStream,String encoding) throws IOException { if (encoding==null) { - encoding = XMLConstants.XML_DEFAULT_ENCODING; + encoding = SAX3XMLConstants.XML_DEFAULT_ENCODING; } BufferedReader br = new BufferedReader(new InputStreamReader(inputStream,Charset.forName(encoding))); try { @@ -256,7 +256,7 @@ public class AbstractXDBXWriterHandler implements ContentHandler, Closeable { if (localName==null) { throw new SAXException("LocalName may not be null."); } - if (XMLConstants.isNameString(localName)==false) { + if (SAX3XMLConstants.isNameString(localName)==false) { throw new SAXException("LocalName of element is not valid in xml; '"+localName+"'"); } for (int i=0;i0 && elements.peek().equals(localName)==false) { throw new SAXException("Unexpected end tag: "+localName+" should be: "+elements.peek()); } @@ -482,13 +482,13 @@ public class AbstractXDBXWriterHandler implements ContentHandler, Closeable { * Escape and prints xml characters. * @param text The text to write. * @throws SAXException When IOException has happend while printing. - * @see org.x4o.o2o.io.sax3.ContentWriter#characters(java.lang.String) + * @see org.x4o.sax3.io.ContentWriter#characters(java.lang.String) */ public void characters(String text) throws SAXException { if (text==null) { return; } - charactersRaw(XMLConstants.escapeCharacters(text)); + charactersRaw(SAX3XMLConstants.escapeCharacters(text)); } public void characters(char c) throws SAXException { @@ -521,7 +521,7 @@ public class AbstractXDBXWriterHandler implements ContentHandler, Closeable { * * @param text The text to print. * @throws SAXException When IOException has happend while printing. - * @see org.x4o.o2o.io.sax3.ContentWriter#ignorableWhitespace(java.lang.String) + * @see org.x4o.sax3.io.ContentWriter#ignorableWhitespace(java.lang.String) */ public void ignorableWhitespace(String text) throws SAXException { if (text==null) { @@ -549,13 +549,13 @@ public class AbstractXDBXWriterHandler implements ContentHandler, Closeable { */ public void processingInstruction(String target, String data) throws SAXException { String targetLow = target.toLowerCase(); - if (targetLow.startsWith(XMLConstants.XML)) { + if (targetLow.startsWith(SAX3XMLConstants.XML)) { throw new SAXException("Processing instruction may not start with xml."); } - if (XMLConstants.isNameString(target)==false) { + if (SAX3XMLConstants.isNameString(target)==false) { throw new SAXException("Processing instruction target is invalid name; '"+target+"'"); } - if (XMLConstants.isCharString(data)==false) { + if (SAX3XMLConstants.isCharString(data)==false) { throw new SAXException("Processing instruction data is invalid char; '"+data+"'"); } @@ -609,7 +609,7 @@ public class AbstractXDBXWriterHandler implements ContentHandler, Closeable { * * @param text The text to write. * @throws SAXException When IOException has happend while printing. - * @see org.x4o.o2o.io.sax3.ContentWriter#comment(java.lang.String) + * @see org.x4o.sax3.io.ContentWriter#comment(java.lang.String) */ public void comment(String text) throws SAXException { if (text==null) { @@ -628,7 +628,7 @@ public class AbstractXDBXWriterHandler implements ContentHandler, Closeable { text = text + " "; } } - writeTagLengthValue(XDBXContentTag.COMMENT, XMLConstants.escapeCharactersComment(text,"", 0)); + writeTagLengthValue(XDBXContentTag.COMMENT, SAX3XMLConstants.escapeCharactersComment(text,"", 0)); } protected void writeFlush() throws SAXException { diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/AbstractXDBXWriterLexical.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/AbstractXDBXWriterLexical.java similarity index 90% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/AbstractXDBXWriterLexical.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/AbstractXDBXWriterLexical.java index 723181f..aae6c2a 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/AbstractXDBXWriterLexical.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/AbstractXDBXWriterLexical.java @@ -20,11 +20,11 @@ * 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. */ -package org.x4o.o2o.io.sax3.xdbx; +package org.x4o.sax3.io.xdbx; import java.io.OutputStream; -import org.x4o.o2o.io.sax3.XMLConstants; +import org.x4o.sax3.io.SAX3XMLConstants; import org.xml.sax.SAXException; import org.xml.sax.ext.LexicalHandler; @@ -86,7 +86,7 @@ public abstract class AbstractXDBXWriterLexical extends AbstractXDBXWriterHandle } /** - * @see org.x4o.o2o.io.sax3.AbstractContentWriterHandler#characters(char[], int, int) + * @see org.x4o.sax3.io.AbstractContentWriterHandler#characters(char[], int, int) */ @Override public void characters(char[] ch, int start, int length) throws SAXException { @@ -94,12 +94,12 @@ public abstract class AbstractXDBXWriterLexical extends AbstractXDBXWriterHandle } /** - * @see org.x4o.o2o.io.sax3.AbstractContentWriterHandler#characters(java.lang.String) + * @see org.x4o.sax3.io.AbstractContentWriterHandler#characters(java.lang.String) */ @Override public void characters(String text) throws SAXException { if (printCDATA) { - String textSafe = XMLConstants.escapeCharactersCdata(text,"",""); + String textSafe = SAX3XMLConstants.escapeCharactersCdata(text,"",""); writeTagLengthValue(XDBXContentTag.TEXT_CDATA, textSafe); } else { super.characters(text); diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXConstants.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXConstants.java similarity index 98% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXConstants.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXConstants.java index 3b872f2..6b5430d 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXConstants.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXConstants.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3.xdbx; +package org.x4o.sax3.io.xdbx; /** * XDBXConstants for writing binary XML. diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXContentTag.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXContentTag.java similarity index 98% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXContentTag.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXContentTag.java index 3cb0945..b1a7ea2 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXContentTag.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXContentTag.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3.xdbx; +package org.x4o.sax3.io.xdbx; /** * XDBXContentTag indicate the binary tag of the XDBX stream. diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXReaderXml.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXReaderXml.java similarity index 99% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXReaderXml.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXReaderXml.java index bca9445..d401619 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXReaderXml.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXReaderXml.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3.xdbx; +package org.x4o.sax3.io.xdbx; import java.io.IOException; import java.io.InputStream; @@ -29,7 +29,7 @@ import java.util.HashMap; import java.util.Map; import java.util.Stack; -import org.x4o.o2o.io.sax3.ContentWriter; +import org.x4o.sax3.io.ContentWriter; import org.xml.sax.SAXException; import org.xml.sax.helpers.AttributesImpl; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXWriterXml.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXWriterXml.java similarity index 98% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXWriterXml.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXWriterXml.java index cb59d2e..4967809 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/XDBXWriterXml.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/XDBXWriterXml.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3.xdbx; +package org.x4o.sax3.io.xdbx; import java.io.OutputStream; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/package-info.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/package-info.java similarity index 97% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/package-info.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/package-info.java index 1883c4c..20e874c 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/xdbx/package-info.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/xdbx/package-info.java @@ -26,4 +26,4 @@ * * @since 1.0 */ -package org.x4o.o2o.io.sax3.xdbx; +package org.x4o.sax3.io.xdbx; diff --git a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/package-info.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/package-info.java similarity index 95% rename from nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/package-info.java rename to nx01-x4o-sax3/src/main/java/org/x4o/sax3/package-info.java index 8166a00..b412afe 100644 --- a/nx01-x4o-o2o/src/main/java/org/x4o/o2o/io/sax3/package-info.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/package-info.java @@ -22,8 +22,9 @@ */ /** - * The SAX Extended classes and interfaces. + * X4O SAX 3 and binary XML support classes. + * * * @since 1.0 */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3; diff --git a/nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/ContentWriterXmlAttributeTest.java b/nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/SAX3WriterXmlAttributeTest.java similarity index 74% rename from nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/ContentWriterXmlAttributeTest.java rename to nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/SAX3WriterXmlAttributeTest.java index a863c9a..8a9fb5b 100644 --- a/nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/ContentWriterXmlAttributeTest.java +++ b/nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/SAX3WriterXmlAttributeTest.java @@ -20,9 +20,10 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3.io; import java.io.ByteArrayInputStream; +import java.io.IOException; import java.io.StringWriter; import java.nio.charset.StandardCharsets; import java.util.HashMap; @@ -33,6 +34,7 @@ import javax.xml.parsers.SAXParserFactory; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import org.x4o.sax3.SAX3WriterXml; import org.xml.sax.InputSource; import org.xml.sax.SAXException; import org.xml.sax.XMLReader; @@ -44,19 +46,18 @@ import org.xml.sax.helpers.AttributesImpl; * @author Willem Cazander * @version 1.0 S 17, 2012 */ -public class ContentWriterXmlAttributeTest { +public class SAX3WriterXmlAttributeTest { @Test public void testAttributeNormal() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - AttributesImpl atts = new AttributesImpl(); - atts.addAttribute ("", "attr", "", "", "foobar"); - writer.startElementEnd("", "test", "", atts); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + AttributesImpl atts = new AttributesImpl(); + atts.addAttribute ("", "attr", "", "", "foobar"); + writer.startElementEnd("", "test", "", atts); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -66,14 +67,13 @@ public class ContentWriterXmlAttributeTest { @Test public void testAttributeEscape() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - AttributesImpl atts = new AttributesImpl(); - atts.addAttribute ("", "attr", "", "", " & 'foobar' is \"quoted\"!"); - writer.startElementEnd("", "test", "", atts); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + AttributesImpl atts = new AttributesImpl(); + atts.addAttribute ("", "attr", "", "", " & 'foobar' is \"quoted\"!"); + writer.startElementEnd("", "test", "", atts); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -83,7 +83,7 @@ public class ContentWriterXmlAttributeTest { @Test public void testAttributeWhiteSpace() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); + SAX3WriterXml writer = new SAX3WriterXml(outputWriter); writer.startDocument(); Assertions.assertThrows(SAXException.class, () -> { @@ -121,14 +121,13 @@ public class ContentWriterXmlAttributeTest { @Test public void testAttributeChinees() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - AttributesImpl atts = new AttributesImpl(); - atts.addAttribute ("", "仙上主天", "", "", "仙上主天"); - writer.startElementEnd("", "chinees", "", atts); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + AttributesImpl atts = new AttributesImpl(); + atts.addAttribute ("", "仙上主天", "", "", "仙上主天"); + writer.startElementEnd("", "chinees", "", atts); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -144,16 +143,15 @@ public class ContentWriterXmlAttributeTest { @Test public void testAttributeBrahmi() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - // Legal by spec, but not in JVM SAX Reader - writer.startDocument(); - AttributesImpl atts = new AttributesImpl(); - atts.addAttribute ("", "𑀳𑁂𑀮𑀺𑀉𑁄𑀤𑁄𑀭𑁂𑀡𑀪𑀸𑀕", "", "", "𑀳𑁂𑀮𑀺𑀉𑁄𑀤𑁄𑀭𑁂𑀡𑀪𑀸𑀕"); - atts.addAttribute ("", "ᒡᒢᑊᒻᒻᓫᔿ", "", "", "ᒡᒢᑊᒻᒻᓫᔿ"); - writer.startElementEnd("", "test", "", atts); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + // Legal by spec, but not in JVM SAX Reader + writer.startDocument(); + AttributesImpl atts = new AttributesImpl(); + atts.addAttribute ("", "𑀳𑁂𑀮𑀺𑀉𑁄𑀤𑁄𑀭𑁂𑀡𑀪𑀸𑀕", "", "", "𑀳𑁂𑀮𑀺𑀉𑁄𑀤𑁄𑀭𑁂𑀡𑀪𑀸𑀕"); + atts.addAttribute ("", "ᒡᒢᑊᒻᒻᓫᔿ", "", "", "ᒡᒢᑊᒻᒻᓫᔿ"); + writer.startElementEnd("", "test", "", atts); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -168,29 +166,28 @@ public class ContentWriterXmlAttributeTest { }); } - private String createLongAttribute(Map para) throws SAXException { + private String createLongAttribute(Map para) throws SAXException, IOException { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - for (String key:para.keySet()) { - Object value = para.get(key); - writer.getPropertyConfig().setProperty(key, value); + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + for (String key:para.keySet()) { + Object value = para.get(key); + writer.getPropertyConfig().setProperty(key, value); + } + + AttributesImpl atts = new AttributesImpl(); + String data = "_FOR_FOO_BAR"; + String dataValue = "LOOP"; + for (int i=0;i<15;i++) { + atts.addAttribute("", "attr"+i, "", "", dataValue+=data); + } + writer.startDocument(); + writer.startElement("", "test", "", atts); + writer.startElement("", "testNode", "", new AttributesImpl()); + writer.endElement("", "testNode", ""); + writer.endElement("", "test", ""); + writer.endDocument(); } - - AttributesImpl atts = new AttributesImpl(); - String data = "_FOR_FOO_BAR"; - String dataValue = "LOOP"; - for (int i=0;i<15;i++) { - atts.addAttribute("", "attr"+i, "", "", dataValue+=data); - } - writer.startDocument(); - writer.startElement("", "test", "", atts); - writer.startElement("", "testNode", "", new AttributesImpl()); - writer.endElement("", "testNode", ""); - writer.endElement("", "test", ""); - writer.endDocument(); - - String output = outputWriter.toString(); - return output; + return outputWriter.toString(); } @Test @@ -205,7 +202,7 @@ public class ContentWriterXmlAttributeTest { @Test public void testAttributeLongPerLine() throws Exception { Map para = new HashMap(); - para.put(ContentWriterXml.OUTPUT_LINE_PER_ATTRIBUTE, true); + para.put(SAX3WriterXml.OUTPUT_LINE_PER_ATTRIBUTE, true); String output = createLongAttribute(para); int newlines = output.split("\n").length; Assertions.assertNotNull(output); @@ -215,7 +212,7 @@ public class ContentWriterXmlAttributeTest { @Test public void testAttributeLongSplit80() throws Exception { Map para = new HashMap(); - para.put(ContentWriterXml.OUTPUT_LINE_BREAK_WIDTH, 80); + para.put(SAX3WriterXml.OUTPUT_LINE_BREAK_WIDTH, 80); String output = createLongAttribute(para); int newlines = output.split("\n").length; Assertions.assertNotNull(output); @@ -225,7 +222,7 @@ public class ContentWriterXmlAttributeTest { @Test public void testAttributeLongSplit180() throws Exception { Map para = new HashMap(); - para.put(ContentWriterXml.OUTPUT_LINE_BREAK_WIDTH, 180); + para.put(SAX3WriterXml.OUTPUT_LINE_BREAK_WIDTH, 180); String output = createLongAttribute(para); int newlines = output.split("\n").length; Assertions.assertNotNull(output); diff --git a/nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/ContentWriterXmlCDataTest.java b/nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/SAX3WriterXmlCDataTest.java similarity index 71% rename from nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/ContentWriterXmlCDataTest.java rename to nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/SAX3WriterXmlCDataTest.java index 5495167..8bcae75 100644 --- a/nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/ContentWriterXmlCDataTest.java +++ b/nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/SAX3WriterXmlCDataTest.java @@ -20,12 +20,13 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3.io; import java.io.StringWriter; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import org.x4o.sax3.SAX3WriterXml; /** * ContentWriterXmlCDataTest tests cdata xml escaping. @@ -33,17 +34,16 @@ import org.junit.jupiter.api.Test; * @author Willem Cazander * @version 1.0 Sep 17, 2013 */ -public class ContentWriterXmlCDataTest { +public class SAX3WriterXmlCDataTest { @Test public void testCDATANone() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.characters("foobar"); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.characters("foobar"); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -53,12 +53,11 @@ public class ContentWriterXmlCDataTest { @Test public void testCDATANoneTagEscape() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.characters("foobar"); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.characters("foobar"); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -68,14 +67,13 @@ public class ContentWriterXmlCDataTest { @Test public void testCDATANormal() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.startCDATA(); - writer.characters("foobar"); - writer.endCDATA(); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.startCDATA(); + writer.characters("foobar"); + writer.endCDATA(); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -85,14 +83,13 @@ public class ContentWriterXmlCDataTest { @Test public void testCDATAEscapeTag() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.startCDATA(); - writer.characters("foobar"); - writer.endCDATA(); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.startCDATA(); + writer.characters("foobar"); + writer.endCDATA(); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -102,14 +99,13 @@ public class ContentWriterXmlCDataTest { @Test public void testCDATAEscapeStart() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.startCDATA(); - writer.characters("0); @@ -119,14 +115,13 @@ public class ContentWriterXmlCDataTest { @Test public void testCDATAEscapeEnd() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.startCDATA(); - writer.characters("foobar]]>"); - writer.endCDATA(); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.startCDATA(); + writer.characters("foobar]]>"); + writer.endCDATA(); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -136,14 +131,13 @@ public class ContentWriterXmlCDataTest { @Test public void testCDATAEscapeEndEskimo() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.startCDATA(); - writer.characters("ᒡᒢᑊᒻ]]>ᒻᓫᔿ"); - writer.endCDATA(); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.startCDATA(); + writer.characters("ᒡᒢᑊᒻ]]>ᒻᓫᔿ"); + writer.endCDATA(); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -153,14 +147,13 @@ public class ContentWriterXmlCDataTest { @Test public void testCDATAEscapeInvalid() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.startCDATA(); - writer.characters("' are ]]>"); - writer.endCDATA(); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.startCDATA(); + writer.characters("' are ]]>"); + writer.endCDATA(); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -170,14 +163,13 @@ public class ContentWriterXmlCDataTest { @Test public void testCDATAEscapeValid() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.startCDATA(); - writer.characters("' are ]]>"); - writer.endCDATA(); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.startCDATA(); + writer.characters("' are ]]>"); + writer.endCDATA(); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); diff --git a/nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/ContentWriterXmlTest.java b/nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/SAX3WriterXmlTest.java similarity index 87% rename from nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/ContentWriterXmlTest.java rename to nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/SAX3WriterXmlTest.java index 3d72324..04ec171 100644 --- a/nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/ContentWriterXmlTest.java +++ b/nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/SAX3WriterXmlTest.java @@ -20,12 +20,13 @@ * 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. */ -package org.x4o.o2o.io.sax3; +package org.x4o.sax3.io; import java.io.StringWriter; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import org.x4o.sax3.SAX3WriterXml; import org.xml.sax.SAXException; import org.xml.sax.helpers.AttributesImpl; @@ -35,17 +36,16 @@ import org.xml.sax.helpers.AttributesImpl; * @author Willem Cazander * @version 1.0 Aug 26, 2012 */ -public class ContentWriterXmlTest { +public class SAX3WriterXmlTest { @Test public void testCharactersNormal() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.characters("test is foobar!"); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.characters("test is foobar!"); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -55,12 +55,11 @@ public class ContentWriterXmlTest { @Test public void testCharactersEscape() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.characters(" & 'foobar' is \"quoted\"!"); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.characters(" & 'foobar' is \"quoted\"!"); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -70,12 +69,11 @@ public class ContentWriterXmlTest { @Test public void testCommentNormal() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.comment("foobar"); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.comment("foobar"); + writer.endDocument(); + } String output = outputWriter.toString(); Assertions.assertNotNull(output); Assertions.assertTrue(output.length()>0); @@ -85,12 +83,11 @@ public class ContentWriterXmlTest { @Test public void testCommentEscape() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); - - writer.startDocument(); - writer.comment(""); - writer.endDocument(); - + try (SAX3WriterXml writer = new SAX3WriterXml(outputWriter)) { + writer.startDocument(); + writer.comment(""); + writer.endDocument(); + } // note two space because auto-space is before escaping and places spaces over comment tags. // 1) "" - argu // 2) " " - auto-space (default enabled) @@ -106,7 +103,7 @@ public class ContentWriterXmlTest { @Test public void testXmlInvalid() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); + SAX3WriterXml writer = new SAX3WriterXml(outputWriter); AttributesImpl atts = new AttributesImpl(); Exception e = null; @@ -128,7 +125,7 @@ public class ContentWriterXmlTest { @Test public void testXmlInvalidEnd() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); + SAX3WriterXml writer = new SAX3WriterXml(outputWriter); AttributesImpl atts = new AttributesImpl(); Exception e = null; @@ -150,7 +147,7 @@ public class ContentWriterXmlTest { @Test public void testProcessingInstruction() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); + SAX3WriterXml writer = new SAX3WriterXml(outputWriter); AttributesImpl atts = new AttributesImpl(); Exception e = null; @@ -173,7 +170,7 @@ public class ContentWriterXmlTest { @Test public void testProcessingInstructionInline() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); + SAX3WriterXml writer = new SAX3WriterXml(outputWriter); AttributesImpl atts = new AttributesImpl(); Exception e = null; @@ -197,7 +194,7 @@ public class ContentWriterXmlTest { @Test public void testProcessingInstructionTargetXmlPrefix() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); + SAX3WriterXml writer = new SAX3WriterXml(outputWriter); Exception e = null; try { writer.startDocument(); @@ -214,7 +211,7 @@ public class ContentWriterXmlTest { @Test public void testProcessingInstructionTargetNoneNameChar() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); + SAX3WriterXml writer = new SAX3WriterXml(outputWriter); Exception e = null; try { writer.startDocument(); @@ -232,7 +229,7 @@ public class ContentWriterXmlTest { @Test public void testProcessingInstructionDataNoneChar() throws Exception { StringWriter outputWriter = new StringWriter(); - ContentWriterXml writer = new ContentWriterXml(outputWriter); + SAX3WriterXml writer = new SAX3WriterXml(outputWriter); Exception e = null; try { writer.startDocument(); diff --git a/nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/xdbx/XDBXReaderXmlTest.java b/nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/xdbx/XDBXReaderXmlTest.java similarity index 89% rename from nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/xdbx/XDBXReaderXmlTest.java rename to nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/xdbx/XDBXReaderXmlTest.java index 67bad9a..6541d0b 100644 --- a/nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/xdbx/XDBXReaderXmlTest.java +++ b/nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/xdbx/XDBXReaderXmlTest.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3.xdbx; +package org.x4o.sax3.io.xdbx; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -33,7 +33,7 @@ import javax.xml.parsers.SAXParserFactory; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -import org.x4o.o2o.io.sax3.ContentWriterXml; +import org.x4o.sax3.SAX3WriterXml; import org.xml.sax.InputSource; import org.xml.sax.XMLReader; import org.xml.sax.helpers.AttributesImpl; @@ -49,16 +49,16 @@ public class XDBXReaderXmlTest { @Test public void testReadWrite() throws Exception { ByteArrayOutputStream baos = new ByteArrayOutputStream(); - XDBXWriterXml writer = new XDBXWriterXml(baos); - - writer.startDocument(); - AttributesImpl atts = new AttributesImpl(); - atts.addAttribute ("", "attr", "", "", "foobar"); - writer.startElementEnd("", "test", "", atts); - writer.endDocument(); + try (XDBXWriterXml writer = new XDBXWriterXml(baos)) { + writer.startDocument(); + AttributesImpl atts = new AttributesImpl(); + atts.addAttribute ("", "attr", "", "", "foobar"); + writer.startElementEnd("", "test", "", atts); + writer.endDocument(); + } StringWriter outputXmlStr = new StringWriter(); - ContentWriterXml outputXml = new ContentWriterXml(outputXmlStr); + SAX3WriterXml outputXml = new SAX3WriterXml(outputXmlStr); XDBXReaderXml reader = new XDBXReaderXml(outputXml); byte[] writeData = baos.toByteArray(); ByteArrayInputStream bais = new ByteArrayInputStream(writeData); @@ -84,7 +84,7 @@ public class XDBXReaderXmlTest { saxReader.parse(new InputSource(new FileInputStream(new File("../pom.xml")))); StringWriter outputXmlStr = new StringWriter(); - ContentWriterXml outputXml = new ContentWriterXml(outputXmlStr); + SAX3WriterXml outputXml = new SAX3WriterXml(outputXmlStr); XDBXReaderXml reader = new XDBXReaderXml(outputXml); ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); reader.parse(bais); diff --git a/nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/xdbx/XDBXWriterXmlTest.java b/nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/xdbx/XDBXWriterXmlTest.java similarity index 85% rename from nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/xdbx/XDBXWriterXmlTest.java rename to nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/xdbx/XDBXWriterXmlTest.java index 892d2bb..5b64b08 100644 --- a/nx01-x4o-o2o/src/test/java/org/x4o/o2o/io/sax3/xdbx/XDBXWriterXmlTest.java +++ b/nx01-x4o-sax3/src/test/java/org/x4o/sax3/io/xdbx/XDBXWriterXmlTest.java @@ -20,7 +20,7 @@ * 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. */ -package org.x4o.o2o.io.sax3.xdbx; +package org.x4o.sax3.io.xdbx; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -28,7 +28,7 @@ import java.io.StringWriter; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -import org.x4o.o2o.io.sax3.ContentWriterXml; +import org.x4o.sax3.SAX3WriterXml; import org.xml.sax.helpers.AttributesImpl; /** @@ -42,27 +42,28 @@ public class XDBXWriterXmlTest { @Test public void testExample1DefaultEncoding() throws Exception { ByteArrayOutputStream baos = new ByteArrayOutputStream(); - XDBXWriterXml writer = new XDBXWriterXml(baos); - writer.getPropertyConfig().setProperty(XDBXWriterXml.OUTPUT_DECLARATION, false); - - writer.startDocument(); - writer.startElement("", "root", "", new AttributesImpl()); - - AttributesImpl atts = new AttributesImpl(); - atts.addAttribute ("", "mgr", "", "", "NO"); - writer.startElement("", "name", "", atts); - writer.characters("Joe"); - writer.endElement("", "name", ""); - - writer.startElement("", "name", "", new AttributesImpl()); - writer.characters("Susan"); - writer.endElement("", "name", ""); - writer.startElement("", "name", "", new AttributesImpl()); - writer.characters("Bill"); - writer.endElement("", "name", ""); - - writer.endElement("", "root", ""); - writer.endDocument(); + try (XDBXWriterXml writer = new XDBXWriterXml(baos)) { + writer.getPropertyConfig().setProperty(XDBXWriterXml.OUTPUT_DECLARATION, false); + + writer.startDocument(); + writer.startElement("", "root", "", new AttributesImpl()); + + AttributesImpl atts = new AttributesImpl(); + atts.addAttribute ("", "mgr", "", "", "NO"); + writer.startElement("", "name", "", atts); + writer.characters("Joe"); + writer.endElement("", "name", ""); + + writer.startElement("", "name", "", new AttributesImpl()); + writer.characters("Susan"); + writer.endElement("", "name", ""); + writer.startElement("", "name", "", new AttributesImpl()); + writer.characters("Bill"); + writer.endElement("", "name", ""); + + writer.endElement("", "root", ""); + writer.endDocument(); + } byte[] output = baos.toByteArray(); int outIdx = 8; @@ -139,38 +140,39 @@ public class XDBXWriterXmlTest { @Test public void testExample3StringIds() throws Exception { ByteArrayOutputStream baos = new ByteArrayOutputStream(); - XDBXWriterXml writer = new XDBXWriterXml(baos); - writer.getPropertyConfig().setProperty(XDBXWriterXml.OUTPUT_DECLARATION, false); - AttributesImpl atts; - - writer.startDocument(); - writer.startPrefixMapping("foo", "bar"); - writer.startElement("", "root", "", new AttributesImpl()); - - writer.startElement("", "Person", "", new AttributesImpl()); - atts = new AttributesImpl(); - atts.addAttribute ("", "mgr", "", "", "NO"); - writer.startElement("", "name", "", atts); - writer.characters("Bill"); - writer.endElement("", "name", ""); - writer.startElement("bar", "age", "age", new AttributesImpl()); - writer.characters("35"); - writer.endElement("bar", "age", "age"); - writer.endElement("", "Person", ""); - - writer.startElement("", "Person", "", new AttributesImpl()); - atts = new AttributesImpl(); - atts.addAttribute ("", "mgr", "", "", "NO"); - writer.startElement("", "name", "", atts); - writer.characters("Joe"); - writer.endElement("", "name", ""); - writer.startElement("bar", "age", "age", new AttributesImpl()); - writer.characters("45"); - writer.endElement("bar", "age", "age"); - writer.endElement("", "Person", ""); - - writer.endElement("", "root", ""); - writer.endDocument(); + try (XDBXWriterXml writer = new XDBXWriterXml(baos)) { + writer.getPropertyConfig().setProperty(XDBXWriterXml.OUTPUT_DECLARATION, false); + AttributesImpl atts; + + writer.startDocument(); + writer.startPrefixMapping("foo", "bar"); + writer.startElement("", "root", "", new AttributesImpl()); + + writer.startElement("", "Person", "", new AttributesImpl()); + atts = new AttributesImpl(); + atts.addAttribute ("", "mgr", "", "", "NO"); + writer.startElement("", "name", "", atts); + writer.characters("Bill"); + writer.endElement("", "name", ""); + writer.startElement("bar", "age", "age", new AttributesImpl()); + writer.characters("35"); + writer.endElement("bar", "age", "age"); + writer.endElement("", "Person", ""); + + writer.startElement("", "Person", "", new AttributesImpl()); + atts = new AttributesImpl(); + atts.addAttribute ("", "mgr", "", "", "NO"); + writer.startElement("", "name", "", atts); + writer.characters("Joe"); + writer.endElement("", "name", ""); + writer.startElement("bar", "age", "age", new AttributesImpl()); + writer.characters("45"); + writer.endElement("bar", "age", "age"); + writer.endElement("", "Person", ""); + + writer.endElement("", "root", ""); + writer.endDocument(); + } byte[] output = baos.toByteArray(); int outIdx = 8; @@ -290,7 +292,7 @@ public class XDBXWriterXmlTest { Assertions.assertEquals((byte)'Z', output[outIdx++]); StringWriter outputXmlStr = new StringWriter(); - ContentWriterXml outputXml = new ContentWriterXml(outputXmlStr); + SAX3WriterXml outputXml = new SAX3WriterXml(outputXmlStr); XDBXReaderXml reader = new XDBXReaderXml(outputXml); ByteArrayInputStream bais = new ByteArrayInputStream(output); reader.parse(bais); diff --git a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/web/WarpCorePlasmaInspectorServlet.java b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/web/WarpCorePlasmaInspectorServlet.java index 9360155..d82e094 100644 --- a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/web/WarpCorePlasmaInspectorServlet.java +++ b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/web/WarpCorePlasmaInspectorServlet.java @@ -31,9 +31,9 @@ import java.io.BufferedWriter; import java.io.IOException; import java.util.List; -import org.x4o.o2o.io.sax3.ContentWriterTagWrapper; -import org.x4o.o2o.io.sax3.ContentWriterXml; -import org.x4o.o2o.io.sax3.xdbx.XDBXWriterXml; +import org.x4o.sax3.SAX3WriterEnum; +import org.x4o.sax3.SAX3WriterXml; +import org.x4o.sax3.io.xdbx.XDBXWriterXml; import org.xml.sax.helpers.AttributesImpl; import jakarta.servlet.http.HttpServlet; @@ -56,7 +56,7 @@ public class WarpCorePlasmaInspectorServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { if ("true".equalsIgnoreCase(request.getParameter("___xdbx"))) { response.setContentType("application/octet-stream"); - try (ContentWriterTagWrapper writer = new ContentWriterTagWrapper(new XDBXWriterXml(response.getOutputStream()))) { + try (SAX3WriterEnum writer = new SAX3WriterEnum(new XDBXWriterXml(response.getOutputStream()))) { printReport(writer, request); } return; @@ -64,13 +64,13 @@ public class WarpCorePlasmaInspectorServlet extends HttpServlet { response.setContentType("text/xml"); response.setCharacterEncoding("utf-8"); BufferedWriter out = new BufferedWriter(response.getWriter()); - try (ContentWriterTagWrapper writer = new ContentWriterTagWrapper(new ContentWriterXml(out, response.getCharacterEncoding()))) { + try (SAX3WriterEnum writer = new SAX3WriterEnum(new SAX3WriterXml(out, response.getCharacterEncoding()))) { printReport(writer, request); out.flush(); } } - private void printReport(ContentWriterTagWrapper writer, HttpServletRequest request) { + private void printReport(SAX3WriterEnum writer, HttpServletRequest request) { WarpCoreReactor reactor = ZeroFungus.INSTANCE.getWarpCore(); List slots = reactor.listChilds(null); try { @@ -94,7 +94,7 @@ public class WarpCorePlasmaInspectorServlet extends HttpServlet { } } - private void printSlotContract(ContentWriterTagWrapper writer, WarpCorePlasmaIntermixChamber contract) throws IOException { + private void printSlotContract(SAX3WriterEnum writer, WarpCorePlasmaIntermixChamber contract) throws IOException { AttributesImpl atts = new AttributesImpl(); atts.addAttribute("", "path", "", "", contract.getSlot().getSlotPath()); writer.printTagStart(Tag.slot, atts); @@ -105,7 +105,7 @@ public class WarpCorePlasmaInspectorServlet extends HttpServlet { writer.printTagEnd(Tag.slot); } - private void printClaims(ContentWriterTagWrapper writer, Tag tag, List> clazzes) throws IOException { + private void printClaims(SAX3WriterEnum writer, Tag tag, List> clazzes) throws IOException { if (clazzes.isEmpty()) { return; } @@ -119,7 +119,7 @@ public class WarpCorePlasmaInspectorServlet extends HttpServlet { writer.printTagEnd(tag); } - private void printRequireServices(ContentWriterTagWrapper writer, List> clazzes) throws IOException { + private void printRequireServices(SAX3WriterEnum writer, List> clazzes) throws IOException { if (clazzes.isEmpty()) { return; } @@ -130,7 +130,7 @@ public class WarpCorePlasmaInspectorServlet extends HttpServlet { writer.printTagEnd(Tag.requireServices); } - private void printRequireSlots(ContentWriterTagWrapper writer, List slots) throws IOException { + private void printRequireSlots(SAX3WriterEnum writer, List slots) throws IOException { if (slots.isEmpty()) { return; } diff --git a/pom.xml b/pom.xml index 5040383..f3c13cc 100644 --- a/pom.xml +++ b/pom.xml @@ -53,6 +53,7 @@ nx01-x4o-tool-ant-plugin nx01-x4o-tool-maven-plugin nx01-zerofungus-server + nx01-x4o-sax3 @@ -393,6 +394,11 @@ nx01-x4o-o2o ${project.version} + + love.distributedrebirth.nx01 + nx01-x4o-sax3 + ${project.version} + love.distributedrebirth.nx01 nx01-x4o-tool-ant-plugin