Java Code Examples for org.apache.hadoop.fs.permission.FsPermission#getUMask()

The following examples show how to use org.apache.hadoop.fs.permission.FsPermission#getUMask() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: LogAggregationService.java    From hadoop with Apache License 2.0 5 votes vote down vote up
private void createDir(FileSystem fs, Path path, FsPermission fsPerm)
    throws IOException {
  FsPermission dirPerm = new FsPermission(fsPerm);
  fs.mkdirs(path, dirPerm);
  FsPermission umask = FsPermission.getUMask(fs.getConf());
  if (!dirPerm.equals(dirPerm.applyUMask(umask))) {
    fs.setPermission(path, new FsPermission(fsPerm));
  }
}
 
Example 2
Source File: FileContext.java    From hadoop with Apache License 2.0 5 votes vote down vote up
private FileContext(final AbstractFileSystem defFs,
  final FsPermission theUmask, final Configuration aConf) {
  defaultFS = defFs;
  umask = FsPermission.getUMask(aConf);
  conf = aConf;
  try {
    ugi = UserGroupInformation.getCurrentUser();
  } catch (IOException e) {
    LOG.error("Exception in getCurrentUser: ",e);
    throw new RuntimeException("Failed to get the current user " +
    		"while creating a FileContext", e);
  }
  /*
   * Init the wd.
   * WorkingDir is implemented at the FileContext layer 
   * NOT at the AbstractFileSystem layer. 
   * If the DefaultFS, such as localFilesystem has a notion of
   *  builtin WD, we use that as the initial WD.
   *  Otherwise the WD is initialized to the home directory.
   */
  workingDir = defaultFS.getInitialWorkingDirectory();
  if (workingDir == null) {
    workingDir = defaultFS.getHomeDirectory();
  }
  resolveSymlinks = conf.getBoolean(
      CommonConfigurationKeys.FS_CLIENT_RESOLVE_REMOTE_SYMLINKS_KEY,
      CommonConfigurationKeys.FS_CLIENT_RESOLVE_REMOTE_SYMLINKS_DEFAULT);
  util = new Util(); // for the inner class
}
 
Example 3
Source File: LogAggregationService.java    From big-c with Apache License 2.0 5 votes vote down vote up
private void createDir(FileSystem fs, Path path, FsPermission fsPerm)
    throws IOException {
  FsPermission dirPerm = new FsPermission(fsPerm);
  fs.mkdirs(path, dirPerm);
  FsPermission umask = FsPermission.getUMask(fs.getConf());
  if (!dirPerm.equals(dirPerm.applyUMask(umask))) {
    fs.setPermission(path, new FsPermission(fsPerm));
  }
}
 
Example 4
Source File: FileContext.java    From big-c with Apache License 2.0 5 votes vote down vote up
private FileContext(final AbstractFileSystem defFs,
  final FsPermission theUmask, final Configuration aConf) {
  defaultFS = defFs;
  umask = FsPermission.getUMask(aConf);
  conf = aConf;
  try {
    ugi = UserGroupInformation.getCurrentUser();
  } catch (IOException e) {
    LOG.error("Exception in getCurrentUser: ",e);
    throw new RuntimeException("Failed to get the current user " +
    		"while creating a FileContext", e);
  }
  /*
   * Init the wd.
   * WorkingDir is implemented at the FileContext layer 
   * NOT at the AbstractFileSystem layer. 
   * If the DefaultFS, such as localFilesystem has a notion of
   *  builtin WD, we use that as the initial WD.
   *  Otherwise the WD is initialized to the home directory.
   */
  workingDir = defaultFS.getInitialWorkingDirectory();
  if (workingDir == null) {
    workingDir = defaultFS.getHomeDirectory();
  }
  resolveSymlinks = conf.getBoolean(
      CommonConfigurationKeys.FS_CLIENT_RESOLVE_REMOTE_SYMLINKS_KEY,
      CommonConfigurationKeys.FS_CLIENT_RESOLVE_REMOTE_SYMLINKS_DEFAULT);
  util = new Util(); // for the inner class
}
 
