Skip to content

Commit 9a91f38

Browse files
committed
WIP: Update to new API changes
1 parent d322704 commit 9a91f38

19 files changed

+126
-58
lines changed

src/main/java/org/scijava/io/handle/DefaultBufferedStreamHandle.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ public void seek(final long pos) throws IOException {
105105
}
106106

107107
private long maxBuf() throws IOException {
108-
return getBufferIfOpen().getMaxPos();
108+
return getBufferIfOpen().size();
109109
}
110110

111111
@Override
@@ -231,4 +231,9 @@ private ByteBank getBufferIfOpen() throws IOException {
231231
}
232232
return buffer;
233233
}
234+
235+
@Override
236+
public boolean exists() throws IOException {
237+
return false;
238+
}
234239
}

src/main/java/org/scijava/io/location/AbstractCompressedHandle.java

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,10 @@
3535
import java.io.InputStream;
3636
import java.io.OutputStream;
3737

38-
import org.scijava.io.DataHandle;
39-
import org.scijava.io.DataHandleService;
40-
import org.scijava.io.Location;
38+
import org.scijava.io.handle.AbstractStreamHandle;
39+
import org.scijava.io.handle.DataHandle;
40+
import org.scijava.io.handle.DataHandleService;
41+
import org.scijava.io.handle.ResettableStreamHandle;
4142
import org.scijava.plugin.Parameter;
4243

4344
/**
@@ -79,6 +80,13 @@ public InputStream in() throws IOException {
7980
return inputStream;
8081
}
8182

83+
@Override
84+
public long skip(long n) throws IOException {
85+
long skipped = in().skip(n);
86+
setOffset(offset() + skipped);
87+
return skipped;
88+
}
89+
8290
protected abstract void initInputStream() throws IOException;
8391

8492
@Override
@@ -101,6 +109,11 @@ public long length() throws IOException {
101109
return raw().length();
102110
}
103111

112+
@Override
113+
public boolean exists() throws IOException {
114+
return raw().exists();
115+
}
116+
104117
@Override
105118
public void setLength(long length) throws IOException {
106119
throw new IOException("This handle " + this.getClass().getSimpleName() +
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
2+
package org.scijava.io.location;
3+
4+
public abstract class AbstractHigherOrderLocation implements Location {
5+
6+
private final Location baseLocation;
7+
8+
public AbstractHigherOrderLocation(final Location location) {
9+
this.baseLocation = location;
10+
}
11+
12+
public Location getBaseLocation() {
13+
return baseLocation;
14+
}
15+
}

src/main/java/org/scijava/io/location/bzip2/BZip2Handle.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333

3434
import java.io.IOException;
3535

36-
import org.scijava.io.DataHandle;
36+
import org.scijava.io.handle.DataHandle;
3737
import org.scijava.io.location.AbstractCompressedHandle;
3838
import org.scijava.plugin.Plugin;
3939

@@ -60,5 +60,4 @@ protected void initInputStream() throws IOException {
6060
public Class<BZip2Location> getType() {
6161
return BZip2Location.class;
6262
}
63-
6463
}

src/main/java/org/scijava/io/location/bzip2/BZip2Location.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11

22
package org.scijava.io.location.bzip2;
33

4-
import org.scijava.io.DataHandle;
5-
import org.scijava.io.Location;
4+
import org.scijava.io.handle.DataHandle;
65
import org.scijava.io.location.AbstractHigherOrderLocation;
6+
import org.scijava.io.location.Location;
77

88
/**
99
* {@link Location} backed by a {@link DataHandle} that is BZip2 compressed.

src/main/java/org/scijava/io/location/bzip2/CBZip2InputStream.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@
5656
import java.io.IOException;
5757
import java.io.InputStream;
5858

59-
import org.scijava.io.DataHandle;
60-
import org.scijava.io.Location;
59+
import org.scijava.io.handle.DataHandle;
60+
import org.scijava.io.location.Location;
6161
import org.scijava.log.LogService;
6262

6363
/**

src/main/java/org/scijava/io/location/gzip/GZipHandle.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@
3333
import java.io.IOException;
3434
import java.util.zip.GZIPInputStream;
3535

36-
import org.scijava.io.DataHandle;
37-
import org.scijava.io.DataHandleInputStream;
36+
import org.scijava.io.handle.DataHandle;
37+
import org.scijava.io.handle.DataHandleInputStream;
3838
import org.scijava.io.location.AbstractCompressedHandle;
3939
import org.scijava.plugin.Plugin;
4040

src/main/java/org/scijava/io/location/gzip/GZipLocation.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11

22
package org.scijava.io.location.gzip;
33

4-
import org.scijava.io.DataHandle;
5-
import org.scijava.io.Location;
4+
import org.scijava.io.handle.DataHandle;
65
import org.scijava.io.location.AbstractHigherOrderLocation;
6+
import org.scijava.io.location.Location;
77

88
/**
99
* {@link Location} backed by a {@link DataHandle} that is <code>gzip</code>

src/main/java/org/scijava/io/location/zip/ZipHandle.java

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,12 @@
3535
import java.util.zip.ZipEntry;
3636
import java.util.zip.ZipInputStream;
3737

38-
import org.scijava.io.DataHandle;
39-
import org.scijava.io.DataHandleInputStream;
40-
import org.scijava.io.Location;
38+
import org.scijava.io.handle.DataHandle;
39+
import org.scijava.io.handle.DataHandleInputStream;
40+
import org.scijava.io.handle.ResettableStreamHandle;
41+
import org.scijava.io.handle.StreamHandle;
4142
import org.scijava.io.location.AbstractCompressedHandle;
42-
import org.scijava.io.location.ResettableStreamHandle;
43-
import org.scijava.io.location.StreamHandle;
43+
import org.scijava.io.location.Location;
4444
import org.scijava.plugin.Plugin;
4545

4646
/**
@@ -202,4 +202,16 @@ protected void initInputStream() throws IOException {
202202
resetStream();
203203
}
204204
}
205+
206+
@Override
207+
public long length() throws IOException {
208+
if (entry == null) {
209+
return -1;
210+
}
211+
return entry.getSize();
212+
}
213+
214+
public long getEntryLength() {
215+
return entryLength;
216+
}
205217
}

src/main/java/org/scijava/io/location/zip/ZipLocation.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,9 @@
3333

3434
import java.util.zip.ZipEntry;
3535

36-
import org.scijava.io.DataHandle;
37-
import org.scijava.io.Location;
36+
import org.scijava.io.handle.DataHandle;
3837
import org.scijava.io.location.AbstractHigherOrderLocation;
38+
import org.scijava.io.location.Location;
3939
import org.scijava.plugin.Plugin;
4040

4141
/**

0 commit comments

Comments
 (0)