|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.ObjectAbstractNamedObject
edu.bonn.xulu.model.AbstractXuluModel
public abstract class AbstractXuluModel
Diese Klasse stellt eine Basis-Implementierung eines Xulu-Modells dar.
Es werden alle Methoden des XuluModel
-Interface implementiert, in dem
entsprechende Flags sinnvoll gesetzt werden.
Eine konkrete Modell-Implementierung muss nur noch folgende Methoden
implementieren:
performModelInit()
performModelStart()
stopped
-Flag gesetzt ist).performModelDispose()
Field Summary | |
---|---|
protected ModelContentManager |
contManager
Speichert den ContentManager fuer das Modell. |
protected boolean |
disposed
Dieses Flag speichert, ob die internen Modell-Ressourcen "zerstoert" sind. |
protected Vector |
events
Speichert die Ereignis-Typen, die waehrend des Modellablaufs geworfen werden. |
protected boolean |
initialised
Dieses Flag speichert, ob die Modellierung initialisiert ist, also sich alle internen Ressourcen in einem Ausgangszustand befinden. |
protected Vector |
listeners
Speichert die Listener fuer das Modell. |
protected ResourceProvider |
modelResourceProvider
ResourceProvider fuer modellspezifische Uebersetzungen. |
protected boolean |
running
Dieses Flag speichert, ob die Modellierung gerade laeuft. |
protected PrintStream |
statusOut
Ausgabe-Stream fuer Statusausgaben. |
protected boolean |
stopped
Dieses Flag speichert, ob das Modell gestoppt ist. |
Constructor Summary | |
---|---|
AbstractXuluModel(ModelContentManager contManager)
Erzeugt ein neues Modell. |
|
AbstractXuluModel(ModelContentManager contManager,
String name)
Erzeugt ein neues Modell. |
Method Summary | |
---|---|
boolean |
addModelListener(ModelListener listener)
Fuegt einen ModelListener hinzu. |
protected void |
checkBreakingCommands()
Prueft, ob das Modell gestoppt ist. |
static String |
determineCaption(Map<String,Object> captionMap,
ResourceProvider rp,
String captionKey,
Object... captionParams)
Ermittelt einn String-Wert aus der captionMap . |
void |
disposeModel()
Diese Methode "zerstoert" das Modell, in dem es zunaechst gestoppt und dann performModelDispose() aufgerufen wird. |
protected void |
fireModelDisposed()
Informiert alle ModelListener darueber, dass das Modell
"zerstoert" wurde. |
protected void |
fireModelEvent(ModelEvent e)
Informiert alle ModelListener ueber ein Modell-Ereinis. |
protected void |
fireModelInitialised()
Informiert alle ModelListener darueber, dass das Modell initialisiert
wurde. |
protected void |
fireModelStarted()
Informiert alle ModelListener darueber, dass das Modell gestartet
wurde. |
protected void |
fireModelStopped()
Informiert alle ModelListener darueber, dass das Modell
gestoppt wurde. |
ModelContentManager |
getContentManager()
Liefert den ContentManager des Modells. |
Class<ModelEvent>[] |
getEvents()
Liefert alle Ereignis-Typen, die waehrend des Modellablaufs initiiert werden. |
Component |
getModelSpecificGUI()
Liefert immer null . |
ResourceProvider |
getResourceProvider()
Liefert den ResourceProvider , der die Uebersetzungen
fuer Modell-Ausgaben und modellspezifische GUI verwaltet. |
PrintStream |
getStatusOut()
Liefert den Stream fuer Status-Ausgaben des Modells. |
void |
initModel()
Initialisiert das Model, indem der Modell-Ablauf gestoppt und performModelInit() aufgerufen wird. |
boolean |
isDisposed()
Prueft, ob das Modell (dessen interen Ressourcen) "zerstoert" ist. |
boolean |
isInitialised()
Prueft, ob das Modell initialisiert ist - sich also im Ausgangszustand befindet - und bereit ist gestartet zu werden. |
boolean |
isRunning()
Prueft, ob das Modell gerade laeuft. |
boolean |
isStopped()
Prueft, ob das Modell gestoppt ist. |
void |
performError()
Diese Methode wird aufgrufen, wenn ein unerwarteter Fehler bei der Modellierung auftritt, welcher das Beenden der Modellierung zu Folge hat. |
abstract void |
performModelDispose()
Implementiert die eigentliche Freigabe der Modell-Ressourcen, indem alle internen Modell-Ressourcen aus dem Speicher geloescht und die externen wieder frei gegeben werden. |
abstract void |
performModelInit()
Muss die eigentliche Initialisierung des Modells implementieren und alle internen Modell-Ressourcen auf einen Ausgangszustand zurueck setzen, so dass das Modell komplett neu gestartet werden kann. |
abstract void |
performModelStart()
Implementiert den eigentlichen Modellablauf. |
protected static void |
releaseAccess(Access a)
Gibt ein Lese- oder Schreibrecht wieder frei. |
boolean |
removeModelListener(ModelListener listener)
Entfernt einen ModelListener von dem Modell. |
void |
resetCaptions(Map<String,Object> captionMap)
Belegt die sprachspezifischen Elemente des Modells (Status-Ausgaben, GUI) neu mit Elementen aus der Map. |
void |
setStatusOut(PrintStream out)
Setzt den Stream fuer Status-Ausgaben des Modells. |
boolean |
startModelling()
Startet die Modellierung, indem performModelStart() aufgerufen
wird. |
void |
stopModelling()
Stoppt die Modellierung. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected ResourceProvider modelResourceProvider
null
und muss von der jeweiligen Modell-Implementierung belegt werden!!
protected PrintStream statusOut
System.out
eingestellt
protected ModelContentManager contManager
null
und muss von der Implementierung befuellt werden!
protected Vector listeners
protected boolean stopped
startModelling()
und stopModelling()
gesetzt.
Initial true
.
protected boolean running
startModelling()
und stopModelling()
gesetzt.
Initial false
.
protected boolean initialised
initModel()
und startModelling()
gesetzt.
Initial false
.
protected boolean disposed
initModel()
und disposeModel()
gesetzt.
Initial true
.
protected Vector events
getEvents()
Constructor Detail |
---|
public AbstractXuluModel(ModelContentManager contManager, String name)
contManager
- verwaltet die Modell-Ressourcenname
- Bezeichnung fuer das Modellpublic AbstractXuluModel(ModelContentManager contManager)
contManager
- verwaltet die Modell-RessourcenMethod Detail |
---|
public ModelContentManager getContentManager()
getContentManager
in interface XuluModel
public void setStatusOut(PrintStream out)
setStatusOut
in interface XuluModel
public PrintStream getStatusOut()
getStatusOut
in interface XuluModel
public void initModel()
performModelInit()
aufgerufen wird.
Darueberhinaus wird das running
-Flag auf false
, das
stopped
-Flag auf true
, das initialised
-Flag
auf true
und das disposed
-Flag auf false
gesetzt.
initModel
in interface XuluModel
public abstract void performModelInit()
public boolean isInitialised()
isInitialised
in interface XuluModel
initialised
public boolean startModelling()
performModelStart()
aufgerufen
wird. Desweiteren wird das running
-Flag auf true
,
das initialised
-Flag auf false
und das
stopped
-Flag auf false
gesesetzt.
startModelling
in interface XuluModel
false
wenn das Modell auf irgendeine Art (kontrolliert oder
Fehler) abgebrochen wurde; true
nur wenn das Modell komplett
durchgelaufen istprotected void checkBreakingCommands() throws ModelCanceledException
ModelCanceledException
geworfen.startModelling()
-Methode
wieder abgefangen.
ModelCanceledException
- falls das Modell gestoppt istpublic abstract void performModelStart()
public boolean isRunning()
isRunning
in interface XuluModel
running
public void stopModelling()
running
-Flag auf false
und das stopped
-Flag
auf true
.performModelStart()
) selbst auf
isStopped()
oder das stopped
-Flag checken, um eine
Schleife oder zeitaufwaendige Zwischenschritte abzubrechen.
stopModelling
in interface XuluModel
public boolean isStopped()
isStopped
in interface XuluModel
stopped
public void disposeModel()
performModelDispose()
aufgerufen wird.
Desweiteren wird das disposed
-Flag auf true
gesetzt.
disposeModel
in interface XuluModel
public abstract void performModelDispose()
public boolean isDisposed()
isDisposed
in interface XuluModel
disposed
public void performError()
disposeModel()
auf.
performError
in interface XuluModel
public boolean addModelListener(ModelListener listener)
addModelListener
in interface XuluModel
listener
- neuer ModelListener
true
wenn dass Hinzufuegen erfolgreich war (siehe
Vector.add(Object)
)public boolean removeModelListener(ModelListener listener)
removeModelListener
in interface XuluModel
listener
- zu entfernender ModelListener
true
wenn dass Entfernen erfolgreich war (siehe
Vector.remove(Object)
)protected void fireModelEvent(ModelEvent e)
ModelListener
ueber ein Modell-Ereinis.
protected void fireModelInitialised()
ModelListener
darueber, dass das Modell initialisiert
wurde.
protected void fireModelStarted()
ModelListener
darueber, dass das Modell gestartet
wurde.
protected void fireModelStopped()
ModelListener
darueber, dass das Modell
gestoppt wurde.
protected void fireModelDisposed()
ModelListener
darueber, dass das Modell
"zerstoert" wurde.
public Component getModelSpecificGUI()
null
. Sub-Klassen koennen diese Methode
ueberschreiben und eine spezielle (zusaetzliche) Modell-GUI
zurueck geben.
getModelSpecificGUI
in interface XuluModel
null
wenn das Modell keine zusaetzliche GUI
zur Verfuegung stelltpublic Class<ModelEvent>[] getEvents()
getEvents
in interface XuluModel
protected static void releaseAccess(Access a)
null
ist.
public ResourceProvider getResourceProvider()
ResourceProvider
, der die Uebersetzungen
fuer Modell-Ausgaben und modellspezifische GUI verwaltet.
getResourceProvider
in interface XuluModel
null
, wenn das Modell nicht multi-lingual istpublic void resetCaptions(Map<String,Object> captionMap)
resetCaptions
-Methode des Content-Managers und der
modell-spez. GUI aufzurufen, sofern diese CaptionsChangeable
sind.
captionMap
- Label-Beschreibungenpublic static String determineCaption(Map<String,Object> captionMap, ResourceProvider rp, String captionKey, Object... captionParams)
captionMap
. Wenn dort kein Wert
hinterlegt ist, wird auf den ResourceProvider zurueckgegriffen.
captionMap
- Map mit neuen Bezeichnungenrp
- ResourceProvidercaptionKey
- Key unter dem in der Map und im ResourceProvider gesucht wirdcaptionParams
- Parameter, die durch den ResourceProvider in die Caption "eingebaut" werdenResourceProvider#getString(String, Object...)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |