You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by to...@apache.org on 2010/05/31 05:14:19 UTC
svn commit: r949658 - in /hadoop/common/trunk: ./
src/java/org/apache/hadoop/fs/ src/java/org/apache/hadoop/fs/ftp/
src/java/org/apache/hadoop/fs/permission/
src/java/org/apache/hadoop/fs/s3native/ src/java/org/apache/hadoop/util/
src/test/core/org/apa...
Author: tomwhite
Date: Mon May 31 03:14:18 2010
New Revision: 949658
URL: http://svn.apache.org/viewvc?rev=949658&view=rev
Log:
HADOOP-6585. Add FileStatus#isDirectory and isFile. Contributed by Eli Collins.
Modified:
hadoop/common/trunk/CHANGES.txt
hadoop/common/trunk/src/java/org/apache/hadoop/fs/AbstractFileSystem.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/ChecksumFileSystem.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/ChecksumFs.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/DelegateToFileSystem.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileContext.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileStatus.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileSystem.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileUtil.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/FsShell.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/RawLocalFileSystem.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/Trash.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/ftp/FTPFileSystem.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/permission/ChmodParser.java
hadoop/common/trunk/src/java/org/apache/hadoop/fs/s3native/NativeS3FileSystem.java
hadoop/common/trunk/src/java/org/apache/hadoop/util/DiskChecker.java
hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextSymlinkBaseTest.java
hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextTestHelper.java
hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestLocalFSFileContextSymlink.java
hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestTrash.java
hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/loadGenerator/LoadGenerator.java
hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/s3native/NativeS3FileSystemContractBaseTest.java
hadoop/common/trunk/src/test/core/org/apache/hadoop/util/TestDiskChecker.java
Modified: hadoop/common/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/CHANGES.txt?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/CHANGES.txt (original)
+++ hadoop/common/trunk/CHANGES.txt Mon May 31 03:14:18 2010
@@ -916,6 +916,9 @@ Release 0.21.0 - Unreleased
HADOOP-6563. Add more symlink tests to cover intermediate symlinks
in paths. (Eli Collins via suresh)
+ HADOOP-6585. Add FileStatus#isDirectory and isFile. (Eli Collins via
+ tomwhite)
+
OPTIMIZATIONS
HADOOP-5595. NameNode does not need to run a replicator to choose a
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/AbstractFileSystem.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/AbstractFileSystem.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/AbstractFileSystem.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/AbstractFileSystem.java Mon May 31 03:14:18 2010
@@ -592,9 +592,6 @@ public abstract class AbstractFileSystem
ParentNotDirectoryException, UnresolvedLinkException, IOException {
// Default implementation deals with overwrite in a non-atomic way
final FileStatus srcStatus = getFileLinkStatus(src);
- if (srcStatus == null) {
- throw new FileNotFoundException("rename source " + src + " not found.");
- }
FileStatus dstStatus;
try {
@@ -611,32 +608,29 @@ public abstract class AbstractFileSystem
throw new FileAlreadyExistsException(
"Cannot rename symlink "+src+" to its target "+dst);
}
- if (srcStatus.isDir() != dstStatus.isDir()) {
- throw new IOException("Source " + src + " Destination " + dst
- + " both should be either file or directory");
+ // It's OK to rename a file to a symlink and vice versa
+ if (srcStatus.isDirectory() != dstStatus.isDirectory()) {
+ throw new IOException("Source " + src + " and destination " + dst
+ + " must both be directories");
}
if (!overwrite) {
- throw new FileAlreadyExistsException("rename destination " + dst
+ throw new FileAlreadyExistsException("Rename destination " + dst
+ " already exists.");
}
// Delete the destination that is a file or an empty directory
- if (dstStatus.isDir()) {
+ if (dstStatus.isDirectory()) {
Iterator<FileStatus> list = listStatusIterator(dst);
if (list != null && list.hasNext()) {
throw new IOException(
- "rename cannot overwrite non empty destination directory " + dst);
+ "Rename cannot overwrite non empty destination directory " + dst);
}
}
delete(dst, false);
} else {
final Path parent = dst.getParent();
- final FileStatus parentStatus = getFileLinkStatus(parent);
- if (parentStatus == null) {
- throw new FileNotFoundException("rename destination parent " + parent
- + " not found.");
- }
- if (!parentStatus.isDir() && !parentStatus.isSymlink()) {
- throw new ParentNotDirectoryException("rename destination parent "
+ final FileStatus parentStatus = getFileStatus(parent);
+ if (parentStatus.isFile()) {
+ throw new ParentNotDirectoryException("Rename destination parent "
+ parent + " is a file.");
}
}
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/ChecksumFileSystem.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/ChecksumFileSystem.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/ChecksumFileSystem.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/ChecksumFileSystem.java Mon May 31 03:14:18 2010
@@ -456,7 +456,7 @@ public abstract class ChecksumFileSystem
} catch(FileNotFoundException e) {
return false;
}
- if(fstatus.isDir()) {
+ if (fstatus.isDirectory()) {
//this works since the crcs are in the same
//directories and the files. so we just delete
//everything in the underlying filesystem
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/ChecksumFs.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/ChecksumFs.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/ChecksumFs.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/ChecksumFs.java Mon May 31 03:14:18 2010
@@ -388,7 +388,7 @@ public abstract class ChecksumFs extends
private boolean isDirectory(Path f)
throws IOException, UnresolvedLinkException {
try {
- return getMyFs().getFileStatus(f).isDir();
+ return getMyFs().getFileStatus(f).isDirectory();
} catch (FileNotFoundException e) {
return false; // f does not exist
}
@@ -450,7 +450,7 @@ public abstract class ChecksumFs extends
} catch(FileNotFoundException e) {
return false;
}
- if (fstatus.isDir()) {
+ if (fstatus.isDirectory()) {
//this works since the crcs are in the same
//directories and the files. so we just delete
//everything in the underlying filesystem
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/DelegateToFileSystem.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/DelegateToFileSystem.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/DelegateToFileSystem.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/DelegateToFileSystem.java Mon May 31 03:14:18 2010
@@ -73,7 +73,7 @@ public abstract class DelegateToFileSyst
if (stat == null) {
throw new FileNotFoundException("Missing parent:" + f);
}
- if (!stat.isDir()) {
+ if (!stat.isDirectory()) {
throw new ParentNotDirectoryException("parent is not a dir:" + f);
}
// parent does exist - go ahead with create of file.
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileContext.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileContext.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileContext.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileContext.java Mon May 31 03:14:18 2010
@@ -450,7 +450,7 @@ public final class FileContext {
*/
final Path newWorkingDir = resolve(new Path(workingDir, newWDir));
FileStatus status = getFileStatus(newWorkingDir);
- if (!status.isDir()) {
+ if (status.isFile()) {
throw new FileNotFoundException("Cannot setWD to a file");
}
workingDir = newWorkingDir;
@@ -1420,16 +1420,14 @@ public final class FileContext {
throws AccessControlException, FileNotFoundException,
UnsupportedFileSystemException, IOException {
FileStatus status = FileContext.this.getFileStatus(f);
- if (!status.isDir()) {
- // f is a file
+ if (status.isFile()) {
return new ContentSummary(status.getLen(), 1, 0);
}
- // f is a directory
long[] summary = {0, 0, 1};
Iterator<FileStatus> statusIterator = FileContext.this.listStatus(f);
while(statusIterator.hasNext()) {
FileStatus s = statusIterator.next();
- ContentSummary c = s.isDir() ? getContentSummary(s.getPath()) :
+ ContentSummary c = s.isDirectory() ? getContentSummary(s.getPath()) :
new ContentSummary(s.getLen(), 1, 0);
summary[0] += c.getLength();
summary[1] += c.getFileCount();
@@ -1847,7 +1845,7 @@ public final class FileContext {
Path qDst = makeQualified(dst);
checkDest(qSrc.getName(), qDst, overwrite);
FileStatus fs = FileContext.this.getFileStatus(qSrc);
- if (fs.isDir()) {
+ if (fs.isDirectory()) {
checkDependencies(qSrc, qDst);
mkdir(qDst, FsPermission.getDefault(), true);
FileStatus[] contents = listStatus(qSrc);
@@ -2015,7 +2013,7 @@ public final class FileContext {
throws AccessControlException, IOException {
try {
FileStatus dstFs = getFileStatus(dst);
- if (dstFs.isDir()) {
+ if (dstFs.isDirectory()) {
if (null == srcName) {
throw new IOException("Target " + dst + " is a directory");
}
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileStatus.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileStatus.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileStatus.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileStatus.java Mon May 31 03:14:18 2010
@@ -92,12 +92,41 @@ public class FileStatus implements Writa
}
/**
+ * Is this a file?
+ * @return true if this is a file
+ */
+ public boolean isFile() {
+ return !isdir && !isSymlink();
+ }
+
+ /**
* Is this a directory?
* @return true if this is a directory
*/
+ public boolean isDirectory() {
+ return isdir;
+ }
+
+ /**
+ * Old interface, instead use the explicit {@link FileStatus#isFile()},
+ * {@link FileStatus#isDirectory()}, and {@link FileStatus#isSymlink()}
+ * @return true if this is a directory.
+ * @deprecated Use {@link FileStatus#isFile()},
+ * {@link FileStatus#isDirectory()}, and {@link FileStatus#isSymlink()}
+ * instead.
+ */
+ @Deprecated
public boolean isDir() {
return isdir;
}
+
+ /**
+ * Is this a symbolic link?
+ * @return true if this is a symbolic link
+ */
+ public boolean isSymlink() {
+ return symlink != null;
+ }
/**
* Get the block size of the file.
@@ -199,14 +228,6 @@ public class FileStatus implements Writa
}
/**
- * Is this a symbolic link?
- * @return true if this is a symbolic link
- */
- public boolean isSymlink() {
- return symlink != null;
- }
-
- /**
* @return The contents of the symbolic link.
*/
public Path getSymlink() throws IOException {
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileSystem.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileSystem.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileSystem.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileSystem.java Mon May 31 03:14:18 2010
@@ -747,8 +747,8 @@ public abstract class FileSystem extends
if (stat == null) {
throw new FileNotFoundException("Missing parent:" + f);
}
- if (!stat.isDir()) {
- throw new ParentNotDirectoryException("parent is not a dir:" + f);
+ if (!stat.isDirectory()) {
+ throw new ParentNotDirectoryException("parent is not a dir:" + f);
}
// parent does exist - go ahead with create of file.
}
@@ -793,8 +793,8 @@ public abstract class FileSystem extends
if (stat == null) {
throw new FileNotFoundException("Missing parent:" + f);
}
- if (!stat.isDir()) {
- throw new ParentNotDirectoryException("parent is not a dir");
+ if (!stat.isDirectory()) {
+ throw new ParentNotDirectoryException("parent is not a dir");
}
// parent does exist - go ahead with mkdir of leaf
}
@@ -938,7 +938,7 @@ public abstract class FileSystem extends
dstStatus = null;
}
if (dstStatus != null) {
- if (srcStatus.isDir() != dstStatus.isDir()) {
+ if (srcStatus.isDirectory() != dstStatus.isDirectory()) {
throw new IOException("Source " + src + " Destination " + dst
+ " both should be either file or directory");
}
@@ -947,7 +947,7 @@ public abstract class FileSystem extends
+ " already exists.");
}
// Delete the destination that is a file or an empty directory
- if (dstStatus.isDir()) {
+ if (dstStatus.isDirectory()) {
FileStatus[] list = listStatus(dst);
if (list != null && list.length != 0) {
throw new IOException(
@@ -962,7 +962,7 @@ public abstract class FileSystem extends
throw new FileNotFoundException("rename destination parent " + parent
+ " not found.");
}
- if (!parentStatus.isDir()) {
+ if (!parentStatus.isDirectory()) {
throw new ParentNotDirectoryException("rename destination parent " + parent
+ " is a file.");
}
@@ -1051,7 +1051,7 @@ public abstract class FileSystem extends
*/
public boolean isDirectory(Path f) throws IOException {
try {
- return getFileStatus(f).isDir();
+ return getFileStatus(f).isDirectory();
} catch (FileNotFoundException e) {
return false; // f does not exist
}
@@ -1063,7 +1063,7 @@ public abstract class FileSystem extends
*/
public boolean isFile(Path f) throws IOException {
try {
- return !getFileStatus(f).isDir();
+ return getFileStatus(f).isFile();
} catch (FileNotFoundException e) {
return false; // f does not exist
}
@@ -1079,14 +1079,14 @@ public abstract class FileSystem extends
/** Return the {@link ContentSummary} of a given {@link Path}. */
public ContentSummary getContentSummary(Path f) throws IOException {
FileStatus status = getFileStatus(f);
- if (!status.isDir()) {
+ if (status.isFile()) {
// f is a file
return new ContentSummary(status.getLen(), 1, 0);
}
// f is a directory
long[] summary = {0, 0, 1};
for(FileStatus s : listStatus(f)) {
- ContentSummary c = s.isDir() ? getContentSummary(s.getPath()) :
+ ContentSummary c = s.isDirectory() ? getContentSummary(s.getPath()) :
new ContentSummary(s.getLen(), 1, 0);
summary[0] += c.getLength();
summary[1] += c.getFileCount();
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileUtil.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileUtil.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileUtil.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/FileUtil.java Mon May 31 03:14:18 2010
@@ -180,7 +180,7 @@ public class FileUtil {
"doest not exist");
} else {
FileStatus sdst = dstFS.getFileStatus(dst);
- if (!sdst.isDir())
+ if (!sdst.isDirectory())
throw new IOException("copying multiple files, but last argument `" +
dst + "' is not a directory");
}
@@ -219,7 +219,7 @@ public class FileUtil {
Configuration conf) throws IOException {
Path src = srcStatus.getPath();
dst = checkDest(src.getName(), dstFS, dst, overwrite);
- if (srcStatus.isDir()) {
+ if (srcStatus.isDirectory()) {
checkDependencies(srcFS, src, dstFS, dst);
if (!dstFS.mkdirs(dst)) {
return false;
@@ -258,7 +258,7 @@ public class FileUtil {
Configuration conf, String addString) throws IOException {
dstFile = checkDest(srcDir.getName(), dstFS, dstFile, false);
- if (!srcFS.getFileStatus(srcDir).isDir())
+ if (srcFS.getFileStatus(srcDir).isDirectory())
return false;
OutputStream out = dstFS.create(dstFile);
@@ -266,7 +266,7 @@ public class FileUtil {
try {
FileStatus contents[] = srcFS.listStatus(srcDir);
for (int i = 0; i < contents.length; i++) {
- if (!contents[i].isDir()) {
+ if (contents[i].isFile()) {
InputStream in = srcFS.open(contents[i].getPath());
try {
IOUtils.copyBytes(in, out, conf, false);
@@ -342,7 +342,7 @@ public class FileUtil {
File dst, boolean deleteSource,
Configuration conf) throws IOException {
Path src = srcStatus.getPath();
- if (srcStatus.isDir()) {
+ if (srcStatus.isDirectory()) {
if (!dst.mkdirs()) {
return false;
}
@@ -367,7 +367,7 @@ public class FileUtil {
boolean overwrite) throws IOException {
if (dstFS.exists(dst)) {
FileStatus sdst = dstFS.getFileStatus(dst);
- if (sdst.isDir()) {
+ if (sdst.isDirectory()) {
if (null == srcName) {
throw new IOException("Target " + dst + " is a directory");
}
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/FsShell.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/FsShell.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/FsShell.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/FsShell.java Mon May 31 03:14:18 2010
@@ -238,7 +238,7 @@ public class FsShell extends Configured
*/
Path src = srcStatus.getPath();
- if (!srcStatus.isDir()) {
+ if (srcStatus.isFile()) {
if (dst.exists()) {
// match the error message in FileUtil.checkDest():
throw new IOException("Target " + dst + " already exists");
@@ -268,6 +268,8 @@ public class FsShell extends Configured
FileStatus status = csfs.getFileStatus(csfs.getChecksumFile(src));
copyToLocal(fs, status, dstcs, false);
}
+ } else if (srcStatus.isSymlink()) {
+ throw new AssertionError("Symlinks unsupported");
} else {
// once FileUtil.copy() supports tmp file, we don't need to mkdirs().
if (!dst.mkdirs()) {
@@ -541,7 +543,7 @@ public class FsShell extends Configured
Path src, boolean recursive,
List<Path> waitingList)
throws IOException {
- if (!srcFs.getFileStatus(src).isDir()) {
+ if (srcFs.getFileStatus(src).isFile()) {
setFileReplication(src, srcFs, newRep, waitingList);
return;
}
@@ -553,8 +555,10 @@ public class FsShell extends Configured
}
for (int i = 0; i < items.length; i++) {
- if (!items[i].isDir()) {
+ if (items[i].isFile()) {
setFileReplication(items[i].getPath(), srcFs, newRep, waitingList);
+ } else if (items[i].isSymlink()) {
+ throw new AssertionError("Symlinks unsupported");
} else if (recursive) {
setReplication(newRep, srcFs, items[i].getPath(), recursive,
waitingList);
@@ -643,10 +647,10 @@ public class FsShell extends Configured
Path cur = stat.getPath();
String mdate = dateForm.format(new Date(stat.getModificationTime()));
- System.out.print((stat.isDir() ? "d" : "-") +
+ System.out.print((stat.isDirectory() ? "d" : "-") +
stat.getPermission() + " ");
System.out.printf("%"+ maxReplication +
- "s ", (!stat.isDir() ? stat.getReplication() : "-"));
+ "s ", (stat.isFile() ? stat.getReplication() : "-"));
if (maxOwner > 0)
System.out.printf("%-"+ maxOwner + "s ", stat.getOwner());
if (maxGroup > 0)
@@ -654,7 +658,7 @@ public class FsShell extends Configured
System.out.printf("%"+ maxLen + "d ", stat.getLen());
System.out.print(mdate + " ");
System.out.println(cur.toUri().getPath());
- if (recursive && stat.isDir()) {
+ if (recursive && stat.isDirectory()) {
numOfErrors += ls(stat,srcFs, recursive, printHeader);
}
}
@@ -739,7 +743,7 @@ public class FsShell extends Configured
for (FileStatus stat : statusToPrint) {
long length;
- if (summary || stat.isDir()) {
+ if (summary || stat.isDirectory()) {
length = srcFs.getContentSummary(stat.getPath()).getLength();
} else {
length = stat.getLen();
@@ -794,7 +798,7 @@ public class FsShell extends Configured
FileStatus fstatus = null;
try {
fstatus = srcFs.getFileStatus(f);
- if (fstatus.isDir()) {
+ if (fstatus.isDirectory()) {
throw new IOException("cannot create directory "
+ src + ": File exists");
}
@@ -820,7 +824,7 @@ public class FsShell extends Configured
FileStatus st;
if (srcFs.exists(f)) {
st = srcFs.getFileStatus(f);
- if (st.isDir()) {
+ if (st.isDirectory()) {
// TODO: handle this
throw new IOException(src + " is a directory");
} else if (st.getLen() != 0)
@@ -845,7 +849,7 @@ public class FsShell extends Configured
case 'z':
return srcFs.getFileStatus(f).getLen() == 0 ? 0 : 1;
case 'd':
- return srcFs.getFileStatus(f).isDir() ? 0 : 1;
+ return srcFs.getFileStatus(f).isDirectory() ? 0 : 1;
default:
throw new IOException("Unknown flag: " + flag);
}
@@ -879,7 +883,8 @@ public class FsShell extends Configured
buf.append(f.getLen());
break;
case 'F':
- buf.append(f.isDir() ? "directory" : "regular file");
+ buf.append(f.isDirectory() ? "directory"
+ : (f.isFile() ? "regular file" : "symlink"));
break;
case 'n':
buf.append(f.getPath().getName());
@@ -946,7 +951,7 @@ public class FsShell extends Configured
} catch(IOException e) {
}
if((srcFstatus!= null) && (dstFstatus!= null)) {
- if (srcFstatus.isDir() && !dstFstatus.isDir()) {
+ if (srcFstatus.isDirectory() && !dstFstatus.isDirectory()) {
throw new IOException("cannot overwrite non directory "
+ dst + " with directory " + srcs[i]);
}
@@ -1138,7 +1143,7 @@ public class FsShell extends Configured
+ src + ": No such file or directory.");
}
- if (fs.isDir() && !recursive) {
+ if (fs.isDirectory() && !recursive) {
throw new IOException("Cannot remove directory \"" + src +
"\", use -rmr instead");
}
@@ -1202,7 +1207,7 @@ public class FsShell extends Configured
path = new Path(src);
FileSystem srcFs = path.getFileSystem(getConf());
FileStatus fileStatus = srcFs.getFileStatus(path);
- if (fileStatus.isDir()) {
+ if (fileStatus.isDirectory()) {
throw new IOException("Source must be a file.");
}
@@ -1254,9 +1259,9 @@ public class FsShell extends Configured
/** helper returns listStatus() */
private static FileStatus[] shellListStatus(String cmd,
- FileSystem srcFs,
- FileStatus src) {
- if (!src.isDir()) {
+ FileSystem srcFs,
+ FileStatus src) {
+ if (src.isFile()) {
FileStatus[] files = { src };
return files;
}
@@ -1285,7 +1290,7 @@ public class FsShell extends Configured
boolean recursive) throws IOException {
int errors = 0;
handler.run(stat, srcFs);
- if (recursive && stat.isDir() && handler.okToContinue()) {
+ if (recursive && stat.isDirectory() && handler.okToContinue()) {
FileStatus[] files = shellListStatus(handler.getName(), srcFs, stat);
if (files == null) {
return 1;
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/RawLocalFileSystem.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/RawLocalFileSystem.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/RawLocalFileSystem.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/RawLocalFileSystem.java Mon May 31 03:14:18 2010
@@ -215,7 +215,7 @@ public class RawLocalFileSystem extends
if (!exists(f)) {
throw new FileNotFoundException("File " + f + " not found.");
}
- if (getFileStatus(f).isDir()) {
+ if (getFileStatus(f).isDirectory()) {
throw new IOException("Cannot append to a diretory (=" + f + " ).");
}
return new FSDataOutputStream(new BufferedOutputStream(
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/Trash.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/Trash.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/Trash.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/Trash.java Mon May 31 03:14:18 2010
@@ -276,7 +276,7 @@ public class Trash extends Configured {
}
for (FileStatus home : homes) { // dump each trash
- if (!home.isDir())
+ if (!home.isDirectory())
continue;
try {
Trash trash = new Trash(home.getPath(), conf);
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/ftp/FTPFileSystem.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/ftp/FTPFileSystem.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/ftp/FTPFileSystem.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/ftp/FTPFileSystem.java Mon May 31 03:14:18 2010
@@ -164,7 +164,7 @@ public class FTPFileSystem extends FileS
Path workDir = new Path(client.printWorkingDirectory());
Path absolute = makeAbsolute(workDir, file);
FileStatus fileStat = getFileStatus(client, absolute);
- if (fileStat.isDir()) {
+ if (fileStat.isDirectory()) {
disconnect(client);
throw new IOException("Path " + file + " is a directory.");
}
@@ -307,7 +307,7 @@ public class FTPFileSystem extends FileS
Path absolute = makeAbsolute(workDir, file);
String pathName = absolute.toUri().getPath();
FileStatus fileStat = getFileStatus(client, absolute);
- if (!fileStat.isDir()) {
+ if (fileStat.isFile()) {
return client.deleteFile(pathName);
}
FileStatus[] dirEntries = listStatus(client, absolute);
@@ -370,7 +370,7 @@ public class FTPFileSystem extends FileS
Path workDir = new Path(client.printWorkingDirectory());
Path absolute = makeAbsolute(workDir, file);
FileStatus fileStat = getFileStatus(client, absolute);
- if (!fileStat.isDir()) {
+ if (fileStat.isFile()) {
return new FileStatus[] { fileStat };
}
FTPFile[] ftpFiles = client.listFiles(absolute.toUri().getPath());
@@ -500,7 +500,7 @@ public class FTPFileSystem extends FileS
*/
private boolean isFile(FTPClient client, Path file) {
try {
- return !getFileStatus(client, file).isDir();
+ return getFileStatus(client, file).isFile();
} catch (FileNotFoundException e) {
return false; // file does not exist
} catch (IOException ioe) {
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/permission/ChmodParser.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/permission/ChmodParser.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/permission/ChmodParser.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/permission/ChmodParser.java Mon May 31 03:14:18 2010
@@ -44,7 +44,7 @@ public class ChmodParser extends Permiss
public short applyNewPermission(FileStatus file) {
FsPermission perms = file.getPermission();
int existing = perms.toShort();
- boolean exeOk = file.isDir() || (existing & 0111) != 0;
+ boolean exeOk = file.isDirectory() || (existing & 0111) != 0;
return (short)combineModes(existing, exeOk);
}
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/fs/s3native/NativeS3FileSystem.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/fs/s3native/NativeS3FileSystem.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/fs/s3native/NativeS3FileSystem.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/fs/s3native/NativeS3FileSystem.java Mon May 31 03:14:18 2010
@@ -354,7 +354,7 @@ public class NativeS3FileSystem extends
}
Path absolutePath = makeAbsolute(f);
String key = pathToKey(absolutePath);
- if (status.isDir()) {
+ if (status.isDirectory()) {
if (!recurse && listStatus(f).length > 0) {
throw new IOException("Can not delete " + f + " at is a not empty directory and recurse option is false");
}
@@ -509,7 +509,7 @@ public class NativeS3FileSystem extends
private boolean mkdir(Path f) throws IOException {
try {
FileStatus fileStatus = getFileStatus(f);
- if (!fileStatus.isDir()) {
+ if (fileStatus.isFile()) {
throw new IOException(String.format(
"Can't make directory for path '%s' since it is a file.", f));
@@ -525,7 +525,7 @@ public class NativeS3FileSystem extends
@Override
public FSDataInputStream open(Path f, int bufferSize) throws IOException {
FileStatus fs = getFileStatus(f); // will throw if the file doesn't exist
- if (fs.isDir()) {
+ if (fs.isDirectory()) {
throw new IOException("'" + f + "' is a directory");
}
LOG.info("Opening '" + f + "' for reading");
@@ -563,7 +563,7 @@ public class NativeS3FileSystem extends
// Figure out the final destination
String dstKey;
try {
- boolean dstIsFile = !getFileStatus(dst).isDir();
+ boolean dstIsFile = getFileStatus(dst).isFile();
if (dstIsFile) {
LOG.debug(debugPreamble + "returning false as dst is an already existing file");
return false;
@@ -575,7 +575,7 @@ public class NativeS3FileSystem extends
LOG.debug(debugPreamble + "using dst as output destination");
dstKey = pathToKey(makeAbsolute(dst));
try {
- if (!getFileStatus(dst.getParent()).isDir()) {
+ if (getFileStatus(dst.getParent()).isFile()) {
LOG.debug(debugPreamble + "returning false as dst parent exists and is a file");
return false;
}
@@ -587,7 +587,7 @@ public class NativeS3FileSystem extends
boolean srcIsFile;
try {
- srcIsFile = !getFileStatus(src).isDir();
+ srcIsFile = getFileStatus(src).isFile();
} catch (FileNotFoundException e) {
LOG.debug(debugPreamble + "returning false as src does not exist");
return false;
Modified: hadoop/common/trunk/src/java/org/apache/hadoop/util/DiskChecker.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/java/org/apache/hadoop/util/DiskChecker.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/java/org/apache/hadoop/util/DiskChecker.java (original)
+++ hadoop/common/trunk/src/java/org/apache/hadoop/util/DiskChecker.java Mon May 31 03:14:18 2010
@@ -147,7 +147,7 @@ public class DiskChecker {
FileStatus stat = localFS.getFileStatus(dir);
FsPermission actual = stat.getPermission();
- if (!stat.isDir())
+ if (!stat.isDirectory())
throw new DiskErrorException("not a directory: "+ dir.toString());
FsAction user = actual.getUserAction();
Modified: hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextSymlinkBaseTest.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextSymlinkBaseTest.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextSymlinkBaseTest.java (original)
+++ hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextSymlinkBaseTest.java Mon May 31 03:14:18 2010
@@ -257,8 +257,7 @@ public abstract class FileContextSymlink
Path linkToFile = new Path(testBaseDir1()+"/linkToFile");
createAndWriteFile(file);
fc.createSymlink(file, linkToFile, false);
- // NB: isDir is true since we need !isDir to imply file (HADOOP-6584)
- //assertTrue(isDir(fc, linkToFile));
+ assertFalse(fc.getFileLinkStatus(linkToFile).isDirectory());
assertTrue(isSymlink(fc, linkToFile));
assertTrue(isFile(fc, linkToFile));
assertFalse(isDir(fc, linkToFile));
@@ -275,8 +274,7 @@ public abstract class FileContextSymlink
assertFalse(fc.getFileStatus(linkToDir).isSymlink());
assertTrue(isDir(fc, linkToDir));
- // NB: isDir is true since we need !isDir to imply file (HADOOP-6584)
- //assertTrue(fc.getFileLinkStatus(linkToDir).isDir());
+ assertFalse(fc.getFileLinkStatus(linkToDir).isDirectory());
assertTrue(fc.getFileLinkStatus(linkToDir).isSymlink());
assertFalse(isFile(fc, linkToDir));
@@ -292,9 +290,7 @@ public abstract class FileContextSymlink
Path file = new Path("/noSuchFile");
Path link = new Path(testBaseDir1()+"/link");
fc.createSymlink(file, link, false);
-
- // NB: isDir is true since we need !isDir to imply file (HADOOP-6584)
- //assertTrue(fc.getFileLinkStatus(link).isDir());
+ assertFalse(fc.getFileLinkStatus(link).isDirectory());
assertTrue(fc.getFileLinkStatus(link).isSymlink());
}
@@ -365,15 +361,12 @@ public abstract class FileContextSymlink
// Check getFileStatus
assertFalse(fc.getFileStatus(linkAbs).isSymlink());
- assertFalse(fc.getFileStatus(linkAbs).isDir());
+ assertFalse(fc.getFileStatus(linkAbs).isDirectory());
assertEquals(fileSize, fc.getFileStatus(linkAbs).getLen());
- // NB: These are links to files so ensure !isDir is true
- assertFalse(fc.getFileStatus(linkAbs).isDir());
// Check getFileLinkStatus
assertTrue(isSymlink(fc, linkAbs));
- // NB: isDir is true since we need !isDir to imply file (HADOOP-6584)
- //assertTrue(fc.getFileLinkStatus(linkAbs).isDir());
+ assertFalse(fc.getFileLinkStatus(linkAbs).isDirectory());
// Check getSymlink always returns a qualified target, except
// when partially qualified paths are used (see tests below).
@@ -595,7 +588,7 @@ public abstract class FileContextSymlink
fc.createSymlink(dir1, linkToDir, false);
assertFalse(isFile(fc, linkToDir));
assertTrue(isDir(fc, linkToDir));
- assertTrue(fc.getFileStatus(linkToDir).isDir());
+ assertTrue(fc.getFileStatus(linkToDir).isDirectory());
assertTrue(fc.getFileLinkStatus(linkToDir).isSymlink());
}
@@ -610,7 +603,7 @@ public abstract class FileContextSymlink
assertTrue(isFile(fc, fileViaLink));
assertFalse(isDir(fc, fileViaLink));
assertFalse(fc.getFileLinkStatus(fileViaLink).isSymlink());
- assertFalse(fc.getFileStatus(fileViaLink).isDir());
+ assertFalse(fc.getFileStatus(fileViaLink).isDirectory());
readFile(fileViaLink);
fc.delete(fileViaLink, true);
assertFalse(exists(fc, fileViaLink));
@@ -625,7 +618,7 @@ public abstract class FileContextSymlink
Path subDirViaLink = new Path(linkToDir, "subDir");
fc.createSymlink(dir1, linkToDir, false);
fc.mkdir(subDirViaLink, FileContext.DEFAULT_PERM, true);
- assertTrue(fc.getFileStatus(subDirViaLink).isDir());
+ assertTrue(isDir(fc, subDirViaLink));
fc.delete(subDirViaLink, false);
assertFalse(exists(fc, subDirViaLink));
assertFalse(exists(fc, subDir));
@@ -702,7 +695,7 @@ public abstract class FileContextSymlink
assertTrue(isFile(fc, fileViaLink));
assertFalse(isDir(fc, fileViaLink));
assertFalse(fc.getFileLinkStatus(fileViaLink).isSymlink());
- assertFalse(fc.getFileStatus(fileViaLink).isDir());
+ assertFalse(fc.getFileStatus(fileViaLink).isDirectory());
readFile(fileViaLink);
}
@@ -826,7 +819,8 @@ public abstract class FileContextSymlink
fc.rename(file, subDir);
fail("Renamed file to a directory");
} catch (IOException e) {
- // Expected. Both should be either a file or directory.
+ // Expected. Both must be directories.
+ assertTrue(unwrapException(e) instanceof IOException);
}
assertTrue(exists(fc, file));
}
@@ -880,7 +874,8 @@ public abstract class FileContextSymlink
fc.rename(dir1, linkToDir, Rename.OVERWRITE);
fail("Renamed directory to a symlink");
} catch (IOException e) {
- // Expected. Both should be either a file or directory.
+ // Expected. Both must be directories.
+ assertTrue(unwrapException(e) instanceof IOException);
}
assertTrue(exists(fc, dir1));
assertTrue(exists(fc, linkToDir));
@@ -898,7 +893,8 @@ public abstract class FileContextSymlink
fc.rename(dir1, linkToFile, Rename.OVERWRITE);
fail("Renamed directory to a symlink");
} catch (IOException e) {
- // Expected. Both should be either a file or directory.
+ // Expected. Both must be directories.
+ assertTrue(unwrapException(e) instanceof IOException);
}
assertTrue(exists(fc, dir1));
assertTrue(exists(fc, linkToFile));
@@ -914,7 +910,8 @@ public abstract class FileContextSymlink
fc.rename(dir, link, Rename.OVERWRITE);
fail("Renamed directory to a symlink");
} catch (IOException e) {
- // Expected. Both should be either a file or directory.
+ // Expected. Both must be directories.
+ assertTrue(unwrapException(e) instanceof IOException);
}
assertTrue(exists(fc, dir));
assertTrue(fc.getFileLinkStatus(link) != null);
@@ -934,6 +931,7 @@ public abstract class FileContextSymlink
fail("Renamed file to symlink w/o overwrite");
} catch (IOException e) {
// Expected
+ assertTrue(unwrapException(e) instanceof FileAlreadyExistsException);
}
fc.rename(file, link, Rename.OVERWRITE);
assertFalse(exists(fc, file));
@@ -956,6 +954,7 @@ public abstract class FileContextSymlink
fail("Renamed file to symlink w/o overwrite");
} catch (IOException e) {
// Expected
+ assertTrue(unwrapException(e) instanceof FileAlreadyExistsException);
}
fc.rename(file1, link, Rename.OVERWRITE);
assertFalse(exists(fc, file1));
@@ -1017,6 +1016,7 @@ public abstract class FileContextSymlink
fail("Renamed w/o passing overwrite");
} catch (IOException e) {
// Expected
+ assertTrue(unwrapException(e) instanceof FileAlreadyExistsException);
}
fc.rename(link, file1, Rename.OVERWRITE);
assertFalse(exists(fc, link));
@@ -1036,13 +1036,15 @@ public abstract class FileContextSymlink
fc.rename(link, dir2);
fail("Renamed link to a directory");
} catch (IOException e) {
- // Expected
+ // Expected. Both must be directories.
+ assertTrue(unwrapException(e) instanceof IOException);
}
try {
fc.rename(link, dir2, Rename.OVERWRITE);
fail("Renamed link to a directory");
} catch (IOException e) {
- // Expected
+ // Expected. Both must be directories.
+ assertTrue(unwrapException(e) instanceof IOException);
}
// Also fails when dir2 has a sub-directory
fc.mkdir(subDir, FsPermission.getDefault(), false);
@@ -1050,7 +1052,8 @@ public abstract class FileContextSymlink
fc.rename(link, dir2, Rename.OVERWRITE);
fail("Renamed link to a directory");
} catch (IOException e) {
- // Expected
+ // Expected. Both must be directories.
+ assertTrue(unwrapException(e) instanceof IOException);
}
}
@@ -1082,7 +1085,7 @@ public abstract class FileContextSymlink
fc.createSymlink(file, link1, false);
fc.rename(link1, link2);
assertTrue(fc.getFileLinkStatus(link2).isSymlink());
- assertFalse(fc.getFileStatus(link2).isDir());
+ assertFalse(fc.getFileStatus(link2).isDirectory());
readFile(link2);
readFile(file);
try {
@@ -1189,6 +1192,44 @@ public abstract class FileContextSymlink
}
@Test
+ /** Test rename a file to path with destination that has symlink parent */
+ public void testRenameFileWithDestParentSymlink() throws IOException {
+ Path link = new Path(testBaseDir1(), "link");
+ Path file1 = new Path(testBaseDir1(), "file1");
+ Path file2 = new Path(testBaseDir1(), "file2");
+ Path file3 = new Path(link, "file3");
+ Path dir2 = new Path(testBaseDir2());
+
+ // Renaming /dir1/file1 to non-existant file /dir1/link/file3 is OK
+ // if link points to a directory...
+ fc.createSymlink(dir2, link, false);
+ createAndWriteFile(file1);
+ fc.rename(file1, file3);
+ assertFalse(exists(fc, file1));
+ assertTrue(exists(fc, file3));
+ fc.rename(file3, file1);
+
+ // But fails if link is dangling...
+ fc.delete(link, false);
+ fc.createSymlink(file2, link, false);
+ try {
+ fc.rename(file1, file3);
+ } catch (IOException e) {
+ // Expected
+ assertTrue(unwrapException(e) instanceof FileNotFoundException);
+ }
+
+ // And if link points to a file...
+ createAndWriteFile(file2);
+ try {
+ fc.rename(file1, file3);
+ } catch (IOException e) {
+ // Expected
+ assertTrue(unwrapException(e) instanceof ParentNotDirectoryException);
+ }
+ }
+
+ @Test
/** Operate on a file using a path with an intermediate symlink */
public void testAccessFileViaSymlink() throws IOException {
Path baseDir = new Path(testBaseDir1());
@@ -1230,7 +1271,7 @@ public abstract class FileContextSymlink
Path dirViaLink = new Path(linkToDir, "dir");
fc.createSymlink(baseDir, linkToDir, false);
fc.mkdir(dirViaLink, FileContext.DEFAULT_PERM, true);
- assertTrue(fc.getFileStatus(dirViaLink).isDir());
+ assertTrue(fc.getFileStatus(dirViaLink).isDirectory());
FileStatus[] stats = fc.util().listStatus(dirViaLink);
assertEquals(0, stats.length);
Iterator<FileStatus> statsItor = fc.listStatus(dirViaLink);
Modified: hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextTestHelper.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextTestHelper.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextTestHelper.java (original)
+++ hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextTestHelper.java Mon May 31 03:14:18 2010
@@ -128,7 +128,7 @@ public final class FileContextTestHelper
public static boolean isFile(FileContext fc, Path p) throws IOException {
try {
- return !fc.getFileStatus(p).isDir();
+ return fc.getFileStatus(p).isFile();
} catch (FileNotFoundException e) {
return false;
}
@@ -136,7 +136,7 @@ public final class FileContextTestHelper
public static boolean isDir(FileContext fc, Path p) throws IOException {
try {
- return fc.getFileStatus(p).isDir();
+ return fc.getFileStatus(p).isDirectory();
} catch (FileNotFoundException e) {
return false;
}
Modified: hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestLocalFSFileContextSymlink.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestLocalFSFileContextSymlink.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestLocalFSFileContextSymlink.java (original)
+++ hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestLocalFSFileContextSymlink.java Mon May 31 03:14:18 2010
@@ -104,8 +104,7 @@ public class TestLocalFSFileContextSymli
FileStatus fsd = fc.getFileLinkStatus(link);
assertEquals(fileQual, fsd.getSymlink());
assertTrue(fsd.isSymlink());
- // NB: isDir is true since we need !isDir to imply file (HADOOP-6584)
- //assertTrue(fsd.isDir());
+ assertFalse(fsd.isDirectory());
assertEquals("", fsd.getOwner());
assertEquals("", fsd.getGroup());
assertEquals(link, fsd.getPath());
Modified: hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestTrash.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestTrash.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestTrash.java (original)
+++ hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestTrash.java Mon May 31 03:14:18 2010
@@ -52,7 +52,7 @@ public class TestTrash extends TestCase
protected static Path mkdir(FileSystem fs, Path p) throws IOException {
assertTrue(fs.mkdirs(p));
assertTrue(fs.exists(p));
- assertTrue(fs.getFileStatus(p).isDir());
+ assertTrue(fs.getFileStatus(p).isDirectory());
return p;
}
Modified: hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/loadGenerator/LoadGenerator.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/loadGenerator/LoadGenerator.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/loadGenerator/LoadGenerator.java (original)
+++ hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/loadGenerator/LoadGenerator.java Mon May 31 03:14:18 2010
@@ -547,7 +547,7 @@ public class LoadGenerator extends Confi
FileStatus[] stats = fs.listStatus(path);
for (FileStatus stat : stats) {
- if (stat.isDir()) {
+ if (stat.isDirectory()) {
dirs.add(stat.getPath().toString());
initFileDirTables(stat.getPath());
} else {
Modified: hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/s3native/NativeS3FileSystemContractBaseTest.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/s3native/NativeS3FileSystemContractBaseTest.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/s3native/NativeS3FileSystemContractBaseTest.java (original)
+++ hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/s3native/NativeS3FileSystemContractBaseTest.java Mon May 31 03:14:18 2010
@@ -62,7 +62,7 @@ public abstract class NativeS3FileSystem
}
public void testNoTrailingBackslashOnBucket() throws Exception {
- assertTrue(fs.getFileStatus(new Path(fs.getUri().toString())).isDir());
+ assertTrue(fs.getFileStatus(new Path(fs.getUri().toString())).isDirectory());
}
private void createTestFiles(String base) throws IOException {
@@ -100,7 +100,7 @@ public abstract class NativeS3FileSystem
store.storeEmptyFile(base + "/dir/");
}
- assertTrue(fs.getFileStatus(path).isDir());
+ assertTrue(fs.getFileStatus(path).isDirectory());
assertEquals(2, fs.listStatus(path).length);
}
}
@@ -114,7 +114,7 @@ public abstract class NativeS3FileSystem
fs.delete(path, true);
path = path("/test");
- assertTrue(fs.getFileStatus(path).isDir());
+ assertTrue(fs.getFileStatus(path).isDirectory());
assertEquals(0, fs.listStatus(path).length);
}
@@ -127,9 +127,9 @@ public abstract class NativeS3FileSystem
fs.rename(path("/" + base), dest);
Path path = path("/test");
- assertTrue(fs.getFileStatus(path).isDir());
+ assertTrue(fs.getFileStatus(path).isDirectory());
assertEquals(1, fs.listStatus(path).length);
- assertTrue(fs.getFileStatus(dest).isDir());
+ assertTrue(fs.getFileStatus(dest).isDirectory());
assertEquals(2, fs.listStatus(dest).length);
}
Modified: hadoop/common/trunk/src/test/core/org/apache/hadoop/util/TestDiskChecker.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/test/core/org/apache/hadoop/util/TestDiskChecker.java?rev=949658&r1=949657&r2=949658&view=diff
==============================================================================
--- hadoop/common/trunk/src/test/core/org/apache/hadoop/util/TestDiskChecker.java (original)
+++ hadoop/common/trunk/src/test/core/org/apache/hadoop/util/TestDiskChecker.java Mon May 31 03:14:18 2010
@@ -107,13 +107,13 @@ public class TestDiskChecker {
.returning(localDir).from.pathToFile(dir));
FileStatus stat = make(stub(FileStatus.class)
.returning(perm).from.getPermission());
- when(stat.isDir()).thenReturn(isDir);
+ when(stat.isDirectory()).thenReturn(isDir);
when(fs.getFileStatus(dir)).thenReturn(stat);
try {
DiskChecker.checkDir(fs, dir, perm);
- verify(stat).isDir();
+ verify(stat).isDirectory();
verify(fs, times(2)).getFileStatus(dir);
verify(stat, times(2)).getPermission();
assertTrue("checkDir success", success);