FileEntry extends Entry { @Override public boolean hasUnavailableContent(List<Entry> entriesWithUnavailableContent) { if (myContent.isAvailable()) return false; entriesWithUnavailableContent.add(this); return true; } FileEntry(int id, String name, Content content, long timestamp, boolean isReadOnly);  FileEntry(Stream s); @Override void write(Stream s); @Override long getTimestamp(); @Override boolean isReadOnly(); @Override void setReadOnly(boolean isReadOnly); @Override Content getContent(); @Override boolean hasUnavailableContent(List<Entry> entriesWithUnavailableContent); @Override FileEntry copy(); @Override void changeContent(Content newContent, long newTimestamp); @Override void collectDifferencesWith(Entry e, List<Difference> result);  }
@Test public void testHasUnavailableContent() { Entry e1 = new FileEntry(1, null, c("abc"), -1, false); Entry e2 = new FileEntry(2, null, new UnavailableContent(), -1, false); assertFalse(e1.hasUnavailableContent()); assertTrue(e2.hasUnavailableContent()); }