/** * Adds all blips in the given conversation to the {@link EventMessageBundle}. * * @param eventMessageBundle to add the blips to * @param conversation {@link Conversation} to get all blips from * @param wavelet {@link Wavelet} that the {@link Conversation} is based on * @param eventDataConverter {@link EventDataConverter} used for conversion */ public static void addAllBlipsToEventMessages(EventMessageBundle eventMessageBundle, Conversation conversation, Wavelet wavelet, EventDataConverter eventDataConverter) { Queue<ConversationThread> threads = new LinkedList<ConversationThread>(); threads.add(conversation.getRootThread()); while (!threads.isEmpty()) { ConversationThread thread = threads.remove(); for (ConversationBlip blip : thread.getBlips()) { addBlipToEventMessages(eventMessageBundle, blip, wavelet, eventDataConverter); for (ConversationThread replyThread : blip.getReplyThreads()) { threads.add(replyThread); } } } } }
ConversationBlip rootBlip = conversation.getRootThread().getFirstBlip(); if (rootBlip != requiredBlip) { ContextResolver.addBlipToEventMessages( eventMessageBundle, rootBlip, wavelet, eventDataConverter); ContextResolver.addBlipToEventMessages( eventMessageBundle, requiredBlip, wavelet, eventDataConverter); if (contextSet.contains(Context.CHILDREN)) { for (ConversationBlip child : eventDataConverter.findBlipChildren(requiredBlip)) { ContextResolver.addBlipToEventMessages( eventMessageBundle, child, wavelet, eventDataConverter); ConversationBlip parent = eventDataConverter.findBlipParent(requiredBlip); if (parent != null) { ContextResolver.addBlipToEventMessages( eventMessageBundle, parent, wavelet, eventDataConverter); for (ConversationBlip blip : containingThread.getBlips()) { if (blip != requiredBlip) { ContextResolver.addBlipToEventMessages( eventMessageBundle, blip, wavelet, eventDataConverter);