/[xulu]/trunk/defaults/plugin/GeoModelCodeGenerator/XuluModel.tpl
ViewVC logotype

Annotation of /trunk/defaults/plugin/GeoModelCodeGenerator/XuluModel.tpl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2 - (hide annotations)
Wed Feb 25 11:54:01 2009 UTC (15 years, 9 months ago) by mojays
File size: 3300 byte(s)
First Commit, corresponds to Revision 1008 of Wikisquare-SVN 
1 mojays 2 package $FIELD(Package);
2    
3     $LOOP(ClassImport)
4     import $FIELD(ClassImport);
5     $ENDLOOP()
6    
7     /**
8     * Diese Klasse stellt eine Implementierung des Modells {@linkplain $FIELD(ModelName)}
9     * dar. Dieses benoetigt $FIELD(ResourceCount) Ressourcen, welche durch den
10     * {@linkplain $FIELD(ModelCMName)} spezifiziert werden:
11     * <ol>
12     $LOOP(Resources)
13     * <li><b>$FIELD(ResourceDesc) ({@code $FIELD(ResourceVar)}):</b>
14     * @todo Detaillierte Ressoucen-Beschreibung einfuegen
15     * </li>
16     $ENDLOOP() * </ol>
17     * @see $FIELD(ModelCMName)
18     * @author automatisch generiert durch {@link edu.bonn.xulu.plugin.appl.GeoModelCodeGenerator}
19     * @version 1.0
20     */
21     public class $FIELD(ModelName) extends $FIELD(ModelSuperClass) {
22     /** Speichert den ContentManager fuer das Modell.
23     * @see $FIELD(ModelCMName) */
24     protected $FIELD(ModelCMName) contManager;
25    
26     //********** Lese/Schreibrechte, die fuer den gesamten ***********
27     //********** Modellanlauf gehalten werden muessen ***********
28     $LOOP(PropertyResources)
29     private $FIELD(ResourceAccessType) $FIELD(ResourceAccessVar) = null; // $FIELD(PropertyResourceDesc)
30     $ENDLOOP()
31     //**************** Variablen mit denen gearbeitet wird *******************
32     $LOOP(Resources)
33     private $FIELD(ResourceVarType) $FIELD(ResourceVar) = null; // $FIELD(ResourceDesc)
34     $ENDLOOP()
35     /**
36     * Erzeugt eine neue Instanz des Modells.
37     */
38     public $FIELD(ModelName)() {
39     super( new $FIELD(ModelCMName)() );
40     contManager = ($FIELD(ModelCMName))super.contManager;
41     }
42    
43    
44     ////////////////////////////////////////////////////////////////////////
45     /////////////// Implementierung von AbstractXuluModel //////////////
46     ////////////////////////////////////////////////////////////////////////
47     /**
48     * Initialisiert das Model, indem die Ressourcen aus dem ContentManager
49     * geladen werden und mit Lese/Schreib-Rechten versehen werden. Zudem
50     * werden Referenzen auf die Ressourcen in lokalen Variablen
51     * gespeichert, um waehrend des Modellablaufs effizienter darauf zugreifen
52     * zu koennen.
53     */
54     public void performModelInit() {
55     if ( contManager == null )
56     return;
57     // Zugriffsrechte aus Ressourcen/Propertys holen
58     $LOOP(PropertyResources)
59     $FIELD(ResourceAccessVar) = null;
60     if ( contManager.getResource($FIELD(PropertyResourceNo)).getData() != null )
61     $FIELD(ResourceAccessVar) = (($FIELD(PropertyResourceType))contManager.getResource($FIELD(PropertyResourceNo)).getData())$FIELD(ResourceAccessAlloc);
62     $ENDLOOP()
63     // Variablen belegen mit denen gearbeitet wird
64     $LOOP(Resources)
65     $FIELD(ResourceVar) = $FIELD(ResourceVarAlloc);
66     $ENDLOOP() }
67    
68     /**
69     * Gibt die Lese/Schreibrechte auf das Ein- und Ausgaberaster wieder frei.
70     * Interne Ressourcen brauchen keine aus dem Speicher entfernt werden.
71     */
72     public void performModelDispose() {
73     // Ressourcen wieder freigeben
74     $LOOP(PropertyResources)
75     releaseAccess($FIELD(ResourceAccessVar));
76     $ENDLOOP() }
77    
78     /**
79     * Fuehrt den kompletten Modellablauf durch.
80     */
81     public void performModelStart() {
82     // @todo An dieser Stelle den Ablauf des Modells implementieren
83    
84     // Ueber die Variable 'statusOut' koennen Status-Ausgaben im
85     // Modellfenster ausgegeben werden.
86     }
87     }

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26