67 lines
2.9 KiB
Plaintext
67 lines
2.9 KiB
Plaintext
~~
|
|
~~ Copyright (c) 2004-2012, 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.
|
|
~~
|
|
|
|
Load Modules
|
|
|
|
The default language loader of x4o loads all 'META-INF/<language>/<language>-modules.xml' resources found in the classpath.
|
|
|
|
So every extension library has its own modules definition file.
|
|
All options are allowed in multiple forms and order.
|
|
|
|
The xsd file can be found in the x4o-core project classpath 'META-INF/language/modules-1.0.xsd'.
|
|
|
|
+--
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<modules version="1.0"
|
|
xmlns="http://language.x4o.org/xml/ns/modules"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://language.x4o.org/xml/ns/modules http://language.x4o.org/xml/ns/modules-1.0.xsd"
|
|
>
|
|
<language version="1.0">
|
|
<eld-resource>foobar-lang.eld</eld-resource>
|
|
<eld-resource>foobar-backend-default.eld</eld-resource>
|
|
<eld-resource>foobar-backend-old.eld</eld-resource>
|
|
<module-loader>org.foo.bar.x4o.FooCustomModuleLoader</module-loader>
|
|
<module-loader>org.foo.bar.x4o.BarCustomModuleLoader</module-loader>
|
|
<sibling-loader>org.x4o.xml.meta.MetaLanguageSiblingLoader</sibling-loader>
|
|
<sibling-loader>org.foo.bar.x4o.HelloWorldQueryLanguageSiblingLoader</sibling-loader>
|
|
</language>
|
|
<language version="2.0">
|
|
<eld-resource>foobar-lang-2.0.eld</eld-resource>
|
|
</language>
|
|
</modules>
|
|
+--
|
|
|
|
* eld-resource
|
|
|
|
The eld-resource tag loads the eld resource relative from the modules xml resource.
|
|
|
|
* module-loader
|
|
|
|
The module-loader lets you define module extensions and namespaces in code.
|
|
|
|
* sibling-loader
|
|
|
|
The sibling-loader lets you load other languages into the language used.
|
|
|