Dieses Modul unterstützt das Nachrichtensystem von ORBIT mit einer hierarchischen Indexstruktur.
Das Modul enthält die folgenden Klassen:
Diese Klasse implementiert eine hierarchischen Indexstruktur mit Unterstützung für mehrstufige Schlüssel einschließlich Gruppen und Wildcards im Schlüssel.
Parameter
Beschreibung
Der Index wird mit einer Liste von Attributnamen (Indexattribute) initialisiert. Jedes Indexattribut steht für eine Ebene des hierarchischen Index.
Gruppen für jedes Indexattribut können mit add_group() und delete_group() verwaltet werden.
Objekte werden mit add() hinzugefügt und anhand der Indexattribute indiziert. Die Attributwerte des Objektes können konkrete Werte, ein Gruppennamen oder None als Wildcard sein.
Ein Look-Up erfolgt mit lookup() und der Angabe eines Schlüsselobjekts. Ein Schlüsselobjekt besitzt wie die indizierten Objekte alle Indexattribute. Zurückgegeben werden bei einem Look-Up alle Objekte, deren Attributwerte zum angegebenen Schlüsselobjekt passen.
Fügt dem Index ein Objekt hinzu. Das Objekt wird anhand der Indexattribute indiziert.
Die Werte der Indexattribute können konkrete Werte, Gruppennamen oder None als Wildcard sein.
Fügt dem Index eine Gruppe für ein Attribut hinzu.
Entfernt eine Gruppe für ein Attribut aus dem Index.
Gibt True zurück, wenn der Index kein Objekt enthält, sonst False.
Der Index ist auch dann leer, wenn Gruppen eingerichtet, aber keine Objekte indiziert wurden.
Ruft eine Liste mit allen Objekten ab, deren indizierte Attributwerte zu den Attributwerten des übergebenen Schlüsselobjektes passen.
Damit ein Objekt im Ergebnis enthalten ist, müssen alle Indexattribute passen. Ein Indexattribut passt
Entfernt ein Objekt aus dem Index.