Added warp-ship.xml boot structure.

This commit is contained in:
Willem Cazander 2022-02-24 02:28:26 +01:00
parent d032830cf9
commit 41dc5bcc88
8 changed files with 165 additions and 3 deletions

View file

@ -2,9 +2,8 @@ package love.distributedrebirth.warpme;
public class Warpᵐᵉ { public class Warpᵐᵉ {
//public static final String WARP_BOOT = "warp-boot.xml";
public static final String WARP_CORE = "warp-core.xml"; public static final String WARP_CORE = "warp-core.xml";
public static final String WARP_HASH = "warp-hash.xml"; public static final String WARP_HASH = "warp-hash.xml";
public static final String WARP_SEA = "warp-sea.xml"; public static final String WARP_SEA = "warp-sea.xml";
public static final String WARP_ROOT = "warp-root.xml"; public static final String WARP_SHIP = "warp-ship.xml";
} }

View file

@ -0,0 +1,17 @@
package love.distributedrebirth.warpme.ship;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class WaterDevice {
private WaterShip ship;
public WaterShip theShip() {
return ship;
}
public void buildShip(WaterShip ship) {
this.ship = ship;
}
}

View file

@ -0,0 +1,27 @@
package love.distributedrebirth.warpme.ship;
import org.x4o.xml.X4ODriver;
import org.x4o.xml.X4ODriverManager;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class WaterDeviceDriver extends X4ODriver<WaterDevice> {
static final public String LANGUAGE_NAME = "warp-ship";
static final public String[] LANGUAGE_VERSIONS = new String[]{X4ODriver.DEFAULT_LANGUAGE_VERSION};
@Override
public String getLanguageName() {
return LANGUAGE_NAME;
}
@Override
public String[] getLanguageVersions() {
return LANGUAGE_VERSIONS;
}
static public WaterDeviceDriver newInstance() {
return (WaterDeviceDriver)X4ODriverManager.getX4ODriver(LANGUAGE_NAME);
}
}

View file

@ -0,0 +1,44 @@
package love.distributedrebirth.warpme.ship;
import java.util.ArrayList;
import java.util.List;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class WaterShip {
private String name;
private String engine;
private List<WaterShipOcean> shipOceans = new ArrayList<>();
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEngine() {
return engine;
}
public void setEngine(String engine) {
this.engine = engine;
}
public List<WaterShipOcean> getShipOceans() {
return shipOceans;
}
public void setShipOcean(List<WaterShipOcean> shipOceans) {
for (WaterShipOcean shipOcean:shipOceans) {
addShipOcean(shipOcean);
}
}
public void addShipOcean(WaterShipOcean shipSea) {
shipOceans.add(shipSea);
}
}

View file

@ -0,0 +1,24 @@
package love.distributedrebirth.warpme.ship;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class WaterShipOcean {
private String sea;
public WaterShipOcean() {
}
public WaterShipOcean(String sea) {
setSea(sea);
}
public String getSea() {
return sea;
}
public void setSea(String sea) {
this.sea = sea;
}
}

View file

@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<root:module xmlns:root="http://eld.x4o.org/xml/ns/eld-root"
xmlns:eld="http://eld.x4o.org/xml/ns/eld-lang"
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"
providerHost="warp-ship.x4o.distributedrebirth.love" providerName="WarpShipᵐᵉ"
id="warp-ship-module">
<eld:classBindingHandler id="WaterDevice-WaterShip"
parentClass="love.distributedrebirth.warpme.ship.WaterDevice"
childClass="love.distributedrebirth.warpme.ship.WaterShip"
addMethod="buildShip" getMethod="theShip" />
<eld:classBindingHandler id="WaterShip-WaterShipOcean"
parentClass="love.distributedrebirth.warpme.ship.WaterShip"
childClass="love.distributedrebirth.warpme.ship.WaterShipOcean"
addMethod="addShipOcean" getMethod="getShipOceans" />
<eld:namespace
uri="http://wrap-ship.x4o.distributedrebirth.love/xml/ns/warp-ship-root"
schemaUri="http://warp-ship.x4o.distributedrebirth.love/xml/ns/warp-ship-root-1.0.xsd"
schemaResource="warp-ship-root-1.0.xsd" schemaPrefix="root"
description="Root namespace to have nice namespaceing."
name="WarpShip Root Namespace" languageRoot="true" id="root">
<eld:element tag="device"
objectClass="love.distributedrebirth.warpme.ship.WaterDevice"/>
</eld:namespace>
<eld:namespace
uri="http://warp-ship.x4o.distributedrebirth.love/xml/ns/warp-ship-boot"
schemaUri="http://warp-ship.x4o.distributedrebirth.love/xml/ns/warp-ship-boot-1.0.xsd"
schemaResource="warp-ship-boot-1.0.xsd" schemaPrefix="boot"
description="Language namespace to store the warp ship."
name="WarpShip Language Namespace" id="boot">
<eld:element tag="ship"
objectClass="love.distributedrebirth.warpme.ship.WaterShip" />
<eld:element tag="ocean"
objectClass="love.distributedrebirth.warpme.ship.WaterShipOcean" />
</eld:namespace>
</root:module>

View file

@ -0,0 +1,10 @@
<?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>warp-ship-lang.eld</eld-resource>
</language>
</modules>

View file

@ -7,4 +7,5 @@
<driver language="warp-core" className="love.distributedrebirth.warpme.core.WaterBucketDriver"/> <driver language="warp-core" className="love.distributedrebirth.warpme.core.WaterBucketDriver"/>
<driver language="warp-hash" className="love.distributedrebirth.warpme.hash.WaterShotDriver"/> <driver language="warp-hash" className="love.distributedrebirth.warpme.hash.WaterShotDriver"/>
<driver language="warp-sea" className="love.distributedrebirth.warpme.sea.WaterOceanDriver"/> <driver language="warp-sea" className="love.distributedrebirth.warpme.sea.WaterOceanDriver"/>
<driver language="warp-ship" className="love.distributedrebirth.warpme.sea.WaterDeviceDriver"/>
</drivers> </drivers>