MENU

  /   Interface

Met een interface wordt een java interface gedefinieerd.
Het name attribuut is verplicht en geeft de naam van de interface aan. Dit is de syntax:

<?xml version="1.0" encoding="UTF-8"?>
<pattern xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://www.firstbase.nl/xsd/personaliom/pattern"
         xsi:schemaLocation="http://www.firstbase.nl/xsd/personaliom/pattern
                             http://www.firstbase.nl/xsd/personaliom/pattern.xsd">

  ...
    <interface  name=""
                visibility=""
                foreach="package|object|attribute|reference"
                condition=""
                package=""
                var0=""
                var1=""
                var2=""
                var3=""
                var4=""
                var5="">
      <generic></generic>
      <apicomment></apicomment>
      <developercomment></developercomment>
      <libraries>
        <library></library>
        <library></library>
        ...
        <library></library>
      </libraries>
      <annotation></annotation>
      <inherits condition="" foreach="package|object|attribute" package=""></inherits>
      <attribute></attribute>
      <operation></operation>
    </interface>
  ...
</pattern>

attributen van <interface/>:

Naam Betekenis
name De naam van de java interface die gemaakt wordt
visibility Zichtbaarheid van deze interface. In de praktijk is dit altijd public.
foreach Geeft aan of er geïtereerd moet worden over het model. Mogelijke waarden: package, object, attribute, reference
condition Een expression die uitkomt op true of false. Indien er true uitkomt wordt het package (pattern) ook daadwerkelijk gemaakt, maar als er false uit komt niet.
vb:

condition="${object.name}=Person"

De interface wordt in dit geval alleen gemaakt indien het huidige model object de naam Person heeft. Dit werkt alleen indien er geïtereerd wordt over alle model objecten (foreach=”object”).

package Naam van het package in het model (model.xml) wat gebruikt moet worden voor het uitvoeren van het foreach attribuut
object Naam van het object in het model (model.xml) wat gebruikt moet worden voor het uitvoeren van het foreach attribuut
var0 Waarde die je wil opslaan in de voorgedefinieerde variabele met naam var0. Naar deze waarde kan later worden gerefereerd d.m.v. ${var0}. Dit kan zowel in het pattern als in een snippet worden gebruikt.
var1 Waarde die je wil opslaan in de voorgedefinieerde variabele met naam var1. Naar deze waarde kan later worden gerefereerd d.m.v. ${var1}. Dit kan zowel in het pattern als in een snippet worden gebruikt.
var2 Waarde die je wil opslaan in de voorgedefinieerde variabele met naam var2. Naar deze waarde kan later worden gerefereerd d.m.v. ${var2}. Dit kan zowel in het pattern als in een snippet worden gebruikt.
var3 Waarde die je wil opslaan in de voorgedefinieerde variabele met naam var3. Naar deze waarde kan later worden gerefereerd d.m.v. ${var3}. Dit kan zowel in het pattern als in een snippet worden gebruikt.
var4 Waarde die je wil opslaan in de voorgedefinieerde variabele met naam var4. Naar deze waarde kan later worden gerefereerd d.m.v. ${var4}. Dit kan zowel in het pattern als in een snippet worden gebruikt.
var5 Waarde die je wil opslaan in de voorgedefinieerde variabele met naam var5. Naar deze waarde kan later worden gerefereerd d.m.v. ${var5}. Dit kan zowel in het pattern als in een snippet worden gebruikt.
skip true of false. Als true en de het menu item “Use @skip of packages” (menu Transform) is aangevinkt, dan wordt het package niet gemaakt. Deze functie is bedoeld om te voorkomen dat altijd alles opnieuw wordt gegenereerd en scheelt daarom tijd. Met deze functie kan je aan een specifiek package werken door alle skip attributen op true te zetten, behalve degene waaraan je nu werkt.

subelementen van <interface/>:

Naam Betekenis Aantal
generic Maakt de interface generic (java 1.5 of hoger). 0 of 1
apicomment Javadoc dat wordt toegevoegd aan deze interface. 0 of 1
developercomment Commentaar dat aan deze interface wordt toegevoegd. 0 of 1
libraries Alle libary elementen onder library worden als import statement toegevoegd aan de interface. 0 of 1 (library 0 of meer)
annotation Annotation die aan de interface wordt toegevoegd. 0 of meer
inherits De interface waar deze interface van afgeleid is. 0 of meer
attribute attributen die deze interface bevat. Alleen indien het attribuut static is wordt dit attribuut ook echt toegevoegd. Als het attribuut niet static is, dan worden alleen de getters en setters van dit attribuut toegevoegd (afhankelijk van het access attribuut (rw|ro|wo)). Dit is een handige manier om de getters en setters in een interface vast te leggen. 0 of meer
operation methodes die deze interface bevat . 0 of meer