@Override
    public Write.Append append(final Path file, final TransferStatus status) throws BackgroundException {
        final List<Path> segments;
        long size = 0L;
        try {
            segments = new SwiftObjectListService(session, regionService).list(new SwiftSegmentService(session, regionService)
                    .getSegmentsDirectory(file), new DisabledListProgressListener()).toList();
            if(segments.isEmpty()) {
                return Write.override;
            }
        }
        catch(NotfoundException e) {
            return Write.override;
        }
        for(Path segment : segments) {
            size += segment.attributes().getSize();
        }
        return new Write.Append(true).withStatus(status).withOffset(size);
    }
@Test
    public void testAppendNoSegmentFound() throws Exception {
        final Path container = new Path("test.cyberduck.ch", EnumSet.of(Path.Type.directory, Path.Type.volume));
        container.attributes().setRegion("IAD");
        final SwiftRegionService regionService = new SwiftRegionService(session);
        final Write.Append append = new SwiftLargeObjectUploadFeature(session, regionService,
                new SwiftWriteFeature(session, regionService))
                .append(new Path(container, new AlphanumericRandomStringService().random(), EnumSet.of(Path.Type.file)), new TransferStatus());
        assertFalse(append.append);
        assertEquals(Write.override, append);
    }