]> git.argeo.org Git - lgpl/argeo-commons.git/blob - JcrFileSystem.java
40328e8a093c2fce05b3a84ac7032686052554fc
[lgpl/argeo-commons.git] / JcrFileSystem.java
1 package org.argeo.jcr.fs;
2
3 import java.io.IOException;
4 import java.nio.file.FileStore;
5 import java.nio.file.FileSystem;
6 import java.nio.file.Path;
7 import java.nio.file.PathMatcher;
8 import java.nio.file.WatchService;
9 import java.nio.file.attribute.UserPrincipalLookupService;
10 import java.nio.file.spi.FileSystemProvider;
11 import java.util.Set;
12
13 import javax.jcr.Session;
14
15 import org.argeo.jcr.JcrUtils;
16
17 public class JcrFileSystem extends FileSystem {
18 private final JcrFileSystemProvider provider;
19 private final Session session;
20
21 public JcrFileSystem(JcrFileSystemProvider provider, Session session) {
22 super();
23 this.provider = provider;
24 this.session = session;
25 }
26
27 @Override
28 public FileSystemProvider provider() {
29 return provider;
30 }
31
32 @Override
33 public void close() throws IOException {
34 JcrUtils.logoutQuietly(session);
35 }
36
37 @Override
38 public boolean isOpen() {
39 return session.isLive();
40 }
41
42 @Override
43 public boolean isReadOnly() {
44 return false;
45 }
46
47 @Override
48 public String getSeparator() {
49 return "/";
50 }
51
52 @Override
53 public Iterable<Path> getRootDirectories() {
54 return null;
55 }
56
57 @Override
58 public Iterable<FileStore> getFileStores() {
59 // TODO Auto-generated method stub
60 return null;
61 }
62
63 @Override
64 public Set<String> supportedFileAttributeViews() {
65 // TODO Auto-generated method stub
66 return null;
67 }
68
69 @Override
70 public Path getPath(String first, String... more) {
71 // TODO Auto-generated method stub
72 return null;
73 }
74
75 @Override
76 public PathMatcher getPathMatcher(String syntaxAndPattern) {
77 // TODO Auto-generated method stub
78 return null;
79 }
80
81 @Override
82 public UserPrincipalLookupService getUserPrincipalLookupService() {
83 // TODO Auto-generated method stub
84 return null;
85 }
86
87 @Override
88 public WatchService newWatchService() throws IOException {
89 // TODO Auto-generated method stub
90 return null;
91 }
92
93 public Session getSession() {
94 return session;
95 }
96
97 }