Example 5
Source File: FileSystemTestWrapper.java    From hadoop with Apache License 2.0 4 votes vote down vote up
@Override
public FSDataOutputStream create(Path f, EnumSet<CreateFlag> createFlag,
    CreateOpts... opts) throws AccessControlException,
    FileAlreadyExistsException, FileNotFoundException,
    ParentNotDirectoryException, UnsupportedFileSystemException, IOException {

  // Need to translate the FileContext-style options into FileSystem-style

  // Permissions with umask
  CreateOpts.Perms permOpt = CreateOpts.getOpt(
      CreateOpts.Perms.class, opts);
  FsPermission umask = FsPermission.getUMask(fs.getConf());
  FsPermission permission = (permOpt != null) ? permOpt.getValue()
      : FsPermission.getFileDefault().applyUMask(umask);
  permission = permission.applyUMask(umask);
  // Overwrite
  boolean overwrite = createFlag.contains(CreateFlag.OVERWRITE);
  // bufferSize
  int bufferSize = fs.getConf().getInt(
      CommonConfigurationKeysPublic.IO_FILE_BUFFER_SIZE_KEY,
      CommonConfigurationKeysPublic.IO_FILE_BUFFER_SIZE_DEFAULT);
  CreateOpts.BufferSize bufOpt = CreateOpts.getOpt(
      CreateOpts.BufferSize.class, opts);
  bufferSize = (bufOpt != null) ? bufOpt.getValue() : bufferSize;
  // replication
  short replication = fs.getDefaultReplication(f);
  CreateOpts.ReplicationFactor repOpt =
      CreateOpts.getOpt(CreateOpts.ReplicationFactor.class, opts);
  replication = (repOpt != null) ? repOpt.getValue() : replication;
  // blockSize
  long blockSize = fs.getDefaultBlockSize(f);
  CreateOpts.BlockSize blockOpt = CreateOpts.getOpt(
      CreateOpts.BlockSize.class, opts);
  blockSize = (blockOpt != null) ? blockOpt.getValue() : blockSize;
  // Progressable
  Progressable progress = null;
  CreateOpts.Progress progressOpt = CreateOpts.getOpt(
      CreateOpts.Progress.class, opts);
  progress = (progressOpt != null) ? progressOpt.getValue() : progress;
  return fs.create(f, permission, overwrite, bufferSize, replication,
      blockSize, progress);
}
 
Example 6
Source File: FileSystemTestWrapper.java    From big-c with Apache License 2.0 4 votes vote down vote up
@Override
public FSDataOutputStream create(Path f, EnumSet<CreateFlag> createFlag,
    CreateOpts... opts) throws AccessControlException,
    FileAlreadyExistsException, FileNotFoundException,
    ParentNotDirectoryException, UnsupportedFileSystemException, IOException {

  // Need to translate the FileContext-style options into FileSystem-style

  // Permissions with umask
  CreateOpts.Perms permOpt = CreateOpts.getOpt(
      CreateOpts.Perms.class, opts);
  FsPermission umask = FsPermission.getUMask(fs.getConf());
  FsPermission permission = (permOpt != null) ? permOpt.getValue()
      : FsPermission.getFileDefault().applyUMask(umask);
  permission = permission.applyUMask(umask);
  // Overwrite
  boolean overwrite = createFlag.contains(CreateFlag.OVERWRITE);
  // bufferSize
  int bufferSize = fs.getConf().getInt(
      CommonConfigurationKeysPublic.IO_FILE_BUFFER_SIZE_KEY,
      CommonConfigurationKeysPublic.IO_FILE_BUFFER_SIZE_DEFAULT);
  CreateOpts.BufferSize bufOpt = CreateOpts.getOpt(
      CreateOpts.BufferSize.class, opts);
  bufferSize = (bufOpt != null) ? bufOpt.getValue() : bufferSize;
  // replication
  short replication = fs.getDefaultReplication(f);
  CreateOpts.ReplicationFactor repOpt =
      CreateOpts.getOpt(CreateOpts.ReplicationFactor.class, opts);
  replication = (repOpt != null) ? repOpt.getValue() : replication;
  // blockSize
  long blockSize = fs.getDefaultBlockSize(f);
  CreateOpts.BlockSize blockOpt = CreateOpts.getOpt(
      CreateOpts.BlockSize.class, opts);
  blockSize = (blockOpt != null) ? blockOpt.getValue() : blockSize;
  // Progressable
  Progressable progress = null;
  CreateOpts.Progress progressOpt = CreateOpts.getOpt(
      CreateOpts.Progress.class, opts);
  progress = (progressOpt != null) ? progressOpt.getValue() : progress;
  return fs.create(f, permission, overwrite, bufferSize, replication,
      blockSize, progress);
}
 
Example 7
Source File: FileContext.java    From hadoop with Apache License 2.0 2 votes vote down vote up
/**
 * Create a FileContext with specified FS as default using the specified
 * config.
 * 
 * @param defFS
 * @param aConf
 * @return new FileContext with specifed FS as default.
 */
public static FileContext getFileContext(final AbstractFileSystem defFS,
                  final Configuration aConf) {
  return new FileContext(defFS, FsPermission.getUMask(aConf), aConf);
}
 
Example 8
Source File: FileContext.java    From big-c with Apache License 2.0 2 votes vote down vote up
/**
 * Create a FileContext with specified FS as default using the specified
 * config.
 * 
 * @param defFS
 * @param aConf
 * @return new FileContext with specifed FS as default.
 */
public static FileContext getFileContext(final AbstractFileSystem defFS,
                  final Configuration aConf) {
  return new FileContext(defFS, FsPermission.getUMask(aConf), aConf);
}