org.apache.lucene.store
Class FSDirectory

java.lang.Object
  |
  +--org.apache.lucene.store.Directory
        |
        +--org.apache.lucene.store.FSDirectory

public final class FSDirectory
extends Directory

Straightforward implementation of Directory as a directory of files.

Author:
Doug Cutting
See Also:
Directory

Method Summary
 void close()
          Closes the store to future operations.
 OutputStream createFile(String name)
          Creates a new, empty file in the directory with the given name.
 void deleteFile(String name)
          Removes an existing file in the directory.
 boolean fileExists(String name)
          Returns true iff a file with the given name exists.
 long fileLength(String name)
          Returns the length in bytes of a file in the directory.
static long fileModified(File directory, String name)
          Returns the time the named file was last modified.
 long fileModified(String name)
          Returns the time the named file was last modified.
static FSDirectory getDirectory(File file, boolean create)
          Returns the directory instance for the named location.
static FSDirectory getDirectory(String path, boolean create)
          Returns the directory instance for the named location.
 String[] list()
          Returns an array of strings, one for each file in the directory.
 Lock makeLock(String name)
          Construct a Lock.
 InputStream openFile(String name)
          Returns a stream reading an existing file.
 void renameFile(String from, String to)
          Renames an existing file in the directory.
 String toString()
          For debug output.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getDirectory

public static FSDirectory getDirectory(String path,
                                       boolean create)
                                throws IOException
Returns the directory instance for the named location.

Directories are cached, so that, for a given canonical path, the same FSDirectory instance will always be returned. This permits synchronization on directories.

Parameters:
path - the path to the directory.
create - if true, create, or erase any existing contents.
Returns:
the FSDirectory for the named file.

getDirectory

public static FSDirectory getDirectory(File file,
                                       boolean create)
                                throws IOException
Returns the directory instance for the named location.

Directories are cached, so that, for a given canonical path, the same FSDirectory instance will always be returned. This permits synchronization on directories.

Parameters:
file - the path to the directory.
create - if true, create, or erase any existing contents.
Returns:
the FSDirectory for the named file.

list

public final String[] list()
                    throws IOException
Returns an array of strings, one for each file in the directory.
Overrides:
list in class Directory

fileExists

public final boolean fileExists(String name)
                         throws IOException
Returns true iff a file with the given name exists.
Overrides:
fileExists in class Directory

fileModified

public final long fileModified(String name)
                        throws IOException
Returns the time the named file was last modified.
Overrides:
fileModified in class Directory

fileModified

public static final long fileModified(File directory,
                                      String name)
                               throws IOException
Returns the time the named file was last modified.

fileLength

public final long fileLength(String name)
                      throws IOException
Returns the length in bytes of a file in the directory.
Overrides:
fileLength in class Directory

deleteFile

public final void deleteFile(String name)
                      throws IOException
Removes an existing file in the directory.
Overrides:
deleteFile in class Directory

renameFile

public final void renameFile(String from,
                             String to)
                      throws IOException
Renames an existing file in the directory.
Overrides:
renameFile in class Directory

createFile

public final OutputStream createFile(String name)
                              throws IOException
Creates a new, empty file in the directory with the given name. Returns a stream writing this file.
Overrides:
createFile in class Directory

openFile

public final InputStream openFile(String name)
                           throws IOException
Returns a stream reading an existing file.
Overrides:
openFile in class Directory

makeLock

public final Lock makeLock(String name)
Construct a Lock.
Overrides:
makeLock in class Directory
Parameters:
name - the name of the lock file

close

public final void close()
                 throws IOException
Closes the store to future operations.
Overrides:
close in class Directory

toString

public String toString()
For debug output.
Overrides:
toString in class Object


Copyright © 2000-2002 Apache Software Foundation. All Rights Reserved.