Roblet®-Development-Kit
1.1 (10Juni10)
API für Module

genRob.genControl.modules
Interface Registry


Deprecated. Entfällt in Zukunft, da sich das Modul-Konzept geändert hat.

public interface Registry

Eine Instanz diesen Typs verwaltet alle Besitzrechte eines Moduls und den Einheitenbesitz eines jeden Roblets® in Hinsicht auf dieses Modul und fungiert daher als eine Art Grundbuch.  Jedes Modul hat nur eine Ableitung diesen Typs mit einer Instanz.

Roblets® kommen mit Besitzrechten niemals direkt in Verbindung, sondern nur mit Rechten an Einheiten.  Eine Einheit kann für ihre Arbeit verschiedene Ressourcen benötigen.  Diese Ressourcen werden dann gegebenenfalls der Einheit dadurch verbrieft, dass sie dem Roblet® (vertreten durch das Fach, in dem es läuft) verbrieft wird.

Einheiten vollziehen jegliche Aktivitäten nur nach Aufruf durch ein Roblet®.  Insbesondere führen Einheiten mit Besitzrechten verbundene Aktivitäten nur dann aus, wenn das aufrufende Roblet® die aufgerufene Einheit besitzt (Einheitenbesitz).

Wird somit der Besitz einer Einheit von einem Roblet® angefordert, so müssen alle damit verknüpften Besitzrechte (an Ressourcen) verfügbar sein oder verfügbar gemacht werden.  Den Zusammenhang zwischen Roblet® und Besitzrechten stellt das Grundbuch dabei über das Fach her, in dem das Roblet® läuft.

See Also:
Roblet, Slot, Unit, Module, Ownership

Method Summary
 boolean claim(Slot rSlot, org.roblet.Unit rUnit)
          Deprecated. Bittet das Grundbuch, dem Roblet® (vertreten durch das angegebene Fach) die angegebene Einheit als Besitz einzutragen.
 Slot force(Slot rSlot, org.roblet.Unit rUnit)
          Deprecated. Zwingt das Grundbuch, dem Roblet® (vertreten durch das angegebene Fach) die angegebene Einheit als Besitz einzutragen, sofern grundsätzlich möglich.
 void free(Slot rSlot)
          Deprecated. Trägt für ein Roblet® (vertreten durch das angegebene Fach) sämtlichen Besitz an Einheit aus dem Grundbuch aus.
 void free(Slot rSlot, org.roblet.Unit rUnit)
          Deprecated. Trägt für ein Roblet® (vertreten durch das angegebene Fach) den möglichen Besitz der angegebenen Einheit aus dem Grundbuch aus.
 

Method Detail

claim

public boolean claim(Slot rSlot,
                     org.roblet.Unit rUnit)
Deprecated. 
Bittet das Grundbuch, dem Roblet® (vertreten durch das angegebene Fach) die angegebene Einheit als Besitz einzutragen.  Das schliesst entsprechend die Übertragung von Besitzrechten an Ressourcen ein.

Besitzt kein anderes Roblet® diese Einheit (und die damit verknüpften Besitzrechte an Ressourcen), so erfolgt die Eintragung und diese Methode gibt true zurück.  Ebenso wird true zurückgegeben, wenn das Roblet® die Einheit besitzt.

Benötigt die betreffende Einheit keine Besitzrechte an Ressourcen oder wird von dem Module gar nicht verwaltet, so gibt diese Methode false zurück und nimmt entsprechend keinerlei Eintragung vor.

Achtung:  Wird das Grundbuchkonzept nicht benutzt, so muß diese Methode false zurückliefern oder einfacher noch Module.getRegistry() sollte null zurückliefern.

Parameters:
rSlot - Fach mit dem anfragenden Roblet®
rUnit - Instanz der Einheit, die in Besitz kommen soll
Returns:
true, wenn das Roblet nun Besitzer der Einheit ist oder bereits war
See Also:
force(Slot,Unit), free(Slot,Unit)

force

public Slot force(Slot rSlot,
                  org.roblet.Unit rUnit)
Deprecated. 
Zwingt das Grundbuch, dem Roblet® (vertreten durch das angegebene Fach) die angegebene Einheit als Besitz einzutragen, sofern grundsätzlich möglich.  Das schliesst entsprechend die Übertragung von Besitzrechten an Ressourcen ein.

War bisher ein anderes Roblet® der Besitzer, so wird stellvertretend dessen Fach zurückgegeben.  Ansonsten ist der Rückgabewert null.

Benötigt die betreffende Einheit keine Besitzrechte an Ressourcen oder wird von dem Module gar nicht verwaltet, so gibt diese Methode null zurück und nimmt entsprechend keinerlei Eintragung vor.

Achtung:  Wird das Grundbuchkonzept nicht benutzt, so muß diese Methode null zurückliefern oder einfacher noch Module.getRegistry() sollte null zurückliefern.

Parameters:
rSlot - Fach mit dem fordernden Roblet®
rUnit - Instanz der Einheit, die in Besitz kommen wird
Returns:
Fach des Roblets®, welches vorher Besitzer war oder null
See Also:
claim(Slot,Unit), free(Slot,Unit)

free

public void free(Slot rSlot,
                 org.roblet.Unit rUnit)
Deprecated. 
Trägt für ein Roblet® (vertreten durch das angegebene Fach) den möglichen Besitz der angegebenen Einheit aus dem Grundbuch aus.  Das schliesst entsprechend möglicherweise die Freigabe von Besitzrechten an Ressourcen ein.

Ist das Roblet® vor dem Aufruf dieser Methode der Besitzer der Einheit, so ist nach dem Aufruf kein Roblet® mehr Besitzer dieser Einheit.

Ist das Roblet® vor dem Aufruf dieser Methode nicht der Besitzer der Einheit, so bleiben die Besitzverhältnisse bestehen, d.h. ein anderes Roblet® bleibt Besitzer oder kein Roblet® ist Besitzer.

Achtung:  Wird das Grundbuchkonzept nicht benutzt, so darf diese Methode nichts tun oder einfacher noch Module.getRegistry() sollte null zurückliefern.

Parameters:
rSlot - Fach mit dem freigebenden Roblet®
rUnit - Instanz der Einheit, die freigegeben werden soll
See Also:
claim(Slot,Unit), force(Slot,Unit), free(Slot)

free

public void free(Slot rSlot)
Deprecated. 
Trägt für ein Roblet® (vertreten durch das angegebene Fach) sämtlichen Besitz an Einheit aus dem Grundbuch aus.  Das schliesst entsprechend die Freigabe von Besitzrechten an Ressoucen ein.
Achtung:  Wird das Grundbuchkonzept nicht benutzt, so darf diese Methode nichts tun oder einfacher noch Module.getRegistry() sollte null zurückliefern.

Parameters:
rSlot - Fach mit dem freigebenden Roblet®
See Also:
free(Slot,Unit)

Roblet®-Development-Kit
1.1 (10Juni10)
API für Module

Copyright © 2001-2010, roblet®.org, Hagen Stanek, http://roblet.org/rdk