Module

Mit Hilfe von Modulen kann ein Roblet®-Server den Roblets® zusätzliche Ressourcen anbieten.  Module fungieren als eine Art Treiber und werden in der Regel vom Hersteller der Ressource mit angeboten - können aber auch selbst entwickelt werden.  Der Server bietet in der unten beschriebenen Variante über die von den angegebenen Modulen angebotenen Ressourcen hinaus keinen Zugang zum Rechner, auf dem er läuft, und Roblets® sind maximal in ihren Handlungen auf eine "Sandbox" eingeschränkt.

Angenommen man möchte ein Modul mit der Modul-Klasse mypackage.MyModule, enthalten in mypath\myModule.jar bzw. mypath/myModule.jar einbinden und den Server in rdkpath an Standard-TCP-Port 2001 bei aktivierten Sicherheitsmerkmalen betreiben, so ist folgendes zu schreiben (Windows™;  in einer Zeile;  der Klassenpfad ohne Leerzeichen):

java  -classpath
        rdkpath\org.roblet.jar;
        mypath\myModule.jar
    org.roblet.Main
    server
    mypackage.MyModule

Bzw. (Unix/Linux/MacOS/Cygwin;  in einer Zeile;  der Klassenpfad ohne Leerzeichen):

java  -classpath
        rdkpath\org.roblet.jar:
        mypath/myModule.jar
    org.roblet.Main
    server
    mypackage.MyModule

Zu beachten ist, daß Sie nicht die einfache -jar-Variante des Server-Starts verwenden können, in der Hoffnung, dann auf die Angabe der Start-Klasse org.roblet.Main des Servers und das 1. Argument server verzichten zu können.  In diesem einfachen Fall ignoriert die JVM den Klassenpfad.  Weiterhin muß normalerweise sichergestellt sein, daß Roblets® nicht im Klassenpfad der JVM des Servers sichtbar sind, da sie vom Server sonst nicht über das Netz geladen werden.  Eine derartige Situation ist nur selten erwünscht.

Weitere Module fügt man einfach hinzu, indem man den Klassenpfad entsprechend erweitert und die Modul-Klassen als weitere Argumente angibt.

Der Server macht hierbei nur wenige Ausgaben ganz am Anfang.  Modul-Klassen werden in der Reihenfolge ihrer Angabe geladen und initialisiert.  Dabei werden zunächst jedoch nur Module neuen Typs geladen und danach alte.  Module machen dabei teilweise auch Ausgaben.  Log-Ausgaben und anderes werden über weitere Java™-Eigenschaften gesteuert.

powered by genRob®erzeugt am 08.01.2011 um 12:28:48.064 CET mit
genRob®-genSite 3.4