@Override
    public void setComplete() {
        complete.set(true);
        done.countDown();
    }
@Test
    public void testSetComplete() throws Exception {
        TransferStatus status = new TransferStatus();
        status.setLength(1L);
        assertFalse(status.isComplete());
        status.setOffset(1L);
        assertFalse(status.isComplete());
        status.setComplete();
        assertTrue(status.isComplete());
        assertTrue(status.await());
    }