de.jsystems.framework.common.action
Class AbstractAction

java.lang.Object
  extended byde.jsystems.framework.common.action.AbstractAction
Direct Known Subclasses:
ActionAction, AdjustmentAction, AncestorAction, CaretAction, CellEditorAction, ChangeAction, ComponentAction, ContainerAction, DocumentAction, DragGestureAction, DragSourceAction, DropTargetAction, FocusAction, HierarchyAction, HierarchyBoundsAction, HyperlinkAction, InputMethodAction, InternalFrameAction, ItemAction, KeyAction, ListDataAction, ListSelectionAction, MenuAction, MenuDragMouseAction, MenuKeyAction, MouseAction, MouseInputAction, MouseMotionAction, PopupMenuAction, PrintJobAction, PrintJobAttributeAction, PropertyChangeAction, TableColumnModelAction, TableModelAction, TextAction, TreeExpansionAction, TreeModelAction, TreeSelectionAction, TreeWillExpandAction, UndoableEditAction, VetoableChangeAction, WindowAction

public abstract class AbstractAction
extends Object

Abstrakte Basisklasse fuer eine Action. Klassen von diesem Typ werden vom ActionManager erzeugt und verwaltet. Hierin geschieht das eigentliche doing fuer ein Ereignis, wie z.B. der Klick auf einen Button oder die Auswahl eines Menuepunktes. Ueber die Action koennen die verbundenen Controls auch aktiviert oder deaktiviert werden. Das passiert, sobald die Action selbst aktiviert oder deaktiviert wird. Dabei geschieht das Aktivieren und Deaktivieren einer Action wiederum ueber den ActionManager.

Version:
1.0
Copyright by Jens Homm 2001 - 2003
Author:
Jens Homm JSYSTEMS

Constructor Summary
AbstractAction()
          Erzeugt eine neue Action.
 
Method Summary
 void addControl(IActionInterface actionControl)
          Fuegt der Liste der Controls ein weiteres Control hinzu.
 void disable()
          Iteriert ueber alle der Action hinzugefuegten Controls und deaktiviert sie.
 void enable()
          Iteriert ueber alle der Action hinzugefuegten Controls und aktiviert sie.
protected  void exceptionInAction(AbstractAction action, Exception exception)
          Diese Methode wird aufgerufen, wenn bei der Ausfuehrung einer Action ein Fehler aufgetreten ist.
 Controller getController()
          Gibt den Controller zurueck, mit dem die Action initialisiert wurde.
 Collection getControls()
          Gibt eine Collection mit allen Controls dieser Action zurueck.
 Exception getException()
          Gibt die bei Ausfuehrung der Action aufgetretene Exception zurueck.
 BusinessView getView()
          Gibt die View zurueck, mit der die Action initialisiert wurde.
 boolean hasException()
          Gibt TRUE zurueck, wenn bei Ausfuehrung der Action eine Exception ausgeloest wurde.
 void initialize(Controller controller, BusinessView view)
          Initialisiert die Action vor ihrer Ausfuehrung.
 boolean isEnabled()
          Gibt den Status der Action zurueck.
 void removeAll()
          Loescht alle Controls uas der internen Liste.
 void removeControl(IActionInterface actionControl)
          Entfernt das uebergebene Control aus der Liste mit den Controls zur Action.
protected  void setException(Exception e)
          Setzt die Exception, die bei Ausfuehrung der entsprechenden Event-Methode in der Action ausgeloest wurde.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractAction

public AbstractAction()
Erzeugt eine neue Action.

Method Detail

addControl

public void addControl(IActionInterface actionControl)
Fuegt der Liste der Controls ein weiteres Control hinzu. Diese Controls koennen ueber die Methoden enable() und disable() aktiviert bzw. deaktiviert werden. Das passiert dann wenn die Action an ihrer Ausfuehrung gehindert werden soll. Wenn das uebergebene Control NULL ist passiert nichts. Das uebergebene Control wird auf den gleichen Status gesetzt wie die Methode isEnabled() anzeigt.

Parameters:
actionControl - Ein weiteres Control, das diese Action triggern kann.

removeControl

public void removeControl(IActionInterface actionControl)
Entfernt das uebergebene Control aus der Liste mit den Controls zur Action.

WICHTIG:
Die Action wird bei den Controls nicht als Listener deregistriert. Das geht nur ueber den ActionManager.

Parameters:
actionControl - Das zu entfernende Control.

removeAll

public void removeAll()
Loescht alle Controls uas der internen Liste.

WICHTIG:
Die Action wird bei den Controls nicht als Listener deregistriert. Das geht nur ueber den ActionManager.


getControls

public Collection getControls()
Gibt eine Collection mit allen Controls dieser Action zurueck. Diese Collection kann nicht modifiziert werden.

Returns:
Eine Collection aller Controls dieser Action.

initialize

public void initialize(Controller controller,
                       BusinessView view)
Initialisiert die Action vor ihrer Ausfuehrung. Hier wird der Controller der View gesetzt, sowie die View selbst. Dabei handelt es sich um die View, auf der sich das Control befindet, das zu dieser Action gefuehrt hat. Das uebergebene Event-Objekt ist das Event, das normalerweise an eine Listener-Methode uebergeben wird. Diese Methode wird vom ActionManager beim erzeugen der Action aufgerufen.

Parameters:
controller - Der Controller zur View.
view - Die View, die das ausloesende Control enthaelt.

enable

public void enable()
Iteriert ueber alle der Action hinzugefuegten Controls und aktiviert sie.


disable

public void disable()
Iteriert ueber alle der Action hinzugefuegten Controls und deaktiviert sie.


isEnabled

public boolean isEnabled()
Gibt den Status der Action zurueck. Nur wenn diese Methode true zurueckgibt wird diese Action auch ausgefuehrt, sobald sie von einem entsprechenden Event getriggert wurde.

Returns:
true, wenn die Action ausgefuehrt werden kann, ansonsten false.

hasException

public boolean hasException()
Gibt TRUE zurueck, wenn bei Ausfuehrung der Action eine Exception ausgeloest wurde.

Returns:
TRUE, wenn bei Ausfuehrung der Exception ein Fehler aufgetreten ist.

setException

protected void setException(Exception e)
Setzt die Exception, die bei Ausfuehrung der entsprechenden Event-Methode in der Action ausgeloest wurde.

Parameters:
e - Die aufgetretene Exception.

getException

public Exception getException()
Gibt die bei Ausfuehrung der Action aufgetretene Exception zurueck.

Returns:
Die aufgetretene Exception.

getController

public Controller getController()
Gibt den Controller zurueck, mit dem die Action initialisiert wurde.

Returns:
Der Controller, mitz dem die Action initialisiert wurde.

getView

public BusinessView getView()
Gibt die View zurueck, mit der die Action initialisiert wurde.

Returns:
Die View, mit der die Action initialisiert wurde.

exceptionInAction

protected void exceptionInAction(AbstractAction action,
                                 Exception exception)
Diese Methode wird aufgerufen, wenn bei der Ausfuehrung einer Action ein Fehler aufgetreten ist. Von hier aus wird im Controller die Methode Controller.exceptionInAction(AbstractAction, Exception) aufgerufen. Zusaetzlich wird vor dem Aufruf noch der Fehler in der MessageList des Controllers gespeichert.

Parameters:
action - Die Action in der ein Fehler aufgetreten ist.
exception - Die aufgetretene Exception.