org.apache.hadoop.fs.Path#CUR_DIR源码实例Demo

下面列出了org.apache.hadoop.fs.Path#CUR_DIR 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: hdfs-shell   文件: ContextCommands.java
public synchronized String getCurrentDir() {
    if (currentDir == null) {
        try {
            final Path path = new Path(Path.CUR_DIR);
            final FileSystem fs = getFileSystem();
            final FileStatus[] fileStatuses = fs.globStatus(path);
            if (fileStatuses == null || fileStatuses.length == 0) {
                return "";
            }
            homeDir = currentDir = fileStatuses[0].getPath().toUri().getPath();
        } catch (Exception e) {
            return "";
        }
    }
    return currentDir;
}
 
源代码2 项目: hadoop   文件: CommandWithDestination.java
/**
 *  The last arg is expected to be a remote path, if only one argument is
 *  given then the destination will be the remote user's directory 
 *  @param args is the list of arguments
 *  @throws PathIOException if path doesn't exist or matches too many times 
 */
protected void getRemoteDestination(LinkedList<String> args)
throws IOException {
  if (args.size() < 2) {
    dst = new PathData(Path.CUR_DIR, getConf());
  } else {
    String pathString = args.removeLast();
    // if the path is a glob, then it must match one and only one path
    PathData[] items = PathData.expandAsGlob(pathString, getConf());
    switch (items.length) {
      case 0:
        throw new PathNotFoundException(pathString);
      case 1:
        dst = items[0];
        break;
      default:
        throw new PathIOException(pathString, "Too many matches");
    }
  }
}
 
源代码3 项目: hadoop   文件: PathData.java
private static String relativize(URI cwdUri, URI srcUri, boolean isDir) {
  String uriPath = srcUri.getPath();
  String cwdPath = cwdUri.getPath();
  if (cwdPath.equals(uriPath)) {
    return Path.CUR_DIR;
  }

  // find common ancestor
  int lastSep = findLongestDirPrefix(cwdPath, uriPath, isDir);
  
  StringBuilder relPath = new StringBuilder();    
  // take the remaining path fragment after the ancestor
  if (lastSep < uriPath.length()) {
    relPath.append(uriPath.substring(lastSep+1));
  }

  // if cwd has a path fragment after the ancestor, convert them to ".."
  if (lastSep < cwdPath.length()) {
    while (lastSep != -1) {
      if (relPath.length() != 0) relPath.insert(0, Path.SEPARATOR);
      relPath.insert(0, "..");
      lastSep = cwdPath.indexOf(Path.SEPARATOR, lastSep+1);
    }
  }
  return relPath.toString();
}
 
源代码4 项目: big-c   文件: CommandWithDestination.java
/**
 *  The last arg is expected to be a remote path, if only one argument is
 *  given then the destination will be the remote user's directory 
 *  @param args is the list of arguments
 *  @throws PathIOException if path doesn't exist or matches too many times 
 */
protected void getRemoteDestination(LinkedList<String> args)
throws IOException {
  if (args.size() < 2) {
    dst = new PathData(Path.CUR_DIR, getConf());
  } else {
    String pathString = args.removeLast();
    // if the path is a glob, then it must match one and only one path
    PathData[] items = PathData.expandAsGlob(pathString, getConf());
    switch (items.length) {
      case 0:
        throw new PathNotFoundException(pathString);
      case 1:
        dst = items[0];
        break;
      default:
        throw new PathIOException(pathString, "Too many matches");
    }
  }
}
 
源代码5 项目: big-c   文件: PathData.java
private static String relativize(URI cwdUri, URI srcUri, boolean isDir) {
  String uriPath = srcUri.getPath();
  String cwdPath = cwdUri.getPath();
  if (cwdPath.equals(uriPath)) {
    return Path.CUR_DIR;
  }

  // find common ancestor
  int lastSep = findLongestDirPrefix(cwdPath, uriPath, isDir);
  
  StringBuilder relPath = new StringBuilder();    
  // take the remaining path fragment after the ancestor
  if (lastSep < uriPath.length()) {
    relPath.append(uriPath.substring(lastSep+1));
  }

  // if cwd has a path fragment after the ancestor, convert them to ".."
  if (lastSep < cwdPath.length()) {
    while (lastSep != -1) {
      if (relPath.length() != 0) relPath.insert(0, Path.SEPARATOR);
      relPath.insert(0, "..");
      lastSep = cwdPath.indexOf(Path.SEPARATOR, lastSep+1);
    }
  }
  return relPath.toString();
}
 
源代码6 项目: hadoop   文件: SnapshotDiffReport.java
static String getPathString(byte[] path) {
  String pathStr = DFSUtil.bytes2String(path);
  if (pathStr.isEmpty()) {
    return Path.CUR_DIR;
  } else {
    return Path.CUR_DIR + Path.SEPARATOR + pathStr;
  }
}
 
源代码7 项目: hadoop   文件: CommandWithDestination.java
/**
 *  The last arg is expected to be a local path, if only one argument is
 *  given then the destination will be the current directory 
 *  @param args is the list of arguments
 */
protected void getLocalDestination(LinkedList<String> args)
throws IOException {
  String pathString = (args.size() < 2) ? Path.CUR_DIR : args.removeLast();
  try {
    dst = new PathData(new URI(pathString), getConf());
  } catch (URISyntaxException e) {
    if (Path.WINDOWS) {
      // Unlike URI, PathData knows how to parse Windows drive-letter paths.
      dst = new PathData(pathString, getConf());
    } else {
      throw new IOException("unexpected URISyntaxException", e);
    }
  }
}
 
源代码8 项目: hadoop   文件: TestPathData.java
@Test (timeout = 30000)
public void testCwdContents() throws Exception {
  String dirString = Path.CUR_DIR;
  PathData item = new PathData(dirString, conf);
  PathData[] items = item.getDirectoryContents();
  assertEquals(
      sortedString("d1", "d2"),
      sortedString(items)
  );
}
 
源代码9 项目: big-c   文件: SnapshotDiffReport.java
static String getPathString(byte[] path) {
  String pathStr = DFSUtil.bytes2String(path);
  if (pathStr.isEmpty()) {
    return Path.CUR_DIR;
  } else {
    return Path.CUR_DIR + Path.SEPARATOR + pathStr;
  }
}
 
源代码10 项目: big-c   文件: CommandWithDestination.java
/**
 *  The last arg is expected to be a local path, if only one argument is
 *  given then the destination will be the current directory 
 *  @param args is the list of arguments
 */
protected void getLocalDestination(LinkedList<String> args)
throws IOException {
  String pathString = (args.size() < 2) ? Path.CUR_DIR : args.removeLast();
  try {
    dst = new PathData(new URI(pathString), getConf());
  } catch (URISyntaxException e) {
    if (Path.WINDOWS) {
      // Unlike URI, PathData knows how to parse Windows drive-letter paths.
      dst = new PathData(pathString, getConf());
    } else {
      throw new IOException("unexpected URISyntaxException", e);
    }
  }
}
 
源代码11 项目: big-c   文件: TestPathData.java
@Test (timeout = 30000)
public void testCwdContents() throws Exception {
  String dirString = Path.CUR_DIR;
  PathData item = new PathData(dirString, conf);
  PathData[] items = item.getDirectoryContents();
  assertEquals(
      sortedString("d1", "d2"),
      sortedString(items)
  );
}