Java Reference
In-Depth Information
Felix an, dass eine Eingabe entgegengenommen werden kann). Im Folgenden wird gezeigt,
wie Felix gestartet wird, wie dann unsere Komponente installiert und anschließend gestar-
tet wird. Dazwischen wird immer wieder das Kommando lb (list bundles) aufgerufen, das
alle momentan installierten Komponenten u. a. mit ihrer Kennung und ihrem Status anzeigt:
$ java -jar bin\felix.jar
g! lb
START LEVEL 1
ID|State |Level|Name
0|Active | 0|System Bundle (4.0.2)
224|Active | 1|Apache Felix File Install (3.2.0)
229|Active | 1|Apache Felix Bundle Repository (1.6.6)
230|Active | 1|Apache Felix Gogo Command (0.12.0)
231|Active | 1|Apache Felix Gogo Runtime (0.10.0)
232|Active | 1|Apache Felix Gogo Shell (0.10.0)
g! install file:/Users/oechsle/Desktop/felix/bundle1.zip
Bundle ID: 280
g! lb
START LEVEL 1
ID|State |Level|Name
0|Active | 0|System Bundle (4.0.2)
224|Active | 1|Apache Felix File Install (3.2.0)
229|Active | 1|Apache Felix Bundle Repository (1.6.6)
230|Active | 1|Apache Felix Gogo Command (0.12.0)
231|Active | 1|Apache Felix Gogo Runtime (0.10.0)
232|Active | 1|Apache Felix Gogo Shell (0.10.0)
280|Installed | 1|CounterService (1.0.0)
g! start 280
CounterServiceActivator.start
g! lb
START LEVEL 1
ID|State |Level|Name
0|Active | 0|System Bundle (4.0.2)
224|Active | 1|Apache Felix File Install (3.2.0)
229|Active | 1|Apache Felix Bundle Repository (1.6.6)
230|Active | 1|Apache Felix Gogo Command (0.12.0)
231|Active | 1|Apache Felix Gogo Runtime (0.10.0)
232|Active | 1|Apache Felix Gogo Shell (0.10.0)
280|Active | 1|CounterService (1.0.0)
g!
Wie zu sehen ist, zeigt die erstmalige Ausführung des Kommandos lb einige vorhandene
Felix-Komponenten an, wobei die Komponente mit dem Namen „System Bundle“ keine
echte Komponente, sondern das Framework selbst ist. Jede Komponente besitzt eine eindeu-
tige Kennung, die fortlaufend vergeben wird. Nach dem Installieren unserer ersten Beispiel-
komponente gibt das Felix-Framework die Kennung für das neu installierte Bundle aus (in
unserem Beispiel ist das 280). Die zweite Ausführung von lb zeigt, dass die neue Kompo-
nente existiert. Im Gegensatz zu allen anderen Komponenten ist unsere Beispielkompo-
nente aber nicht im Zustand Active, sondern im Zustand Installed. Das heißt, dass von der
Activator-Klasse noch kein Objekt erzeugt und auch die Start-Methode auf dieses Objekt
noch nicht angewendet wurde. Dies erfolgt erst durch das Kommando start, wobei man dazu
die Kennung des Bundles angeben muss, das gestartet werden soll. Wie man oben sehen
kann, bewirkt die Eingabe des Start-Kommandos eine Ausgabe der Meldung, die von der
Start-Methode unserer Komponente erzeugt wird. Off ensichtlich ist nun also ein Objekt
 
Search WWH ::




Custom Search