commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Turner <>
Subject [latka][jelly] commons-vfs?
Date Sun, 14 Jul 2002 13:22:03 GMT

Just a random thought,

Imagine if we had, as a Commons project, a Virtual Filesystem (VFS)
abstraction layer.

Then we could have a HTTP backend to the VFS, providing a concrete API
for navigating a URI space. One could traverse a website just like a
filesystem, and each 'node' would be a HTTP resource, with properties
like 'Content-Type' (ie HTTP headers). Exactly how to explore a URI
space to build up a VFS is an open question, but imagine lazily
evaluating spidering engines, or exploiting Cocoon's "link view" system,
where if '?cocoon-view=links' is appended to a URL, a list of page links
is returned.

That would be a nifty little project on it's own, and would provide a
nice intuitive interface to HTTPClient.

I'd then like to layer on top of this, engines like Myrmidon (Ant2
proposal) and Jelly. So one could traverse a VFS with XPath-like tags,
<forEach> expressions, create <v-fileset>s of URIs, etc.

Then this would provide a marvellous base for functional testing tools
like Latka and Anteater:
 - It would no longer matter if what's being validated is from a local
   filesystem, or retrieved via HTTP, HTTPS, FTP, LDAP, database, etc.
 - We could write 'spidering' tests, like "validate that all files in
   this website conform to the HTML 4.0 DTD", or "ensure no links are
   broken". This type of test could massively increase the value-add
   of functional testing tools.

Anyway, Myrmidon has a VFS, courtesy of Adam Murdoch. It is independent
of Myrmidon, and it's main dependency is on Excalibur i18n, which will
probably end up in Commons. So my questions are:

1) Would a VFS layer be a good addition to Commons. In particular, would
Latka people regard automated traversal of URIs as useful in writing
test scripts?

2) Adam, if it all sounds decent, are you amenable to supporting the
VFS as a Commons project, rather than as something Myrmidon-specific? I
think many ant-devvers would agree that Ant2 should build on Commons
components where possible.



To unsubscribe, e-mail:   <>
For additional commands, e-mail: <>

View raw message