MENU

  /   Hallo MetaFactory wereld

In dit eerste voorbeeld bouwen we een simpele ‘Hello World’ applicatie met MetaFactory.

Er wordt aangenomen dat MetaFactory geïnstalleerd is. Maak een xml file aan met de naam metafactory.xml en volgende inhoud:

 

<?xml version="1.0" encoding="UTF-8"?>
<personal-iom-project xmlns="http://www.firstbase.nl/xsd/personaliom/project"
                      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                      xsi:schemaLocation="http://www.firstbase.nl/xsd/personaliom/project
                                          http://www.firstbase.nl/xsd/personaliom/project.xsd">
  <model>model.xml</model>
  <pattern>pattern.xml</pattern>
  <snippetsFolder>snippets</snippetsFolder>
  <output>
    <path type="java" />
    <path type="xml" />
    <path type="file" />
  </output>
</personal-iom-project>

Maak in dezelfde map een xml file aan met de naam pattern.xml en geef het deze inhoud.

 

<?xml version="1.0" encoding="UTF-8"?>
<pattern  xmlns="http://www.firstbase.nl/xsd/personaliom/pattern"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://www.firstbase.nl/xsd/personaliom/pattern
                              http://www.firstbase.nl/xsd/personaliom/pattern.xsd">
  <properties>
    <java.output.directory>generated/java</java.output.directory>
  </properties>
  <package name="org.metafactory.helloworld">
    <class name="HelloWorld">
      <operation name="main" static="true">
        <parameter name="args"><datatype>String[]</datatype></parameter>
        <body>
          // just output Hello World
          System.out.println("Hello World");
        </body>
      </operation>
    </class>
  </package>
</pattern>

Hoewel in dit voorbeeld het model niet gebruikt wordt moet er toch een geldig model.xml bestand aanwezig zijn. Maak in dezelfde map een bestand met de naam model.xml en geef het de volgende inhoud:

 


<?xml version="1.0" encoding="UTF-8"?>
<model  xmlns="http://www.firstbase.nl/xsd/personaliom/model"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.firstbase.nl/xsd/personaliom/model
                            http://www.firstbase.nl/xsd/personaliom/model.xsd">
  <package name="domain_model">
    <object name="YourFirstObject">
      <attribute name="firstAttribute" type="String" />
    </object>
  </package>
</model>

Open de project file in MetaFactory. Ga naar het menu Transform en kies voor Run. Als alles goed gegaan is dan zie je in MetaFactory dat er 1 java package met 1 java class geproduceerd is. Zie screenshot:

introduction-in-5-minutes

In de map waar het project staat is nu een nieuwe submap aangemaakt: generated/java. In deze map is het java package gemaakt met de java class. Gebruik je favoriete ontwikkelomgeving of editor om het resultaat te beoordelen.

Het MetaFactory project kan hier gedownload worden: introduction-in-5-minutes