Class FileLock

  extended byorg.openide.filesystems.FileLock

public class FileLock
extends Object

Represents an acquired lock on a FileObject. Typical usage includes locking the file in the editor on first modification, and then using this object to ensure exclusive access when overwriting the file (saving) by using FileObject.getOutputStream(org.openide.filesystems.FileLock). Also used for renames, deletes, &c.

Note that such locks are only used to protect against concurrent write accesses, and are not used for read operations (i.e. they are not write-one-read-many locks). Normally this is sufficient protection. If you really need an atomic read, you may simply lock the file, perform the read, and unlock it when done. The file will still be protected against writes, although the read operation did not request a lock.

See Also:

Field Summary
static FileLock NONE
          Constant that can be used in filesystems that do not support locking.
Constructor Summary
Method Summary
 void finalize()
          Finalize this object.
 boolean isValid()
          Test whether this lock is still active, or released.
 void releaseLock()
          Release this lock.
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Detail


public static final FileLock NONE
Constant that can be used in filesystems that do not support locking. Represents a lock which is never valid.

Constructor Detail


public FileLock()
Method Detail


public void releaseLock()
Release this lock. In typical usage this method will be called in a finally clause.


public boolean isValid()
Test whether this lock is still active, or released.

true if lock is still active


public void finalize()
Finalize this object. Calls releaseLock() to release the lock if the program for some reason failed to.


Built on May 3 2007.  |  Portions Copyright 1997-2005 Sun Microsystems, Inc. All rights reserved.