|
Roblet®-Development-Kit 2.2 (30Dez2015) API für Anwendungen |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface Roblet
Diese Schnittstelle charakterisiert Roblet®-Klassen. Instanzen einer solchen Klasse können einem Roblet®-Server übergeben und von ihm zum Laufen gebracht werden.
Hier ein Beispiel für eine Roblet®-Klasse:
public class MyRoblet
implements org.roblet.Roblet
, java.io.Serializable
{
public Object execute (org.roblet.Robot robot)
{
Object result = null;
// ...
return result;
}
// ...
}
(Da Roblets® meist über ein Netzwerk übertragen werden, muß zusätzlich
zu der hier beschriebenen Schnittstelle normalerweise noch
Serializable implementiert werden.)
Roblet®-Klassen implementieren die hier beschriebene Schnittstelle (s. obiges Beispiel).
Roblet®-Instanzen werden in einer Anwendung zur Laufzeit erzeugt:
Die in einem Roblet®-Server laufenden Instanzen werden schließlich nur mit Roblet® bezeichnet.MyRoblet myRoblet = new MyRoblet (); // ...
Der Grund für eine Unterscheidung zwischen Roblet®-Instanz und (laufendem) Roblet® ist die Tatsache, daß eine Roblet®-Instanz beliebig oft verschickt und damit beliebig oft zum Laufen gebracht werden kann. D.h. von einer Roblet®-Klasse können mehrere Roblet®-Instanzen und von diesen jeweils mehrere Roblets® erzeugt werden.
execute(Robot),
Robot| Method Summary | |
|---|---|
Object |
execute(Robot robot)
Ein Roblet® wird vom Roblet®-Server durch Aufruf dieser Methode laufengelassen - quasi zum Leben erweckt. |
| Method Detail |
|---|
Object execute(Robot robot)
throws Exception
Runnable aus der Java™-Standard-Bibliothek.
Der Parameter Robot ist der Schlüssel zum Roblet®-Server
(ursprünglich ein Roboter).
Diese übergebene Instanz kann benutzt werden, um festzustellen,
ob der Server gewünschte Einheiten (Unit) bereitstellt.
Sie ist niemals null.
Es kann die Instanz einer beliebigen Klasse zurückgeben werden. Dazu gehören auch Felder eines beliebigen Klassentyps (z.B. String[]).
Der Roblet®-Server gibt die jeweilige Instanz an die aufrufende
Anwendung zurück.
Dabei ist zu beachten, daß es sich beim Arbeiten im Netz um
serialisierbare (vgl. Serializable) Klassen handeln
muß.
Es gilt, daß Felder serialisierbarer Klassen serialisierbar sind.
Da der Entwickler weiß, welchen Typ seine zurückgegebene Instanz zur Laufzeit haben wird, kann man auch den entsprechenden cast-Operator "(Klassentyp)" auf Anwendungsseiten auf den Rückgabewert anwenden. Natürlich ist auch eine Rückgabe von null möglich. null läßt sich notfalls auf jeden Typ wandeln (cast).
Das ausgeführte Roblet® braucht Ausnahmen, die vom Typ
Exception abgeleitet sind, nicht
abzufangen.
Die jeweilige Ausnahme wird auf Seiten der Anwendung ebenso als
Ausnahme geworfen und kann dort abgefangen werden.
robot - Erlaubt Zugriff auf die Einheiten des
unterliegenden Roboters;
stets ungleich null
Exception - Beliebige Ausnahme
|
Roblet®-Development-Kit 2.2 (30Dez2015) API für Anwendungen |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||