Exemplo n.º 1
0
  @Override
  public void setLockFactory(LockFactory lockFactory) throws IOException {
    super.setLockFactory(lockFactory);

    // for filesystem based LockFactory, delete the lockPrefix, if the locks are placed
    // in index dir. If no index dir is given, set ourselves
    if (lockFactory instanceof FSLockFactory) {
      final FSLockFactory lf = (FSLockFactory) lockFactory;
      final File dir = lf.getLockDir();
      // if the lock factory has no lockDir set, use the this directory as lockDir
      if (dir == null) {
        lf.setLockDir(directory);
        lf.setLockPrefix(null);
      } else if (dir.getCanonicalPath().equals(directory.getCanonicalPath())) {
        lf.setLockPrefix(null);
      }
    }
  }
Exemplo n.º 2
0
 /**
  * Create a new NIOFSDirectory for the named location and {@link FSLockFactory#getDefault()}. The
  * directory is created at the named location if it does not yet exist.
  *
  * @param path the path of the directory
  * @throws IOException if there is a low-level I/O error
  */
 public NIOFSDirectory(Path path) throws IOException {
   this(path, FSLockFactory.getDefault());
 }