Two reasons: 1. GaeVFS, which is a plug-in to Apache Commons VFS<http://commons.apache.org/vfs/>, manages all of the parent/child relationships inherent in a hierarchical file system. Commons VFS also implements a pluggable caching scheme, and I was able to provide an implementation based on the GAE memcache API. 2. GaeVFS handles "real" files on the local file system as well as "virtual" files that are stored in the Google datastore. This makes it easy to: (a) implement the "combined" file system we discussed previously; and, (b) write code that works the same whether running on GAE or a "regular" environment (one with a writeable file system). By re-implementing CFDIRECTORY and CFFILE on top of GaeVFS, they now work the same whether running within GAE or a "regular" environment (that is, no code that does: "if GAE then...else...").
Vince On Wed, Jun 17, 2009 at 5:10 PM, Baz <[email protected]> wrote: > GaeVFS is built on top of the Google datastore > > > Ah I thought it was a RAM based file-system. Just for my own edification, > if cffile goes directly into the datastore, why the GaeVFS intermediete > layer rather than just have cffile use JPA behind the scenes - or even > implement your GoogleWrite() with the key filled out automatically as a > path? > > Baz > > --~--~---------~--~----~------------~-------~--~----~ Open BlueDragon Public Mailing List http://groups.google.com/group/openbd?hl=en official site @ http://www.openbluedragon.org/ !! save a network - trim replies before posting !! -~----------~----~----~----~------~----~------~--~---
