File tree Expand file tree Collapse file tree 2 files changed +17
-7
lines changed
data-bus/src/main/java/com/iluwatar/databus Expand file tree Collapse file tree 2 files changed +17
-7
lines changed Original file line number Diff line number Diff line change 2626import com .iluwatar .databus .data .MessageData ;
2727import com .iluwatar .databus .data .StartingData ;
2828import com .iluwatar .databus .data .StoppingData ;
29- import com .iluwatar .databus .members .CounterMember ;
29+ import com .iluwatar .databus .members .MessageCollectorMember ;
3030import com .iluwatar .databus .members .StatusMember ;
3131
3232import java .time .LocalDateTime ;
@@ -44,8 +44,8 @@ public static void main(String[] args) {
4444 final DataBus bus = DataBus .getInstance ();
4545 bus .subscribe (new StatusMember (1 ));
4646 bus .subscribe (new StatusMember (2 ));
47- final CounterMember foo = new CounterMember ("Foo" );
48- final CounterMember bar = new CounterMember ("Bar" );
47+ final MessageCollectorMember foo = new MessageCollectorMember ("Foo" );
48+ final MessageCollectorMember bar = new MessageCollectorMember ("Bar" );
4949 bus .subscribe (foo );
5050 bus .publish (StartingData .of (LocalDateTime .now ()));
5151 bus .publish (MessageData .of ("Only Foo should see this" ));
Original file line number Diff line number Diff line change 2727import com .iluwatar .databus .Member ;
2828import com .iluwatar .databus .data .MessageData ;
2929
30+ import java .util .ArrayList ;
31+ import java .util .Collections ;
32+ import java .util .List ;
3033import java .util .logging .Logger ;
3134
3235/**
33- * Receiver of Data-Bus events.
36+ * Receiver of Data-Bus events that collects the messages from each {@link MessageData} .
3437 *
3538 * @author Paul Campbell ([email protected] ) 3639 */
37- public class CounterMember implements Member {
40+ public class MessageCollectorMember implements Member {
3841
39- private static final Logger LOGGER = Logger .getLogger (CounterMember .class .getName ());
42+ private static final Logger LOGGER = Logger .getLogger (MessageCollectorMember .class .getName ());
4043
4144 private final String name ;
4245
43- public CounterMember (String name ) {
46+ private List <String > messages = new ArrayList <>();
47+
48+ public MessageCollectorMember (String name ) {
4449 this .name = name ;
4550 }
4651
@@ -53,5 +58,10 @@ public void accept(final DataType data) {
5358
5459 private void handleEvent (MessageData data ) {
5560 LOGGER .info (String .format ("%s sees message %s" , name , data .getMessage ()));
61+ messages .add (data .getMessage ());
62+ }
63+
64+ public List <String > getMessages () {
65+ return Collections .unmodifiableList (messages );
5666 }
5767}
You can’t perform that action at this time.
0 commit comments