Added providerHost in language module and remove name.

Added default uri/schemaUri/etc on namespace contexts.
Added default for id/tag of Element.
Added attribute aliases to xsd output.
Added name alias for id on namespace.
Added tag alias for id on element.
This commit is contained in:
Willem Cazander 2013-04-28 12:07:37 +02:00
parent d271edb1ee
commit 8f2408a207
33 changed files with 695 additions and 395 deletions

View file

@ -63,6 +63,8 @@ public class X4OWriterTest extends TestCase {
writer.writeFile(root, outputFile);
String text = new Scanner( outputFile ).useDelimiter("\\A").next();
outputFile.delete();
//System.out.println("Output: '\n"+text+"\n' end in "+outputFile.getAbsolutePath());
assertTrue(text.startsWith("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"));
assertTrue(text.contains("http://test.x4o.org/xml/ns/test-root"));
@ -71,10 +73,6 @@ public class X4OWriterTest extends TestCase {
assertTrue(text.contains("privateIntegerTypeField=\"123\""));
assertTrue(text.contains("privateDoubleObjectField=\"123.45\""));
assertTrue(text.contains("privateStringObjectField=\"x4o\""));
//System.out.println("Output: '\n"+text+"\n' end in "+outputFile.getAbsolutePath());
outputFile.delete();
}
public void testWriterSwiXmlOutput() throws Exception {

View file

@ -29,8 +29,8 @@
xmlns:conv="http://eld.x4o.org/xml/ns/eld-conv"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://eld.x4o.org/xml/ns/eld-root http://eld.x4o.org/xml/ns/eld-root-1.0.xsd"
providerName="swixml2.test.x4o.org"
name="Swixml2 Language"
providerHost="swixml2.test.x4o.org"
providerName="Swixml2 Language"
id="swixml2-module"
>
@ -88,25 +88,12 @@
</elementInterface>
<namespace
uri="http://swixml.x4o.org/xml/ns/swixml-root"
schemaUri="http://swixml.x4o.org/xml/ns/swixml-root-2.0.xsd"
schemaResource="swixml-root-2.0.xsd"
schemaPrefix="sx-root"
name="Root element"
languageRoot="true"
id="sx-root"
>
<!-- Single element in language root to create nice tree, for imports in xsd namespace aware generated files. -->
<element tag="frame" objectClass="javax.swing.JFrame"/>
<namespace id="root" languageRoot="true">
<element tag="frame" objectClass="javax.swing.JFrame">
<description>Single element in language root to create nice tree, for imports in xsd namespace aware generated files.</description>
</element>
</namespace>
<namespace
uri="http://swixml.x4o.org/xml/ns/swixml-lang"
schemaUri="http://swixml.x4o.org/xml/ns/swixml-lang-2.0.xsd"
schemaResource="swixml-lang-2.0.xsd"
schemaPrefix="sx-lang"
id="sx-lang"
>
<namespace id="lang">
<!-- Note frame should not be here(it can but xsd needs root), but else classic xml does not parse without xmlns additions. -->
<element tag="frame" objectClass="javax.swing.JFrame"/>
<element tag="menubar" objectClass="javax.swing.JMenuBar"/>

View file

@ -29,8 +29,8 @@
xmlns:conv="http://eld.x4o.org/xml/ns/eld-conv"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://eld.x4o.org/xml/ns/eld-root http://eld.x4o.org/xml/ns/eld-root-1.0.xsd"
providerName="swixml3.test.x4o.org"
name="Swixml3 Language"
providerHost="swixml.x4o.org"
providerName="Swixml3 Language"
id="swixml3-module"
>
@ -83,29 +83,14 @@
<conv:beanConverter bean.class="org.x4o.xml.test.swixml.conv.BorderConverter"/>
</attribute>
</elementInterface>
<namespace
uri="http://swixml.x4o.org/xml/ns/swixml-root"
schemaUri="http://swixml.x4o.org/xml/ns/swixml-root-3.0.xsd"
schemaResource="swixml-root-3.0.xsd"
schemaPrefix="sx-root"
name="Root element"
languageRoot="true"
id="sx-root"
>
<element tag="JFrame" objectClass="javax.swing.JFrame"/>
<namespace id="root" languageRoot="true">
<element objectClass="javax.swing.JFrame"/>
</namespace>
<namespace
uri="http://swixml.x4o.org/xml/ns/swixml-lang"
schemaUri="http://swixml.x4o.org/xml/ns/swixml-lang-3.0.xsd"
schemaResource="swixml-lang-3.0.xsd"
schemaPrefix="sx-lang"
id="sx-lang"
>
<element tag="JMenubar" objectClass="javax.swing.JMenuBar"/>
<element tag="JMenu" objectClass="javax.swing.JMenu"/>
<element tag="JMenuItem" objectClass="javax.swing.JMenuItem">
<namespace id="lang">
<element objectClass="javax.swing.JMenuBar"/>
<element objectClass="javax.swing.JMenu"/>
<element objectClass="javax.swing.JMenuItem">
<attribute id="accelerator">
<conv:beanConverter bean.class="org.x4o.xml.test.swixml.conv.KeyStrokeConverter"/>
<attributeAlias name="Accelerator"/>
@ -114,9 +99,9 @@
<attribute id="Action" runBeanValue="false"/>
<configurator id="menuitem-action" bean.class="org.x4o.xml.test.swixml.SwiXmlActionConfigurator"/>
</element>
<element tag="JMenu.Separator" />
<element tag="JPanel" objectClass="javax.swing.JPanel"/>
<element tag="JSplitPane" objectClass="javax.swing.JSplitPane">
<element id="JMenu.Separator" description="TODO"/>
<element objectClass="javax.swing.JPanel"/>
<element objectClass="javax.swing.JSplitPane">
<attribute id="orientation">
<conv:beanConverter bean.class="org.x4o.xml.test.swixml.conv.JSplitPaneOrientationConverter"/>
</attribute>
@ -125,16 +110,16 @@
</attribute>
</element>
<element tag="JLayeredPane" objectClass="javax.swing.JLayeredPane"/>
<element tag="JRootPane" objectClass="javax.swing.JRootPane"/>
<element tag="JScrollPane" objectClass="javax.swing.JScrollPane"/>
<element tag="JTree" objectClass="javax.swing.JTree"/>
<element tag="JButton" objectClass="javax.swing.JButton"/>
<element tag="JTable" objectClass="javax.swing.JTable"/>
<element tag="JTextArea" objectClass="javax.swing.JTextArea"/>
<element tag="JLabel" objectClass="javax.swing.JLabel"/>
<element tag="JTextField" objectClass="javax.swing.JTextField"/>
<element tag="JDesktopPane" objectClass="javax.swing.JDesktopPane"/>
<element tag="JInternalFrame" objectClass="javax.swing.JInternalFrame"/>
<element objectClass="javax.swing.JLayeredPane"/>
<element objectClass="javax.swing.JRootPane"/>
<element objectClass="javax.swing.JScrollPane"/>
<element objectClass="javax.swing.JTree"/>
<element objectClass="javax.swing.JButton"/>
<element objectClass="javax.swing.JTable"/>
<element objectClass="javax.swing.JTextArea"/>
<element objectClass="javax.swing.JLabel"/>
<element objectClass="javax.swing.JTextField"/>
<element objectClass="javax.swing.JDesktopPane"/>
<element objectClass="javax.swing.JInternalFrame"/>
</namespace>
</root:module>

View file

@ -29,8 +29,8 @@
xmlns:conv="http://eld.x4o.org/xml/ns/eld-conv"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://eld.x4o.org/xml/ns/eld-root http://eld.x4o.org/xml/ns/eld-root-1.0.xsd"
providerName="test.x4o.org"
name="Test Language"
providerName="test Language"
providerHost="test.x4o.org"
id="test-module"
>

View file

@ -29,6 +29,34 @@
xsi:schemaLocation="http://language.x4o.org/xml/ns/drivers http://language.x4o.org/xml/ns/drivers-1.0.xsd"
>
<driver language="test" className="org.x4o.xml.test.TestDriver"/>
<!--
<languageResourcePathPrefix>META-INF</languageResourcePathPrefix>
<languageResourceModulesFileName>-modules.xml</languageResourceModulesFileName>
<defaultElementNamespaceContext>org.x4o.xml.element.DefaultElementNamespaceContext</defaultElementNamespaceContext>
<defaultElementInterface>org.x4o.xml.element.DefaultElementInterface</defaultElementInterface>
<defaultElement>org.x4o.xml.element.DefaultElement</defaultElement>
<defaultElementClass>org.x4o.xml.element.DefaultElementClass</defaultElementClass>
<defaultElementClassAttribute></defaultElementClassAttribute>
<defaultElementLanguageModule></defaultElementLanguageModule>
<defaultElementBodyComment></defaultElementBodyComment>
<defaultElementBodyCharacters></defaultElementBodyCharacters>
<defaultElementBodyWhitespace></defaultElementBodyWhitespace>
<defaultElementNamespaceInstanceProvider></defaultElementNamespaceInstanceProvider>
<defaultElementAttributeValueParser></defaultElementAttributeValueParser>
<defaultElementObjectPropertyValue></defaultElementObjectPropertyValue>
<defaultElementAttributeHandlerComparator></defaultElementAttributeHandlerComparator>
<properties>
<property key="" value=""/>
</properties>
<lockLanguage>true</lockLanguage>
<secure-resources>
<secure-resource resource="META-INF/test/test-modules.xml" hash="887486557" hashType="MD5"/>
<secure-resource resource="META-INF/test/test-lang.eld" hash="238758509486557" hashType="MD5"/>
</secure-resources>
</driver>
-->
<driver language="swixml" className="org.x4o.xml.test.swixml.SwiXmlDriver"/>
<defaultDriver language="junit-defp"/>
</drivers>

View file

@ -30,7 +30,7 @@
xsi:schemaLocation="http://test.x4o.org/xml/ns/test-root test-root-1.0.xsd"
name="mainframe" size="800,600" title="SWIXML-X4O" plaf="com.sun.java.swing.plaf.windows.WindowsLookAndFeel" defaultCloseOperation="3"
>
<JMenubar name="menubar">
<JMenuBar name="menubar">
<JMenu name="filemenu" text="File">
<JMenuItem name="mi_new" text="New" icon="icons/new.gif" mnemonic="VK_N" accelerator="control N" Action="newAction"/>
<JMenuItem name="mi_open" text="Open" icon="icons/open.gif" mnemonic="VK_O" Accelerator="control O" ActionCommand="open"/>
@ -45,7 +45,7 @@
<JMenu text="Help">
<JMenuItem name="mi_about" text="About" enabled="true" icon="icons/info.gif" Accelerator="alt A" Action="aboutAction" />
</JMenu>
</JMenubar>
</JMenuBar>
<JDesktopPane>
<JInternalFrame title="Flow Layout (right aligned)" bounds="10,10,150,150" layout="FlowLayout(FlowLayout.RIGHT)" visible="true" resizable="true">
<JButton text="1"/>