package p2pp;
import org.klomp.snark.Peer;
import org.klomp.snark.PeerCoordinator;
public class CompositeDownloadProgressListener implements
DownloadProgressListener {
DownloadProgressListener[] listeners;
public CompositeDownloadProgressListener(DownloadProgressListener... listeners) {
this.listeners = listeners;
}
@Override
public void pieceDownloaded(Peer peer, int piece) {
for(DownloadProgressListener l : listeners)
l.pieceDownloaded(peer, piece);
}
@Override
public void downloadComplete() {
for(DownloadProgressListener l : listeners)
l.downloadComplete();
}
@Override
public void pieceRequested(Peer peer, int piece) {
for(DownloadProgressListener l : listeners)
l.pieceRequested(peer, piece);
}
@Override
public void setPeerCoordinator(PeerCoordinator coord) {
for(DownloadProgressListener l : listeners)
l.setPeerCoordinator(coord);
}
}