## org.apache.ivy.plugins.lock
Class FileBasedLockStrategy

    java.lang.Object
      org.apache.ivy.plugins.lock.AbstractLockStrategy
          org.apache.ivy.plugins.lock.FileBasedLockStrategy

All Implemented Interfaces:
  LockStrategy

Direct Known Subclasses:
  ArtifactLockStrategy

    public abstract class FileBasedLockStrategy

extends AbstractLockStrategy

Nested Class Summary
`static class` `FileBasedLockStrategy.CreateFileLocker` "locks" a file by creating it if it doesn't exist, relying on the `File.createNewFile()` atomicity.
`static interface` `FileBasedLockStrategy.FileLocker`
`static class` `FileBasedLockStrategy.NIOFileLocker` Locks a file using the `FileLock` mechanism.

Constructor Summary
`protected` `FileBasedLockStrategy()`
`protected` `FileBasedLockStrategy(boolean debugLocking)`
`protected` `FileBasedLockStrategy(FileBasedLockStrategy.FileLocker locker, boolean debugLocking)`

Method Summary
`protected boolean` `acquireLock(java.io.File file)`
`protected void` `releaseLock(java.io.File file)`

Methods inherited from class org.apache.ivy.plugins.lock.AbstractLockStrategy
`getName, isDebugLocking, setName, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.apache.ivy.plugins.lock.LockStrategy
`lockArtifact, unlockArtifact`

Constructor Detail

### FileBasedLockStrategy

    protected FileBasedLockStrategy()

### FileBasedLockStrategy

    protected FileBasedLockStrategy(boolean debugLocking)

### FileBasedLockStrategy

    protected FileBasedLockStrategy(FileBasedLockStrategy.FileLocker locker,
                                    boolean debugLocking)

Method Detail

### acquireLock

    protected boolean acquireLock(java.io.File file)
                           throws java.lang.InterruptedException

  Throws:
    `java.lang.InterruptedException`

### releaseLock

    protected void releaseLock(java.io.File file)