Use java.nio.file consistently in FS
Since 4.0 we require Java 7 so there is no longer a need to override the
following methods in FS_POSIX, FS_Win32, FS_Win32_Cygwin
- lastModified()
- setLastModified()
- length()
- isSymlink()
- exists()
- isDirectory()
- isFile()
- isHidden()
Hence implement these methods in FS and remove overrides in subclasses.
Change-Id: I5dbde6ec806c66c86ac542978918361461021294
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
diff --git a/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties b/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties
index e2bed18..34bbb41 100644
--- a/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties
+++ b/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties
@@ -286,7 +286,6 @@
gcFailed=Garbage collection failed.
gitmodulesNotFound=.gitmodules not found in tree.
headRequiredToStash=HEAD required to stash local changes
-hiddenFilesStartWithDot=Hiding only allowed for names that start with a period
hoursAgo={0} hours ago
hugeIndexesAreNotSupportedByJgitYet=Huge indexes are not supported by jgit, yet
hunkBelongsToAnotherFile=Hunk belongs to another file
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java
index d6cf6e6..9067e82 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java
@@ -345,7 +345,6 @@ public static JGitText get() {
/***/ public String gcFailed;
/***/ public String gitmodulesNotFound;
/***/ public String headRequiredToStash;
- /***/ public String hiddenFilesStartWithDot;
/***/ public String hoursAgo;
/***/ public String hugeIndexesAreNotSupportedByJgitYet;
/***/ public String hunkBelongsToAnotherFile;
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 4d34394..e5219b2 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/util/FS.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/util/FS.java
@@ -247,7 +247,7 @@ public boolean supportsSymlinks() {
* @since 3.0
*/
public long lastModified(File f) throws IOException {
- return f.lastModified();
+ return FileUtils.lastModified(f);
}
/**
@@ -260,7 +260,7 @@ public long lastModified(File f) throws IOException {
* @since 3.0
*/
public void setLastModified(File f, long time) throws IOException {
- f.setLastModified(time);
+ FileUtils.setLastModified(f, time);
}
/**
@@ -273,7 +273,7 @@ public void setLastModified(File f, long time) throws IOException {
* @since 3.0
*/
public long length(File path) throws IOException {
- return path.length();
+ return FileUtils.getLength(path);
}
/**
@@ -630,7 +630,7 @@ public String readSymLink(File path) throws IOException {
* @since 3.0
*/
public boolean isSymLink(File path) throws IOException {
- return false;
+ return FileUtils.isSymlink(path);
}
/**
@@ -642,7 +642,7 @@ public boolean isSymLink(File path) throws IOException {
* @since 3.0
*/
public boolean exists(File path) {
- return path.exists();
+ return FileUtils.exists(path);
}
/**
@@ -654,7 +654,7 @@ public boolean exists(File path) {
* @since 3.0
*/
public boolean isDirectory(File path) {
- return path.isDirectory();
+ return FileUtils.isDirectory(path);
}
/**
@@ -666,7 +666,7 @@ public boolean isDirectory(File path) {
* @since 3.0
*/
public boolean isFile(File path) {
- return path.isFile();
+ return FileUtils.isFile(path);
}
/**
@@ -677,7 +677,7 @@ public boolean isFile(File path) {
* @since 3.0
*/
public boolean isHidden(File path) throws IOException {
- return path.isHidden();
+ return FileUtils.isHidden(path);
}
/**
@@ -689,9 +689,7 @@ public boolean isHidden(File path) throws IOException {
* @since 3.0
*/
public void setHidden(File path, boolean hidden) throws IOException {
- if (!path.getName().startsWith(".")) //$NON-NLS-1$
- throw new IllegalArgumentException(
- JGitText.get().hiddenFilesStartWithDot);
+ FileUtils.setHidden(path, hidden);
}
/**
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 c2005b1..779b10e 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
@@ -246,46 +246,6 @@ public boolean supportsSymlinks() {
}
@Override
- public boolean isSymLink(File path) throws IOException {
- return FileUtils.isSymlink(path);
- }
-
- @Override
- public long lastModified(File path) throws IOException {
- return FileUtils.lastModified(path);
- }
-
- @Override
- public void setLastModified(File path, long time) throws IOException {
- FileUtils.setLastModified(path, time);
- }
-
- @Override
- public long length(File f) throws IOException {
- return FileUtils.getLength(f);
- }
-
- @Override
- public boolean exists(File path) {
- return FileUtils.exists(path);
- }
-
- @Override
- public boolean isDirectory(File path) {
- return FileUtils.isDirectory(path);
- }
-
- @Override
- public boolean isFile(File path) {
- return FileUtils.isFile(path);
- }
-
- @Override
- public boolean isHidden(File path) throws IOException {
- return FileUtils.isHidden(path);
- }
-
- @Override
public void setHidden(File path, boolean hidden) throws IOException {
// no action on POSIX
}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_Win32.java b/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_Win32.java
index 21aafc3..f0a2e72 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_Win32.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_Win32.java
@@ -183,51 +183,6 @@ private void detectSymlinkSupport() {
}
}
- @Override
- public boolean isSymLink(File path) throws IOException {
- return FileUtils.isSymlink(path);
- }
-
- @Override
- public long lastModified(File path) throws IOException {
- return FileUtils.lastModified(path);
- }
-
- @Override
- public void setLastModified(File path, long time) throws IOException {
- FileUtils.setLastModified(path, time);
- }
-
- @Override
- public long length(File f) throws IOException {
- return FileUtils.getLength(f);
- }
-
- @Override
- public boolean exists(File path) {
- return FileUtils.exists(path);
- }
-
- @Override
- public boolean isDirectory(File path) {
- return FileUtils.isDirectory(path);
- }
-
- @Override
- public boolean isFile(File path) {
- return FileUtils.isFile(path);
- }
-
- @Override
- public boolean isHidden(File path) throws IOException {
- return FileUtils.isHidden(path);
- }
-
- @Override
- public void setHidden(File path, boolean hidden) throws IOException {
- FileUtils.setHidden(path, hidden);
- }
-
/**
* @since 3.3
*/
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_Win32_Cygwin.java b/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_Win32_Cygwin.java
index 2952b65..2450be4 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_Win32_Cygwin.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/util/FS_Win32_Cygwin.java
@@ -44,7 +44,6 @@
package org.eclipse.jgit.util;
import java.io.File;
-import java.io.IOException;
import java.io.PrintStream;
import java.nio.file.Files;
import java.nio.file.Path;
@@ -168,59 +167,6 @@ public boolean supportsSymlinks() {
return true;
}
- @Override
- public boolean isSymLink(File path) throws IOException {
- return FileUtils.isSymlink(path);
- }
-
- @Override
- public long lastModified(File path) throws IOException {
- return FileUtils.lastModified(path);
- }
-
- @Override
- public void setLastModified(File path, long time) throws IOException {
- FileUtils.setLastModified(path, time);
- }
-
- @Override
- public long length(File f) throws IOException {
- return FileUtils.getLength(f);
- }
-
- @Override
- public boolean exists(File path) {
- return FileUtils.exists(path);
- }
-
- @Override
- public boolean isDirectory(File path) {
- return FileUtils.isDirectory(path);
- }
-
- @Override
- public boolean isFile(File path) {
- return FileUtils.isFile(path);
- }
-
- @Override
- public boolean isHidden(File path) throws IOException {
- return FileUtils.isHidden(path);
- }
-
- @Override
- public void setHidden(File path, boolean hidden) throws IOException {
- FileUtils.setHidden(path, hidden);
- }
-
- /**
- * @since 3.3
- */
- @Override
- public Attributes getAttributes(File path) {
- return FileUtils.getFileAttributesBasic(this, path);
- }
-
/**
* @since 3.7
*/