* @throws IllegalArgumentException if the visitor is null
* @throws IllegalStateException if the root is a leaf node
*/
public void visit(VirtualFileVisitor visitor) throws IOException
{
VirtualFileHandler handler = context.getRoot();
if (handler.isLeaf())
throw new IllegalStateException("File cannot contain children: " + handler);
WrappingVirtualFileHandlerVisitor wrapper = new WrappingVirtualFileHandlerVisitor(visitor);
context.visit(handler, wrapper);
}