FS, FS_Posix: remove deprecated #createNewFile(File) method

Change-Id: Id34a0be998eee360e69f74b469c4990afa153c1b
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/util/FS.java b/org.eclipse.jgit/src/org/eclipse/jgit/util/FS.java
index 4433dcc..8e0b93f 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/util/FS.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/util/FS.java
@@ -1763,25 +1763,6 @@ public void createSymLink(File path, String target) throws IOException {
 	}
 
 	/**
-	 * Create a new file. See {@link java.io.File#createNewFile()}. Subclasses
-	 * of this class may take care to provide a safe implementation for this
-	 * even if {@link #supportsAtomicCreateNewFile()} is <code>false</code>
-	 *
-	 * @param path
-	 *            the file to be created
-	 * @return <code>true</code> if the file was created, <code>false</code> if
-	 *         the file already existed
-	 * @throws java.io.IOException
-	 *             if an IO error occurred
-	 * @deprecated use {@link #createNewFileAtomic(File)} instead
-	 * @since 4.5
-	 */
-	@Deprecated
-	public boolean createNewFile(File path) throws IOException {
-		return path.createNewFile();
-	}
-
-	/**
 	 * A token representing a file created by
 	 * {@link #createNewFileAtomic(File)}. The token must be retained until the
 	 * file has been deleted in order to guarantee that the unique file was
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_POSIX.java b/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_POSIX.java
index e73095f..db2b5b4 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_POSIX.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_POSIX.java
@@ -341,73 +341,6 @@ public boolean supportsAtomicCreateNewFile() {
 		return supportsAtomicFileCreation == AtomicFileCreation.SUPPORTED;
 	}
 
-	@Override
-	@SuppressWarnings("boxing")
-	/**
-	 * {@inheritDoc}
-	 * <p>
-	 * An implementation of the File#createNewFile() semantics which works also
-	 * on NFS. If the config option
-	 * {@code core.supportsAtomicCreateNewFile = true} (which is the default)
-	 * then simply File#createNewFile() is called.
-	 *
-	 * But if {@code core.supportsAtomicCreateNewFile = false} then after
-	 * successful creation of the lock file a hard link to that lock file is
-	 * created and the attribute nlink of the lock file is checked to be 2. If
-	 * multiple clients manage to create the same lock file nlink would be
-	 * greater than 2 showing the error.
-	 *
-	 * @see "https://www.time-travellers.org/shane/papers/NFS_considered_harmful.html"
-	 *
-	 * @deprecated use {@link FS_POSIX#createNewFileAtomic(File)} instead
-	 * @since 4.5
-	 */
-	@Deprecated
-	public boolean createNewFile(File lock) throws IOException {
-		if (!lock.createNewFile()) {
-			return false;
-		}
-		if (supportsAtomicCreateNewFile()) {
-			return true;
-		}
-		Path lockPath = lock.toPath();
-		Path link = null;
-		FileStore store = null;
-		try {
-			store = Files.getFileStore(lockPath);
-		} catch (SecurityException e) {
-			return true;
-		}
-		try {
-			Boolean canLink = CAN_HARD_LINK.computeIfAbsent(store,
-					s -> Boolean.TRUE);
-			if (Boolean.FALSE.equals(canLink)) {
-				return true;
-			}
-			link = Files.createLink(
-					Paths.get(lock.getAbsolutePath() + ".lnk"), //$NON-NLS-1$
-					lockPath);
-			Integer nlink = (Integer) Files.getAttribute(lockPath,
-					"unix:nlink"); //$NON-NLS-1$
-			if (nlink > 2) {
-				LOG.warn(MessageFormat.format(
-						JGitText.get().failedAtomicFileCreation, lockPath,
-						nlink));
-				return false;
-			} else if (nlink < 2) {
-				CAN_HARD_LINK.put(store, Boolean.FALSE);
-			}
-			return true;
-		} catch (UnsupportedOperationException | IllegalArgumentException e) {
-			CAN_HARD_LINK.put(store, Boolean.FALSE);
-			return true;
-		} finally {
-			if (link != null) {
-				Files.delete(link);
-			}
-		}
-	}
-
 	/**
 	 * {@inheritDoc}
 	 * <p>