MENU

  /   Attribuut (of veld)

Met een attribute wordt een java attribute (veld van een interface of class) gedefinieerd.
Het name attribuut is verplicht en geeft de naam van het attribuut 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">

  ...
    <attribute  name=""
                visibility=""
                access=""
                static=""
                final=""
                transient=""
                volatile=""
                foreach="package|object|attribute|reference|
                         object.reference|object.attribute|
                         currentModelObject.property"
                condition=""
                package=""
                var0=""
                var1=""
                var2=""
                var3=""
                var4=""
                var5="">
      <library></library>
      <datatype></datatype>
      <apicomment></apicomment>
      <developercomment></developercomment>
      <annotation></annotation>
      <annotation.getter></annotation.getter>
      <annotation.setter></annotation.setter>
      <body></body>
      <getterBody></getterBody>
      <setterBody></setterBody>
    </attribute>
  ...
</pattern>

attributen van <attribute/>:

Naam Betekenis
name De naam van het java attribuut (ook wel veld of property genoemd) dat gemaakt wordt.
visibility Geeft de zichtbaarheid van het attribuut aan. Mogelijke waardes zijn public, protected en private.
access Met het access attribute wordt ingesteld of er getters en setters gegenereerd moeten worden. Mogelijke waardes zijn ro, rw en wo. Bij ro (readonly) wordt alleen de getter gegenereerd. Bij rw (readwrite) wordt zowel de getter als setter gegenereerd. Bij wo (writeonly) wordt alleen de setter gegenereerd. Als het access attribute wordt weggelaten, dan wordt er geen getter en geen setter gegenereerd.
static true of false. Geeft aan of het attribute static gedefinieerd moet worden of niet.
final true of false. Geeft aan of het attribute final gedefinieerd moet worden of niet.
transient true of false. Geeft aan of het attribute transient gedefinieerd moet worden of niet.
volatile true of false. Geeft aan of het attribute volatile gedefinieerd moet worden of niet.
foreach Geeft aan of er geïtereerd moet worden over het model. Mogelijke waarden: package, object, attribute, reference, object.reference, object.attribute, currentModelObject.property
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"

Het attribute 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.

subelementen van <attribute/>:

Naam Betekenis Aantal
library De waarde van library wordt als import statement toegevoegd aan de class of interface waar dit attribute in zit. 0 of meer
datatype Type van het attribute. 0 of 1
apicomment Javadoc dat wordt toegevoegd aan dit attribute. 0 of 1
developercomment Commentaar dat aan dit attribute wordt toegevoegd. 0 of 1
annotation De annotation die aan het attribute wordt toegevoegd. 0 of meer
annotation.getter De annotation die aan de getter voor dit attribute wordt toegevoegd. 0 of meer
annotation.setter De annotation die aan de setter voor dit attribute wordt toegevoegd. 0 of meer
body Waarde die aan het attribute wordt gegeven bij de declaratie. 0 of 1
getterBody Inhoud (javacode) van de getter voor dit attribute.
LET OP: Gebruik dit alleen indien de standaard getter die gegenereerd wordt niet toereikend is. Als alleen de waarde van het attribute moet worden geretourneerd, dan hoeft getterBody niet gebruikt te worden.
0 of 1
setterBody Inhoud (javacode) van de setter voor dit attribute.
LET OP: Gebruik dit alleen indien de standaard setter die gegenereerd wordt niet toereikend is. Als alleen de waarde van het attribute moet worden gezet, dan hoeft setterBody niet gebruikt te worden.
0 of 1