public void setReceived(JID jid, Date date) { Transmission transmission = mTransmissions .stream() .filter(t -> t.getContact().getJID().equals(jid)) .findFirst() .orElse(null); if (transmission == null) { LOGGER.warning("can't find transmission for received status, IDs: " + jid); return; } if (transmission.isReceived()) // probably already received by another client return; transmission.setReceived(date); this.changed(ViewChange.STATUS); }