Java Reference
In-Depth Information
Collection<Integer> values =
bus.sendForMultipleWithHint("increment");
System.out.println("" + values);
}
Nun erhält man die Rückgabewerte aller fünf aufgerufenen Methoden in unterschiedlicher
Reihenfolge:
[1, 1, 2, 2, 2]
[2, 4, 4, 2, 4]
[6, 6, 3, 6, 3]
[4, 8, 8, 4, 8]
...
[10, 20, 20, 10, 20]
154 Zweite RRiBbit-Anwendung
Die zweite RRiBbit demonstriert zum einen, wie eine Komponente eine andere Komponente
benutzt (das wurde für alle anderen Komponenten-Frameworks ebenfalls gezeigt), und zum
anderen unterschiedliche Möglichkeiten zur Auswahl von @Listener-Methoden.
Als neue Komponentenklasse benutzen wir die Klasse SomeClass aus Listing 15.4. Diese
Klasse hat mehrere Methoden. Alle Methodenaufrufe sollen von einem einzigen Zähler
ge zählt werden, wobei dafür der Counter aus Listing 15.1 verwendet werden soll. Wir gehen
davon aus, dass im Hauptprogramm die beiden Klassen SomeClass und Counter zur Erzeu-
gung des ListenerObjectCreators übergeben werden, so dass es also zu jeder Klasse genau
ein Objekt geben wird.
Listing 15.4 Klasse SomeClass mit @Listener-Annotationen
package javacomp.eventbus.match;
import org.rribbit.Listener;
import org.rribbit.RRB;
public class SomeClass
{
private int increment()
{
return RRB.get().send("increment");
}
@Listener
public void m(String s)
{
System.out.println("m(String) - " + increment());
}
@Listener
public void m(int i, String s)
{
 
Search WWH ::




Custom Search