void expressionToUML() { // Executes two commands, one on languages, and another one on bodies int fillLanguage = 0, fillBody = 0; languages.clear(); bodies.clear(); Iterator<Expression> iterator = expressions.iterator(); while (iterator.hasNext()) { Expression expression = iterator.next(); if (expression == null) { iterator.remove(); continue; } String language = expression.getLanguage(); String body = expression.getBody(); if (language == null && body == null) { iterator.remove(); continue; } if (language != null && body != null) { addLanguage(language, fillLanguage); addBody(body, fillBody); fillBody = fillLanguage = 0; } if (language == null) { fillLanguage++; addBody(body, fillBody); fillBody = 0; } else if (body == null) { fillBody++; addLanguage(language, fillLanguage); fillLanguage = 0; } } }
/** * Updates the available brokers from a {@link BrokersStatus} event. * * @param statuses the new statuses */ public synchronized void setBrokersStatus(BrokersStatus statuses) { mBrokerMap.clear(); mAvailableBrokers.clear(); List<Broker> availableBrokers = Lists.newArrayList(); availableBrokers.add(AUTO_SELECT_BROKER); for (BrokerStatus status : statuses.getBrokers()) { if (status.getLoggedOn()) { Broker broker = new Broker(status.getName(), status.getId()); mBrokerMap.put(status.getId(), broker); availableBrokers.add(broker); } } mAvailableBrokers.addAll(availableBrokers); }