|
|
||||||||||||||||||||||
|
OntwerpOm nds-gegevens en persoonsgegevens in enige omvang te verwerken zijn speciale structuur-objecten nodig. Deze worden voorgesteld door de classes NDSMap resp PTree. Een NDSMap is een verzameling nds-users. Het woord 'Map' wordt in Java gebruikt voor key/value pairs. In een NDSMap kan het zijn dat een nds-user via meer dan 1 key opvraagbaar is. Je kunt ze op object-name (hetzelfde als user- of loginname) opvragen; op sleutel (het overeenstemmende veld in de persoonsgegevens); of op dn (distinguished name, in directory volledige naam). Ook zijn de containers waarin de verzameling gebruikers zich bevinden bereikbaar via de nds-map. Dwz elke nds-map heeft verwijzingen naar alle contexten van de gebruikers die opgeslagen zijn in de nds-map. Een PTree is een voorstelling van een organisatie met personen, afdelingen en groepen. PTree is recursief gedefinieerd en kent 3 verschijningsvormen:
Alle personen die tot een organisatie behoren zijn als eerste lid van de root van de ptree die die organisatie voorstelt. Daarnaast kunnen ze een aantal keer voorkomen in de groepen die ergens onder de root te vinden zijn. Bij het gebruik van NDSMap en PTree kan worden opgemerkt, dat in CUG een PTree niet vaak wordt gewijzigd, terwijl een NDSMap te kust en te keur worden gevuld, vergeleken en leeggemaakt. De PTree is als min of meer vaststaand leidend. Een NDSUser heeft een verwijzing naar een Person, wat de NDSMap geschikt maakt om selecties te doen van gebruikers zonder de verwijzing naar de bijbehorende Person te verliezen. |