summaryrefslogtreecommitdiff
path: root/src/com/benburwell/planes/sbs/AggregateDataSource.java
blob: 08b89ea1b49e55013e69de5633af1202e2455fa5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package com.benburwell.planes.sbs;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by ben on 11/15/16.
 */
public class AggregateDataSource implements DataSource {
    private List<DataListener> subscribers = new ArrayList<>();

    public void addSource(DataSource source) {
        source.subscribe((SBSPacket packet) -> {
            for (DataListener listener : subscribers) {
                listener.handleMessage(packet);
            }
        });
    }

    public void subscribe(DataListener listener) {
        this.subscribers.add(listener);
    }
}