package com.llgc.publisher; import java.util.Collection; import java.util.Collections; import java.util.LinkedList; import java.util.Queue; public class Subscriber { private Queue topics; private Queue myMessages; public Subscriber() { topics = new LinkedList(); myMessages = new LinkedList(); } public void listen(String newTopic) { topics.add(newTopic); } public void print() { while (!myMessages.isEmpty()) { Message newMessage = myMessages.poll(); System.out.println("Topic : " + newMessage.getTopic() + System.lineSeparator() + newMessage.getPayLoad()); } } public Collection getTopics() { return Collections.unmodifiableCollection(topics); } public void addMessage(Message message) { myMessages.add(message); } }