VFS - Next
1. apply http://issues.apache.org/bugzilla/show_bug.cgi?id=33795
ram filesystem
2. apply http://issues.apache.org/bugzilla/show_bug.cgi?id=36047
services & svn filesystem (we have to setup an external space to provide the svn filesystem as the used library JavaSVN is LGPL)
we need a discussion about a new name instead of "services" (maybe).
The idea is to have calls like
Commit commitFile = FileObject.getService(Commit.class) commitFile.process(); TumbnailImage thumb = FileObject.getService(TumbnailImage.class) thumb.process(); Image bi = thumb.getImage(); ExifData exif = FileObject.getService(ExifData.class) exif.process(); String camera = exif.getCameraModel();
You get the idea?
The current name proposals are:
- operation - getOperation() (idea from: http://people.tryphon.org/~alban/io-operations/docs/api/index.html)
- serivce - getService()
- aspect - getAspect()
3. user api
a way to avoid to put username/password into the url.
Using a callback mechanism to get this data when needed.
4. progress, pause and cancellation api
callbacks to be informed about ongoing operations (copy, move, rename, delete, copy-progress, move-progress (if between filesystems)) Ability to pause or cancel the operation.
5. browse roots
e.g. smb or local partitions (windows - c:, d:, ...)
6. caching review - allow to configure fileObjects internal state cache
This is to avoid the .close() calling to get fresh data.
Sure, this might slow down alot, but if one would like have it, it should be possible.
Also try to find a way to avoid refreshing the internal children chache, or at least avoid successive refresh as good as possible.
7. xpath
allow xpath style filesystem browsing
8. review virtual filesystem
see what happend to the virtual filesystem
9. file permissions (non-native)
(with non native code only)
figure out a way to represent file permissions and a way to modify then
10. native parts (if possible through jdic)
- filesystem notifications - to get informed about external filesystem events
- file permissions to allow fine grained setup for local files
- partition information (type, space, label) - some available in JDIC but also keep in mind this: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4057701
11. write support for archives
this would require it to
- copy the archive locally 2. apply the change 3. repack the archive 4. copy the archive back to its place
We should stay in state 2. until one sends a signal to finish with the archive.
new filesystems
- pop, imap (useable for emails)
- mime (for the email itself - pretty much like an archive)
Consider this url:
zip:mime:imap://user@mailserver/INBOX/folders/newMail.mime!/attachment1.zip!/zipentry.txt
Cool, isnt it?
- generic XML
- ant (only a variant of XML? Cant we just set a dtd or scheme using some sort of configurationOption ?)
- java structure (by class, by source?)
wishes
The best change to get those added is by contribute them
Eclipse enabled VFS JARs
In addition to the current plugin model, use the OSGi plugin model to allow configuration of e.g. additional filesystem providers.
(Sorry Robert for shortening your text that much)
non confimed
(add your wishes here)
x. filesystem xyz
blablabla