diff options
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java | 6 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/server/RPCServer.java | 4 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/unix/NativePosixFiles.java (renamed from src/main/java/com/google/devtools/build/lib/unix/FilesystemUtils.java) | 18 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/vfs/UnixFileSystem.java | 48 | ||||
-rw-r--r-- | src/main/native/unix_jni.cc | 64 | ||||
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/unix/NativePosixFilesTest.java (renamed from src/test/java/com/google/devtools/build/lib/unix/FilesystemUtilsTest.java) | 12 | ||||
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/vfs/FileSystemTest.java | 7 | ||||
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/vfs/UnixFileSystemTest.java | 5 |
8 files changed, 83 insertions, 81 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java index 132b457365..b15744955d 100644 --- a/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java +++ b/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java @@ -38,7 +38,7 @@ import com.google.devtools.build.lib.rules.cpp.CppCompileAction; import com.google.devtools.build.lib.rules.fileset.FilesetActionContext; import com.google.devtools.build.lib.rules.test.TestRunnerAction; import com.google.devtools.build.lib.standalone.StandaloneSpawnStrategy; -import com.google.devtools.build.lib.unix.FilesystemUtils; +import com.google.devtools.build.lib.unix.NativePosixFiles; import com.google.devtools.build.lib.util.Preconditions; import com.google.devtools.build.lib.util.io.FileOutErr; import com.google.devtools.build.lib.vfs.FileSystem; @@ -300,13 +300,13 @@ public class LinuxSandboxedStrategy implements SpawnActionContext { mounts.put(fs.getPath("/bin"), fs.getPath("/bin")); mounts.put(fs.getPath("/sbin"), fs.getPath("/sbin")); mounts.put(fs.getPath("/etc"), fs.getPath("/etc")); - for (String entry : FilesystemUtils.readdir("/")) { + for (String entry : NativePosixFiles.readdir("/")) { if (entry.startsWith("lib")) { Path libDir = fs.getRootDirectory().getRelative(entry); mounts.put(libDir, libDir); } } - for (String entry : FilesystemUtils.readdir("/usr")) { + for (String entry : NativePosixFiles.readdir("/usr")) { if (!entry.equals("local")) { Path usrDir = fs.getPath("/usr").getRelative(entry); mounts.put(usrDir, usrDir); diff --git a/src/main/java/com/google/devtools/build/lib/server/RPCServer.java b/src/main/java/com/google/devtools/build/lib/server/RPCServer.java index c929118e7a..36119c60f5 100644 --- a/src/main/java/com/google/devtools/build/lib/server/RPCServer.java +++ b/src/main/java/com/google/devtools/build/lib/server/RPCServer.java @@ -21,10 +21,10 @@ import com.google.common.collect.ImmutableList; import com.google.common.io.ByteStreams; import com.google.devtools.build.lib.server.RPCService.UnknownCommandException; import com.google.devtools.build.lib.server.signal.InterruptSignalHandler; -import com.google.devtools.build.lib.unix.FilesystemUtils; import com.google.devtools.build.lib.unix.LocalClientSocket; import com.google.devtools.build.lib.unix.LocalServerSocket; import com.google.devtools.build.lib.unix.LocalSocketAddress; +import com.google.devtools.build.lib.unix.NativePosixFiles; import com.google.devtools.build.lib.util.Clock; import com.google.devtools.build.lib.util.OsUtils; import com.google.devtools.build.lib.util.ThreadUtils; @@ -381,7 +381,7 @@ public final class RPCServer { LocalServerSocket serverSocket = new LocalServerSocket(); serverSocket.bind(new LocalSocketAddress(socketFile.getPathFile())); - FilesystemUtils.chmod(socketFile.getPathFile(), 0600); // Lock it down. + NativePosixFiles.chmod(socketFile.getPathFile(), 0600); // Lock it down. serverSocket.listen(/*backlog=*/50); return serverSocket; } diff --git a/src/main/java/com/google/devtools/build/lib/unix/FilesystemUtils.java b/src/main/java/com/google/devtools/build/lib/unix/NativePosixFiles.java index 55653e5227..215be3b044 100644 --- a/src/main/java/com/google/devtools/build/lib/unix/FilesystemUtils.java +++ b/src/main/java/com/google/devtools/build/lib/unix/NativePosixFiles.java @@ -30,9 +30,9 @@ import java.util.logging.Logger; * SDK. Exception messages are selected to be consistent with those generated * by the java.io package where appropriate--see package javadoc for details. */ -public final class FilesystemUtils { +public final class NativePosixFiles { - private FilesystemUtils() {} + private NativePosixFiles() {} /** * Returns true iff the file identified by 'path' is a symbolic link. Has @@ -107,10 +107,10 @@ public final class FilesystemUtils { * @throws IOException if the chmod() syscall failed. */ public static void chmod(File path, int mode) throws IOException { - int mask = FileStatus.S_ISUID | - FileStatus.S_ISGID | - FileStatus.S_ISVTX | - FileStatus.S_IRWXA; + int mask = FileStatus.S_ISUID + | FileStatus.S_ISGID + | FileStatus.S_ISVTX + | FileStatus.S_IRWXA; chmod(path.toString(), mode & mask); } @@ -128,9 +128,9 @@ public final class FilesystemUtils { // wait (if necessary) until the logging system is initialized synchronized (LogManager.getLogManager()) {} Logger.getLogger("com.google.devtools.build.lib.unix.FilesystemUtils").log(Level.FINE, - "WARNING: Default character set is not latin1; java.io.File and " + - "com.google.devtools.build.lib.unix.FilesystemUtils will represent some filenames " + - "differently."); + "WARNING: Default character set is not latin1; java.io.File and " + + "com.google.devtools.build.lib.unix.FilesystemUtils will represent some filenames " + + "differently."); } }.start(); } diff --git a/src/main/java/com/google/devtools/build/lib/vfs/UnixFileSystem.java b/src/main/java/com/google/devtools/build/lib/vfs/UnixFileSystem.java index bc27e2b72e..c8854dbd81 100644 --- a/src/main/java/com/google/devtools/build/lib/vfs/UnixFileSystem.java +++ b/src/main/java/com/google/devtools/build/lib/vfs/UnixFileSystem.java @@ -21,9 +21,9 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe; import com.google.devtools.build.lib.profiler.Profiler; import com.google.devtools.build.lib.profiler.ProfilerTask; import com.google.devtools.build.lib.unix.ErrnoFileStatus; -import com.google.devtools.build.lib.unix.FilesystemUtils; -import com.google.devtools.build.lib.unix.FilesystemUtils.Dirents; -import com.google.devtools.build.lib.unix.FilesystemUtils.ReadTypes; +import com.google.devtools.build.lib.unix.NativePosixFiles; +import com.google.devtools.build.lib.unix.NativePosixFiles.Dirents; +import com.google.devtools.build.lib.unix.NativePosixFiles.ReadTypes; import com.google.devtools.build.lib.util.Preconditions; import java.io.IOException; @@ -160,7 +160,7 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { String[] entries; long startTime = Profiler.nanoTimeMaybe(); try { - entries = FilesystemUtils.readdir(name); + entries = NativePosixFiles.readdir(name); } finally { profiler.logSimpleTask(startTime, ProfilerTask.VFS_DIR, name); } @@ -181,7 +181,7 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { } /** - * Converts from {@link com.google.devtools.build.lib.unix.FilesystemUtils.Dirents.Type} to + * Converts from {@link NativePosixFiles.Dirents.Type} to * {@link com.google.devtools.build.lib.vfs.Dirent.Type}. */ private static Dirent.Type convertToDirentType(Dirents.Type type) { @@ -204,7 +204,7 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { String name = path.getPathString(); long startTime = Profiler.nanoTimeMaybe(); try { - Dirents unixDirents = FilesystemUtils.readdir(name, + Dirents unixDirents = NativePosixFiles.readdir(name, followSymlinks ? ReadTypes.FOLLOW : ReadTypes.NOFOLLOW); Preconditions.checkState(unixDirents.hasTypes()); List<Dirent> dirents = Lists.newArrayListWithCapacity(unixDirents.size()); @@ -229,8 +229,8 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { long startTime = Profiler.nanoTimeMaybe(); try { return new UnixFileStatus(followSymlinks - ? FilesystemUtils.stat(name) - : FilesystemUtils.lstat(name)); + ? NativePosixFiles.stat(name) + : NativePosixFiles.lstat(name)); } finally { profiler.logSimpleTask(startTime, ProfilerTask.VFS_STAT, name); } @@ -245,8 +245,8 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { long startTime = Profiler.nanoTimeMaybe(); try { ErrnoFileStatus stat = followSymlinks - ? FilesystemUtils.errnoStat(name) - : FilesystemUtils.errnoLstat(name); + ? NativePosixFiles.errnoStat(name) + : NativePosixFiles.errnoLstat(name); return stat.hasError() ? null : new UnixFileStatus(stat); } finally { profiler.logSimpleTask(startTime, ProfilerTask.VFS_STAT, name); @@ -268,8 +268,8 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { long startTime = Profiler.nanoTimeMaybe(); try { ErrnoFileStatus stat = followSymlinks - ? FilesystemUtils.errnoStat(name) - : FilesystemUtils.errnoLstat(name); + ? NativePosixFiles.errnoStat(name) + : NativePosixFiles.errnoLstat(name); if (!stat.hasError()) { return new UnixFileStatus(stat); } @@ -315,7 +315,7 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { synchronized (path) { int oldMode = statInternal(path, true).getPermissions(); int newMode = add ? (oldMode | permissionBits) : (oldMode & ~permissionBits); - FilesystemUtils.chmod(path.toString(), newMode); + NativePosixFiles.chmod(path.toString(), newMode); } } @@ -337,7 +337,7 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { @Override protected void chmod(Path path, int mode) throws IOException { synchronized (path) { - FilesystemUtils.chmod(path.toString(), mode); + NativePosixFiles.chmod(path.toString(), mode); } } @@ -356,7 +356,7 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { synchronized (path) { // Note: UNIX mkdir(2), FilesystemUtils.mkdir() and createDirectory all // have different ways of representing failure! - if (FilesystemUtils.mkdir(path.toString(), 0777)) { + if (NativePosixFiles.mkdir(path.toString(), 0777)) { return true; // successfully created } @@ -375,13 +375,13 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { SymlinkImplementation strategy = computeSymlinkImplementation(linkPath, targetFragment); switch (strategy) { case HARDLINK: - FilesystemUtils.link(targetFragment.toString(), linkPath.toString()); + NativePosixFiles.link(targetFragment.toString(), linkPath.toString()); break; case JUNCTION: // Junctions are emulated on Linux with symlinks, fall through case SYMLINK: synchronized (linkPath) { - FilesystemUtils.symlink(targetFragment.toString(), linkPath.toString()); + NativePosixFiles.symlink(targetFragment.toString(), linkPath.toString()); } break; @@ -506,7 +506,7 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { String name = path.toString(); long startTime = Profiler.nanoTimeMaybe(); try { - return new PathFragment(FilesystemUtils.readlink(name)); + return new PathFragment(NativePosixFiles.readlink(name)); } catch (IOException e) { // EINVAL => not a symbolic link. Anything else is a real error. throw e.getMessage().endsWith("(Invalid argument)") ? new NotASymlinkException(path) : e; @@ -518,7 +518,7 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { @Override protected void renameTo(Path sourcePath, Path targetPath) throws IOException { synchronized (sourcePath) { - FilesystemUtils.rename(sourcePath.toString(), targetPath.toString()); + NativePosixFiles.rename(sourcePath.toString(), targetPath.toString()); } } @@ -533,7 +533,7 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { long startTime = Profiler.nanoTimeMaybe(); synchronized (path) { try { - return FilesystemUtils.remove(name); + return NativePosixFiles.remove(name); } finally { profiler.logSimpleTask(startTime, ProfilerTask.VFS_DELETE, name); } @@ -549,11 +549,11 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { protected void setLastModifiedTime(Path path, long newTime) throws IOException { synchronized (path) { if (newTime == -1L) { // "now" - FilesystemUtils.utime(path.toString(), true, 0); + NativePosixFiles.utime(path.toString(), true, 0); } else { // newTime > MAX_INT => -ve unixTime int unixTime = (int) (newTime / 1000); - FilesystemUtils.utime(path.toString(), false, unixTime); + NativePosixFiles.utime(path.toString(), false, unixTime); } } } @@ -563,7 +563,7 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { String pathName = path.toString(); long startTime = Profiler.nanoTimeMaybe(); try { - return FilesystemUtils.getxattr(pathName, name); + return NativePosixFiles.getxattr(pathName, name); } catch (UnsupportedOperationException e) { // getxattr() syscall is not supported by the underlying filesystem (it returned ENOTSUP). // Per method contract, treat this as ENODATA. @@ -578,7 +578,7 @@ public class UnixFileSystem extends AbstractFileSystemWithCustomStat { String name = path.toString(); long startTime = Profiler.nanoTimeMaybe(); try { - return FilesystemUtils.md5sum(name).asBytes(); + return NativePosixFiles.md5sum(name).asBytes(); } finally { profiler.logSimpleTask(startTime, ProfilerTask.VFS_MD5, name); } diff --git a/src/main/native/unix_jni.cc b/src/main/native/unix_jni.cc index b59afa4833..fb70370a76 100644 --- a/src/main/native/unix_jni.cc +++ b/src/main/native/unix_jni.cc @@ -236,7 +236,7 @@ void PostFileException(JNIEnv *env, int error_number, const char *filename) { // into a separate source file, fsutils.cc. extern "C" JNIEXPORT jstring JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_readlink(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_readlink(JNIEnv *env, jclass clazz, jstring path) { const char *path_chars = GetStringLatin1Chars(env, path); @@ -252,7 +252,7 @@ Java_com_google_devtools_build_lib_unix_FilesystemUtils_readlink(JNIEnv *env, } extern "C" JNIEXPORT void JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_chmod(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_chmod(JNIEnv *env, jclass clazz, jstring path, jint mode) { @@ -277,7 +277,7 @@ static void link_common(JNIEnv *env, } extern "C" JNIEXPORT void JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_link(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_link(JNIEnv *env, jclass clazz, jstring oldpath, jstring newpath) { @@ -285,7 +285,7 @@ Java_com_google_devtools_build_lib_unix_FilesystemUtils_link(JNIEnv *env, } extern "C" JNIEXPORT void JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_symlink(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_symlink(JNIEnv *env, jclass clazz, jstring oldpath, jstring newpath) { @@ -405,63 +405,63 @@ static jobject StatCommon(JNIEnv *env, } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: stat * Signature: (Ljava/lang/String;)Lcom/google/devtools/build/lib/unix/FileStatus; * Throws: java.io.IOException */ extern "C" JNIEXPORT jobject JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_stat(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_stat(JNIEnv *env, jclass clazz, jstring path) { return ::StatCommon(env, path, portable_stat, true); } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: lstat * Signature: (Ljava/lang/String;)Lcom/google/devtools/build/lib/unix/FileStatus; * Throws: java.io.IOException */ extern "C" JNIEXPORT jobject JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_lstat(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_lstat(JNIEnv *env, jclass clazz, jstring path) { return ::StatCommon(env, path, portable_lstat, true); } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: statNullable * Signature: (Ljava/lang/String;)Lcom/google/devtools/build/lib/unix/FileStatus; */ extern "C" JNIEXPORT jobject JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_errnoStat(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_errnoStat(JNIEnv *env, jclass clazz, jstring path) { return ::StatCommon(env, path, portable_stat, false); } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: lstatNullable * Signature: (Ljava/lang/String;)Lcom/google/devtools/build/lib/unix/FileStatus; */ extern "C" JNIEXPORT jobject JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_errnoLstat(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_errnoLstat(JNIEnv *env, jclass clazz, jstring path) { return ::StatCommon(env, path, portable_lstat, false); } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: utime * Signature: (Ljava/lang/String;ZII)V * Throws: java.io.IOException */ extern "C" JNIEXPORT void JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_utime(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_utime(JNIEnv *env, jclass clazz, jstring path, jboolean now, @@ -486,25 +486,25 @@ Java_com_google_devtools_build_lib_unix_FilesystemUtils_utime(JNIEnv *env, } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: umask * Signature: (I)I */ extern "C" JNIEXPORT jint JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_umask(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_umask(JNIEnv *env, jclass clazz, jint new_umask) { return ::umask(new_umask); } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: mkdir * Signature: (Ljava/lang/String;I)Z * Throws: java.io.IOException */ extern "C" JNIEXPORT jboolean JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_mkdir(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_mkdir(JNIEnv *env, jclass clazz, jstring path, jint mode) { @@ -532,7 +532,7 @@ static jobject NewDirents(JNIEnv *env, // See http://java.sun.com/docs/books/jni/html/fldmeth.html#26855 static jclass dirents_class = NULL; if (dirents_class == NULL) { // note: harmless race condition - jclass local = env->FindClass("com/google/devtools/build/lib/unix/FilesystemUtils$Dirents"); + jclass local = env->FindClass("com/google/devtools/build/lib/unix/NativePosixFiles$Dirents"); CHECK(local != NULL); dirents_class = static_cast<jclass>(env->NewGlobalRef(local)); } @@ -573,13 +573,13 @@ static char GetDirentType(struct dirent *entry, } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: readdir * Signature: (Ljava/lang/String;Z)Lcom/google/devtools/build/lib/unix/Dirents; * Throws: java.io.IOException */ extern "C" JNIEXPORT jobject JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_readdir(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_readdir(JNIEnv *env, jclass clazz, jstring path, jchar read_types) { @@ -660,13 +660,13 @@ Java_com_google_devtools_build_lib_unix_FilesystemUtils_readdir(JNIEnv *env, } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: rename * Signature: (Ljava/lang/String;Ljava/lang/String;)V * Throws: java.io.IOException */ extern "C" JNIEXPORT void JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_rename(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_rename(JNIEnv *env, jclass clazz, jstring oldpath, jstring newpath) { @@ -707,39 +707,39 @@ static bool unlink_err(int err) { return err == ENOENT; } static bool remove_err(int err) { return err == ENOENT || err == ENOTDIR; } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: unlink * Signature: (Ljava/lang/String;)V * Throws: java.io.IOException */ extern "C" JNIEXPORT bool JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_unlink(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_unlink(JNIEnv *env, jclass clazz, jstring path) { return ::delete_common(env, path, ::unlink, ::unlink_err); } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: remove * Signature: (Ljava/lang/String;)V * Throws: java.io.IOException */ extern "C" JNIEXPORT bool JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_remove(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_remove(JNIEnv *env, jclass clazz, jstring path) { return ::delete_common(env, path, ::remove, ::remove_err); } /* - * Class: com.google.devtools.build.lib.unix.FilesystemUtils + * Class: com.google.devtools.build.lib.unix.NativePosixFiles * Method: mkfifo * Signature: (Ljava/lang/String;I)V * Throws: java.io.IOException */ extern "C" JNIEXPORT void JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_mkfifo(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_mkfifo(JNIEnv *env, jclass clazz, jstring path, jint mode) { @@ -781,7 +781,7 @@ static jbyteArray getxattr_common(JNIEnv *env, } extern "C" JNIEXPORT jbyteArray JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_getxattr(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_getxattr(JNIEnv *env, jclass clazz, jstring path, jstring name) { @@ -789,7 +789,7 @@ Java_com_google_devtools_build_lib_unix_FilesystemUtils_getxattr(JNIEnv *env, } extern "C" JNIEXPORT jbyteArray JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_lgetxattr(JNIEnv *env, +Java_com_google_devtools_build_lib_unix_NativePosixFiles_lgetxattr(JNIEnv *env, jclass clazz, jstring path, jstring name) { @@ -835,7 +835,7 @@ static int md5sumAsBytes(const char *file, extern "C" JNIEXPORT jbyteArray JNICALL -Java_com_google_devtools_build_lib_unix_FilesystemUtils_md5sumAsBytes( +Java_com_google_devtools_build_lib_unix_NativePosixFiles_md5sumAsBytes( JNIEnv *env, jclass clazz, jstring path) { const char *path_chars = GetStringLatin1Chars(env, path); jbyte value[Md5Digest::kDigestLength]; diff --git a/src/test/java/com/google/devtools/build/lib/unix/FilesystemUtilsTest.java b/src/test/java/com/google/devtools/build/lib/unix/NativePosixFilesTest.java index dafcb1c030..46522a7459 100644 --- a/src/test/java/com/google/devtools/build/lib/unix/FilesystemUtilsTest.java +++ b/src/test/java/com/google/devtools/build/lib/unix/NativePosixFilesTest.java @@ -36,7 +36,7 @@ import java.io.FileNotFoundException; * This class tests the FilesystemUtils class. */ @RunWith(JUnit4.class) -public class FilesystemUtilsTest { +public class NativePosixFilesTest { private FileSystem testFS; private Path workingDir; private Path testFile; @@ -71,7 +71,7 @@ public class FilesystemUtilsTest { for (String testInput : testVectors.keySet()) { FileSystemUtils.writeContentAsLatin1(testFile, testInput); - HashCode result = FilesystemUtils.md5sum(testFile.getPathString()); + HashCode result = NativePosixFiles.md5sum(testFile.getPathString()); assertThat(testVectors).containsEntry(testInput, result.toString()); } } @@ -79,10 +79,10 @@ public class FilesystemUtilsTest { @Test public void throwsFileAccessException() throws Exception { FileSystemUtils.createEmptyFile(testFile); - FilesystemUtils.chmod(testFile.getPathString(), 0200); + NativePosixFiles.chmod(testFile.getPathString(), 0200); try { - FilesystemUtils.md5sum(testFile.getPathString()); + NativePosixFiles.md5sum(testFile.getPathString()); fail("Expected FileAccessException, but wasn't thrown."); } catch (FileAccessException e) { assertThat(e).hasMessage(testFile + " (Permission denied)"); @@ -92,7 +92,7 @@ public class FilesystemUtilsTest { @Test public void throwsFileNotFoundException() throws Exception { try { - FilesystemUtils.md5sum(testFile.getPathString()); + NativePosixFiles.md5sum(testFile.getPathString()); fail("Expected FileNotFoundException, but wasn't thrown."); } catch (FileNotFoundException e) { assertThat(e).hasMessage(testFile + " (No such file or directory)"); @@ -103,7 +103,7 @@ public class FilesystemUtilsTest { public void throwsFilePermissionException() throws Exception { File foo = new File("/bin"); try { - FilesystemUtils.setWritable(foo); + NativePosixFiles.setWritable(foo); fail("Expected FilePermissionException, but wasn't thrown."); } catch (FilePermissionException e) { assertThat(e).hasMessage(foo + " (Operation not permitted)"); diff --git a/src/test/java/com/google/devtools/build/lib/vfs/FileSystemTest.java b/src/test/java/com/google/devtools/build/lib/vfs/FileSystemTest.java index 920e33043f..aba86119ab 100644 --- a/src/test/java/com/google/devtools/build/lib/vfs/FileSystemTest.java +++ b/src/test/java/com/google/devtools/build/lib/vfs/FileSystemTest.java @@ -23,6 +23,7 @@ import static org.junit.Assert.fail; import com.google.common.io.BaseEncoding; import com.google.devtools.build.lib.testutil.TestUtils; +import com.google.devtools.build.lib.unix.NativePosixFiles; import com.google.devtools.build.lib.util.Fingerprint; import com.google.devtools.build.lib.util.Preconditions; @@ -102,15 +103,15 @@ public abstract class FileSystemTest { protected abstract FileSystem getFreshFileSystem() throws IOException; protected boolean isSymbolicLink(File file) { - return com.google.devtools.build.lib.unix.FilesystemUtils.isSymbolicLink(file); + return NativePosixFiles.isSymbolicLink(file); } protected void setWritable(File file) throws IOException { - com.google.devtools.build.lib.unix.FilesystemUtils.setWritable(file); + NativePosixFiles.setWritable(file); } protected void setExecutable(File file) throws IOException { - com.google.devtools.build.lib.unix.FilesystemUtils.setExecutable(file); + NativePosixFiles.setExecutable(file); } private static final Pattern STAT_SUBDIR_ERROR = Pattern.compile("(.*) \\(Not a directory\\)"); diff --git a/src/test/java/com/google/devtools/build/lib/vfs/UnixFileSystemTest.java b/src/test/java/com/google/devtools/build/lib/vfs/UnixFileSystemTest.java index 40ace2b6f6..46b200baff 100644 --- a/src/test/java/com/google/devtools/build/lib/vfs/UnixFileSystemTest.java +++ b/src/test/java/com/google/devtools/build/lib/vfs/UnixFileSystemTest.java @@ -18,7 +18,8 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -import com.google.devtools.build.lib.unix.FilesystemUtils; +import com.google.devtools.build.lib.unix.NativePosixFiles; + import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @@ -68,7 +69,7 @@ public class UnixFileSystemTest extends SymlinkAwareFileSystemTest { Path regular = absolutize("regular"); Path fifo = absolutize("fifo"); FileSystemUtils.createEmptyFile(regular); - FilesystemUtils.mkfifo(fifo.toString(), 0777); + NativePosixFiles.mkfifo(fifo.toString(), 0777); assertTrue(regular.isFile()); assertFalse(regular.isSpecialFile()); assertTrue(regular.stat().isFile()); |