1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.vfs2.provider.ram;
18
19 import java.util.Arrays;
20 import java.util.Collection;
21 import java.util.Collections;
22
23 import org.apache.commons.vfs2.Capability;
24 import org.apache.commons.vfs2.FileName;
25 import org.apache.commons.vfs2.FileSystem;
26 import org.apache.commons.vfs2.FileSystemException;
27 import org.apache.commons.vfs2.FileSystemOptions;
28 import org.apache.commons.vfs2.provider.AbstractOriginatingFileProvider;
29
30
31
32
33 public class RamFileProvider extends AbstractOriginatingFileProvider {
34
35
36 public static final Collection<Capability> capabilities = Collections.unmodifiableCollection(
37 Arrays.asList(Capability.CREATE, Capability.DELETE, Capability.RENAME, Capability.GET_TYPE,
38 Capability.GET_LAST_MODIFIED, Capability.SET_LAST_MODIFIED_FILE,
39 Capability.SET_LAST_MODIFIED_FOLDER, Capability.LIST_CHILDREN, Capability.READ_CONTENT,
40 Capability.URI, Capability.WRITE_CONTENT, Capability.APPEND_CONTENT, Capability.RANDOM_ACCESS_READ,
41 Capability.RANDOM_ACCESS_SET_LENGTH, Capability.RANDOM_ACCESS_WRITE));
42
43
44
45
46 public RamFileProvider() {
47 }
48
49
50
51
52
53
54
55 @Override
56 protected FileSystem doCreateFileSystem(final FileName name, final FileSystemOptions fileSystemOptions)
57 throws FileSystemException {
58 return new RamFileSystem(name, fileSystemOptions);
59 }
60
61
62
63
64
65
66 @Override
67 public Collection<Capability> getCapabilities() {
68 return capabilities;
69 }
70 }