Administrative Interfaces


jAugment hat basierend auf JINI angefangen (mittlerweile giebt es Unterstützung für andere Netzwerk-Technologien und wir abstrahieren weiter stärker von JINI) und in JINI könen alle Dienste, seien es HaVi-Video-Recorder oder Text-Editoren, durch ein Objekt, welches bekannte adminstrative Schnittstellen implementiert administriert werden. Dies erlaubt das schreiben von administrativen Werkzeugen, welche neue Dienste sicher verwalten können, die sie niemals gesehen haben.
Der Proxy eines Dienstes implementiert das Interface Administratable, welches genau eine Funktion implementiert, welche das adminstrative Objetk liefert.
Wenn dieses Objekt eine GUI-Komponente oder ein UIDescriptor ist, kann es direkt dargestellt werden (nicht empfohlen, da keine AWT/Swing/...-Unterstützung vorausgesetzt werden kann und die Interaktion eventuell auch nicht durch einen Nutzer, sondern ein Script erfolgt, wodurch hier unnötiger Overhead erzeugt wird.). Der Service-Browser (in jAugment sind die Nutzer-Schnittstellen im Grunde solche) kann sich aber auch die Interfaces ansehen und seine eigene Representation anzeigen. In jAugment passiert beides in der SwingUI.
Die Interfaces enthalten Funktionen wie: Anhalten und Neu-Starten eines Dienstes, setzen des Ortes (hier: Datei), an dem der persistente Zustand gespeichert wird, Anhängen neuer Attribute oder das modifizieren existierender,... .
Sie erlauben auch das Einstellen der Gruppen, zu denen ein Dienst gehört. Dienste sehen sich gegenseitig nur, wenn sie mindestens eine Gruppe teilen. (Sie sind in jAugment immer Mittglied der pubnlic-Gruppe, das kann aber anders konfiguruert werden.).