|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectde.bsvrz.sys.funclib.dynobj.DynamischeObjekte
public final class DynamischeObjekte
Die Klasse beschreibt ein Objekt, mit dem die Verwaltung von dynamischen Objekten innerhalb eines Datenverteilersystems vereinheitlicht wird. Insbesondere wird hiermit die Verteilung von dynamischen Objekten auf verschiedene Konfigurationsbereiche organisiert. Die benutzerabhängige Zuordnung der dynamischen Objekte zu Konfigurationsbereichen über ein Verwaltungsobjekt dieser Klasse, erfolgt über einen Parameterdatensatz, der Bestandteil der AOE des Systems ist. Die Attributgruppe "atg.verwaltungDynamischerObjekte" enthält ein variables Feld von Attributlisten, die jeweils aus den Attributen "Objekttyp" (einer Referenz auf den Typ eines dynamsichen Objekts) und "Konfigurationsbereich" (einer Referenz auf einen Kobfigurationsbereich bestehen. Beim Anlegen eines dynamischen Objekts über die hier bereitgestellten Funktionen wird dieser Parametersatz ausgewertet und ermittelt, in welchem Konfigurationsbereich das jeweils zu erzeugende Objekt abgelegt werden soll. Wird innerhalb des Parameters keine entsprechende Zuordnung gefunden, wird das Objekt entweder innerhalb des Default-Bereiches der AOE abgelegt oder das Anlegen des Objekts schlägt fehl. Das Verhalten kann für das Verwaltungsobjekt per Funktionsaufruf definiert werden.
Field Summary | |
---|---|
private static Map<de.bsvrz.dav.daf.main.ClientDavInterface,DynamischeObjekte> |
instanzen
die Menge der angelegten Instanzen von Verwaltungsobjekten. |
private de.bsvrz.dav.daf.main.ClientDavInterface |
verbindung
die verwendete Datenverteilerverbindung. |
private ZuordnungsVerwaltung |
zuordnung
die Verwaltung der Zuordnungen von Typ zu Konfigurationsbereich. |
Constructor Summary | |
---|---|
private |
DynamischeObjekte(de.bsvrz.dav.daf.main.ClientDavInterface verbindung)
Privater Konstruktor für eine Verwaltungsobjekt. |
Method Summary | |
---|---|
void |
bereinigeMenge(de.bsvrz.dav.daf.main.config.MutableSet menge)
die Funktion entfernt alle Elemente aus der übergebenen Menge, die nicht mehr gültig sind. |
void |
connectionClosed(de.bsvrz.dav.daf.main.ClientDavInterface connection)
Implemetiert das Interface DavConnectionListener . |
void |
entferneAlleObjekteAusMenge(de.bsvrz.dav.daf.main.config.MutableSet menge,
boolean loescheObjekte)
die Funktion entfernt alle Elemente aus der übergebenen Menge. |
boolean |
entferneObjektAusMenge(de.bsvrz.dav.daf.main.config.DynamicObject objekt,
de.bsvrz.dav.daf.main.config.MutableSet menge,
boolean loescheObjekt)
die Funktion entfernt das übergebene Objekt aus der übergebenen Menge. |
de.bsvrz.dav.daf.main.config.DynamicObject |
erzeugeObjekt(de.bsvrz.dav.daf.main.config.DynamicObjectType typ,
String name,
String pid)
die Funktion erzeugt ein dynamisches Objekt auf Basis der übergebenen Daten. |
de.bsvrz.dav.daf.main.config.DynamicObject |
erzeugeObjekt(de.bsvrz.dav.daf.main.config.DynamicObjectType typ,
String name,
String pid,
Collection<de.bsvrz.dav.daf.main.DataAndATGUsageInformation> konfigurationsDaten)
die Funktion erzeugt ein dynamisches Objekt auf Basis der übergebenen Daten. |
de.bsvrz.dav.daf.main.config.DynamicObject |
erzeugeObjektInMenge(de.bsvrz.dav.daf.main.config.DynamicObjectType typ,
String name,
String pid,
Collection<de.bsvrz.dav.daf.main.DataAndATGUsageInformation> konfigurationsDaten,
de.bsvrz.dav.daf.main.config.MutableSet menge)
die Funktion erzeugt ein dynamisches Objekt auf Basis der übergebenen Daten und trägt dieses in die übergebene Menge ein. |
de.bsvrz.dav.daf.main.config.DynamicObject |
erzeugeObjektInMenge(de.bsvrz.dav.daf.main.config.DynamicObjectType typ,
String name,
String pid,
de.bsvrz.dav.daf.main.config.MutableSet menge)
die Funktion erzeugt ein dynamisches Objekt auf Basis der übergebenen Daten und trägt dieses in die übergebene Menge ein. |
boolean |
fuegeObjektInMengeEin(de.bsvrz.dav.daf.main.config.DynamicObject objekt,
de.bsvrz.dav.daf.main.config.MutableSet menge)
die Funktion fügt das übergebene Objekt in die angegebene Menge ein. |
static DynamischeObjekte |
getInstanz(de.bsvrz.dav.daf.main.ClientDavInterface dav)
Funktion zum Erzeugen eines Verwaltungsobjekts für dynamische Objekte. |
de.bsvrz.dav.daf.main.config.ConfigurationArea |
getKonfigurationsBereich(de.bsvrz.dav.daf.main.config.DynamicObjectType typ)
die Funktion liefert den Konfigurationsbereich, der dem übergebenen Objekttyp zugeordnet ist. |
void |
loescheAlleNichtZugeordnetenObjekte(de.bsvrz.dav.daf.main.config.DynamicObjectType typ,
de.bsvrz.dav.daf.main.config.MutableSet... mengen)
die Funktion löscht alle Objekte mit dem übergebenen Typ, die sich nicht in einer der übergebenen Mengen befinden. |
void |
loescheAlleObjekte(de.bsvrz.dav.daf.main.config.DynamicObjectType typ)
die Funktion löscht alle Objekte mit dem übergebenen Typ. |
void |
loescheObjekt(de.bsvrz.dav.daf.main.config.DynamicObject objekt)
die Funktion löscht das übergebene dynamische Objekt. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static Map<de.bsvrz.dav.daf.main.ClientDavInterface,DynamischeObjekte> instanzen
private final de.bsvrz.dav.daf.main.ClientDavInterface verbindung
private final ZuordnungsVerwaltung zuordnung
Constructor Detail |
---|
private DynamischeObjekte(de.bsvrz.dav.daf.main.ClientDavInterface verbindung)
getInstanz(ClientDavInterface)
.
verbindung
- die verwendete DatenverteilerverbindungMethod Detail |
---|
public static DynamischeObjekte getInstanz(de.bsvrz.dav.daf.main.ClientDavInterface dav)
null
ist nicht zulässig.
dav
- die Datenverteilerverbindung über die dynamische Objekte
verwaltet werden sollen
public void bereinigeMenge(de.bsvrz.dav.daf.main.config.MutableSet menge) throws DynObjektException
menge
- die Menge, die geleert werden soll
DynObjektException
- die Menge konnte nicht bereinigt werden.public void connectionClosed(de.bsvrz.dav.daf.main.ClientDavInterface connection)
DavConnectionListener
.
Das der Datenverteilerverbindung zugeordnete Verwaltungsobjekt wird aus
der internen Verwaltung entfernt, damit die Ressourcen vom GC freigegeben
werden können.
connectionClosed
in interface de.bsvrz.dav.daf.main.DavConnectionListener
public void entferneAlleObjekteAusMenge(de.bsvrz.dav.daf.main.config.MutableSet menge, boolean loescheObjekte) throws DynObjektException
menge
- die Menge, die geleert werden sollloescheObjekte
- true
, wenn die aus der Menge entferneten Objekte
auch selbst entfernt werden sollen
DynObjektException
- die Menge konnte nicht geleert werden oder das Löschen der
Objekte ist fehlgeschlagen.public boolean entferneObjektAusMenge(de.bsvrz.dav.daf.main.config.DynamicObject objekt, de.bsvrz.dav.daf.main.config.MutableSet menge, boolean loescheObjekt) throws DynObjektException
true
geliefert, wenn das Element
aus der Menge entfernt werden konnte, false
, wenn es nicht
in der Menge enthalten war.
Die Funktion bildet keine Transaktion, d.h. wenn beispielsweise das
Entfernen des Objekts aus der Menge erfolgreich war, aber das Objekt
selbst nicth gelöscht werden konnte, wird eine
ConfigurationChangeException
geworfen. Das Objekt ist jedoch
trotzdem nicht mehr Bestandteil der Menge. Wenn das Entfernen des Objekts
aus der Menge fehlschlägt (außer es ist nicht Bestandteil der Menge),
wird das Objekt auch nicht entfernt.
Die Funktion ist nicht synchronisiert mit den Benachrichtigungen über
Mengenänderungen, d.h. es werden lediglich die direkten Rückmeldungen aus
den Aufrufen der Datenverteilerapplikationsfunktionen ausgewertet!
objekt
- das Objekt, das aus der Menge entfernt werden sollmenge
- die Menge aus der ein Objekt entfernt werden sollloescheObjekt
- definiert, ob das Objekt selbst ebenfalls gelöscht werden soll
true
, wenn das Objekt entfernt wurde
DynObjektException
- das Objekt konnte nicht aus der Menge entfernt werden oder
das Objekt konnte nicht gelöscht werdenpublic de.bsvrz.dav.daf.main.config.DynamicObject erzeugeObjekt(de.bsvrz.dav.daf.main.config.DynamicObjectType typ, String name, String pid) throws DynObjektException
typ
- der Typ des zu erzeugenden Objektsname
- der Namepid
- die gewünschte PID
DynObjektException
- das Objekt konnte nicht in der Konfiguration angelegt werdenerzeugeObjekt(DynamicObjectType, String, String, Collection)
,
erzeugeObjektInMenge(DynamicObjectType, String, String, MutableSet)
,
erzeugeObjektInMenge(DynamicObjectType, String, String, Collection,
MutableSet)
public de.bsvrz.dav.daf.main.config.DynamicObject erzeugeObjekt(de.bsvrz.dav.daf.main.config.DynamicObjectType typ, String name, String pid, Collection<de.bsvrz.dav.daf.main.DataAndATGUsageInformation> konfigurationsDaten) throws DynObjektException
typ
- der Typ des zu erzeugenden Objektsname
- der Namepid
- die gewünschte PIDkonfigurationsDaten
- die konfigurierenden Datensätze des Objekts
DynObjektException
- das Objekt konnte nicht in der Konfiguration angelegt werdenerzeugeObjekt(DynamicObjectType, String, String)
,
erzeugeObjektInMenge(DynamicObjectType, String, String, MutableSet)
,
erzeugeObjektInMenge(DynamicObjectType, String, String, Collection,
MutableSet)
public de.bsvrz.dav.daf.main.config.DynamicObject erzeugeObjektInMenge(de.bsvrz.dav.daf.main.config.DynamicObjectType typ, String name, String pid, Collection<de.bsvrz.dav.daf.main.DataAndATGUsageInformation> konfigurationsDaten, de.bsvrz.dav.daf.main.config.MutableSet menge) throws DynObjektException
typ
- der Typ des zu erzeugenden Objektsname
- der Namepid
- die gewünschte PIDkonfigurationsDaten
- die konfigurierenden Datensätze des neu anzulegenden Objektsmenge
- die Menge in die das Objekt eingetragen werden soll
DynObjektException
- das Objekt konnte nicht in der Konfiguration angelegt bzw. in
die Menge eingetragen werden.erzeugeObjekt(DynamicObjectType, String, String)
,
erzeugeObjekt(DynamicObjectType, String, String, Collection)
,
erzeugeObjektInMenge(DynamicObjectType, String, String, MutableSet)
,
erzeugeObjektInMenge(DynamicObjectType, String, String, MutableSet)
public de.bsvrz.dav.daf.main.config.DynamicObject erzeugeObjektInMenge(de.bsvrz.dav.daf.main.config.DynamicObjectType typ, String name, String pid, de.bsvrz.dav.daf.main.config.MutableSet menge) throws DynObjektException
typ
- der Typ des zu erzeugenden Objektsname
- der Namepid
- die gewünschte PIDmenge
- die Menge in die das Objekt eingetragen werden soll
DynObjektException
- das Objekt konnte nicht in der Konfiguration angelegt bzw. in
die Menge eingetragen werden.erzeugeObjekt(DynamicObjectType, String, String)
,
MutableSet)
,
erzeugeObjektInMenge(DynamicObjectType, String, String, MutableSet)
public boolean fuegeObjektInMengeEin(de.bsvrz.dav.daf.main.config.DynamicObject objekt, de.bsvrz.dav.daf.main.config.MutableSet menge) throws DynObjektException
objekt
- das Objektmenge
- die Menge
true
, wenn das Objekt noch nicht in der Menge
enthalten war und erfolgreich eingefügt wurde; false
wenn das Objekt bereits Bestandteil der Menge war.
DynObjektException
- das Objekt konnte nicht in die Menge eingefügt werden.public de.bsvrz.dav.daf.main.config.ConfigurationArea getKonfigurationsBereich(de.bsvrz.dav.daf.main.config.DynamicObjectType typ)
typ
- der Typ für ein dynamisches Objekt
public void loescheAlleNichtZugeordnetenObjekte(de.bsvrz.dav.daf.main.config.DynamicObjectType typ, de.bsvrz.dav.daf.main.config.MutableSet... mengen) throws DynObjektException
typ
- der Typ dessen Instanzen entfernt werden sollenmengen
- die Mengen in denen die nicht zu entfernenden Objekte
enthalten sind
DynObjektException
- die Objekte konnten nicht oder nicht vollständig entfernt
werdenpublic void loescheAlleObjekte(de.bsvrz.dav.daf.main.config.DynamicObjectType typ) throws DynObjektException
typ
- der Typ dessen Instanzen entfernt werden sollen
DynObjektException
- die Objekte konnten nicht oder nicht vollständig entfernt
werdenpublic void loescheObjekt(de.bsvrz.dav.daf.main.config.DynamicObject objekt) throws DynObjektException
SystemObject.invalidate()
aufruft, vervollständigt aber die
Funktionalität des Verwaltungsobjektes.
objekt
- das Objekt, das gelöscht werden soll
DynObjektException
- das Objekt konnte nicht gelöscht werden
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |