23 * questions. |
23 * questions. |
24 */ |
24 */ |
25 |
25 |
26 package jdk.nio.zipfs; |
26 package jdk.nio.zipfs; |
27 |
27 |
28 import java.io.*; |
28 import java.io.IOException; |
29 import java.nio.channels.*; |
29 import java.io.InputStream; |
|
30 import java.io.OutputStream; |
|
31 import java.net.URI; |
|
32 import java.net.URISyntaxException; |
|
33 import java.nio.channels.AsynchronousFileChannel; |
|
34 import java.nio.channels.FileChannel; |
|
35 import java.nio.channels.SeekableByteChannel; |
30 import java.nio.file.*; |
36 import java.nio.file.*; |
31 import java.nio.file.DirectoryStream.Filter; |
37 import java.nio.file.DirectoryStream.Filter; |
32 import java.nio.file.attribute.*; |
38 import java.nio.file.attribute.BasicFileAttributes; |
|
39 import java.nio.file.attribute.FileAttribute; |
|
40 import java.nio.file.attribute.FileAttributeView; |
33 import java.nio.file.spi.FileSystemProvider; |
41 import java.nio.file.spi.FileSystemProvider; |
34 import java.net.URI; |
|
35 import java.net.URISyntaxException; |
|
36 import java.util.HashMap; |
42 import java.util.HashMap; |
37 import java.util.Map; |
43 import java.util.Map; |
38 import java.util.Set; |
44 import java.util.Set; |
|
45 import java.util.concurrent.ExecutorService; |
39 import java.util.zip.ZipException; |
46 import java.util.zip.ZipException; |
40 import java.util.concurrent.ExecutorService; |
47 |
41 |
48 /** |
42 /* |
49 * @author Xueming Shen, Rajendra Gutupalli, Jaya Hangal |
43 * |
|
44 * @author Xueming Shen, Rajendra Gutupalli, Jaya Hangal |
|
45 */ |
50 */ |
46 |
|
47 public class ZipFileSystemProvider extends FileSystemProvider { |
51 public class ZipFileSystemProvider extends FileSystemProvider { |
48 |
|
49 |
52 |
50 private final Map<Path, ZipFileSystem> filesystems = new HashMap<>(); |
53 private final Map<Path, ZipFileSystem> filesystems = new HashMap<>(); |
51 |
54 |
52 public ZipFileSystemProvider() {} |
55 public ZipFileSystemProvider() {} |
53 |
56 |
200 public final void delete(Path path) throws IOException { |
203 public final void delete(Path path) throws IOException { |
201 toZipPath(path).delete(); |
204 toZipPath(path).delete(); |
202 } |
205 } |
203 |
206 |
204 @Override |
207 @Override |
205 @SuppressWarnings("unchecked") |
|
206 public <V extends FileAttributeView> V |
208 public <V extends FileAttributeView> V |
207 getFileAttributeView(Path path, Class<V> type, LinkOption... options) |
209 getFileAttributeView(Path path, Class<V> type, LinkOption... options) |
208 { |
210 { |
209 return ZipFileAttributeView.get(toZipPath(path), type); |
211 return ZipFileAttributeView.get(toZipPath(path), type); |
210 } |
212 } |