This little project took the webdavhandler ruby gem and adapted it to allow for any number of virtual file system implementations. This means that you, for instance, can have a webdav service which serves a file system residing in a MySQL database. Really anything with a hierarchical setup, can be represented as a filesystem. This WEBrick servlet makes it really easy to implement a custom virtual filesystem based on a few functions (like copy, move, iostream).
One of the things missing in the webdavhandler gem is the support for locking (LOCK, UNLOCK). This has been added to allow OS X to mount the webdav service as read/write instead of read-only.
The source can be found on github: http://github.com/jessevdk/ruby-webdav-vfs. Included are examples of a MySQL based file system and a local file system.