KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jboss > virtual > spi > VFSContext


1 /*
2   * JBoss, Home of Professional Open Source
3   * Copyright 2005, JBoss Inc., and individual contributors as indicated
4   * by the @authors tag. See the copyright.txt in the distribution for a
5   * full listing of individual contributors.
6   *
7   * This is free software; you can redistribute it and/or modify it
8   * under the terms of the GNU Lesser General Public License as
9   * published by the Free Software Foundation; either version 2.1 of
10   * the License, or (at your option) any later version.
11   *
12   * This software is distributed in the hope that it will be useful,
13   * but WITHOUT ANY WARRANTY; without even the implied warranty of
14   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15   * Lesser General Public License for more details.
16   *
17   * You should have received a copy of the GNU Lesser General Public
18   * License along with this software; if not, write to the Free
19   * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
20   * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
21   */

22 package org.jboss.virtual.spi;
23
24 import java.io.IOException JavaDoc;
25 import java.net.URI JavaDoc;
26 import java.util.List JavaDoc;
27 import java.util.Map JavaDoc;
28
29 import org.jboss.virtual.VFS;
30
31 /**
32  * A virtual file context
33  *
34  * @author Scott.Stark@jboss.org
35  * @author adrian@jboss.org
36  * @version $Revision: 55466 $
37  */

38 public interface VFSContext
39 {
40    /**
41     * Get the root uri
42     *
43     * @return the root uri
44     */

45    URI JavaDoc getRootURI();
46
47    /**
48     * Get the VFS for this context
49     *
50     * @return the vfs
51     */

52    VFS getVFS();
53    
54    /**
55     * Return the root virtual file
56     *
57     * @return the root
58     * @throws IOException for any problem accessing the VFS
59     */

60    VirtualFileHandler getRoot() throws IOException JavaDoc;
61
62    /**
63     * Get the context option settings
64     *
65     * @return a map of the context options
66     */

67    Map JavaDoc<String JavaDoc, String JavaDoc> getOptions();
68
69    /**
70     * Get the children
71     *
72     * @param parent the parent
73     * @param ignoreErrors whether to ignore errors
74     * @return the children
75     * @throws IOException for any problem accessing the VFS
76     * @throws IllegalArgumentException for a null parent
77     */

78    List JavaDoc<VirtualFileHandler> getChildren(VirtualFileHandler parent, boolean ignoreErrors) throws IOException JavaDoc;
79    
80    /**
81     * Find a child
82     *
83     * @param parent the parent
84     * @param path the path
85     * @return the child
86     * @throws IOException for any problem accessing the VFS
87     * @throws IllegalArgumentException for a null parent or name
88     */

89    VirtualFileHandler findChild(VirtualFileHandler parent, String JavaDoc path) throws IOException JavaDoc;
90    
91    /**
92     * Visit the virtual file system
93     *
94     * @param handler the reference handler
95     * @param visitor the visitor
96     * @throws IOException for any error
97     * @throws IllegalArgumentException if the handler or visitor is null
98     */

99    void visit(VirtualFileHandler handler, VirtualFileHandlerVisitor visitor) throws IOException JavaDoc;
100 }
101
Popular Tags