org.apache.hadoop.fs.permission.FsPermission#getStickyBit ( )源码实例Demo

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

源代码1 项目: hadoop   文件: AclCommands.java
@Override
protected void processPath(PathData item) throws IOException {
  out.println("# file: " + item);
  out.println("# owner: " + item.stat.getOwner());
  out.println("# group: " + item.stat.getGroup());
  FsPermission perm = item.stat.getPermission();
  if (perm.getStickyBit()) {
    out.println("# flags: --" +
      (perm.getOtherAction().implies(FsAction.EXECUTE) ? "t" : "T"));
  }

  AclStatus aclStatus = item.fs.getAclStatus(item.path);
  List<AclEntry> entries = perm.getAclBit() ? aclStatus.getEntries()
      : Collections.<AclEntry> emptyList();
  ScopedAclEntries scopedEntries = new ScopedAclEntries(
    AclUtil.getAclFromPermAndEntries(perm, entries));
  printAclEntriesForSingleScope(aclStatus, perm,
      scopedEntries.getAccessEntries());
  printAclEntriesForSingleScope(aclStatus, perm,
      scopedEntries.getDefaultEntries());
  out.println();
}
 
源代码2 项目: big-c   文件: AclCommands.java
@Override
protected void processPath(PathData item) throws IOException {
  out.println("# file: " + item);
  out.println("# owner: " + item.stat.getOwner());
  out.println("# group: " + item.stat.getGroup());
  FsPermission perm = item.stat.getPermission();
  if (perm.getStickyBit()) {
    out.println("# flags: --" +
      (perm.getOtherAction().implies(FsAction.EXECUTE) ? "t" : "T"));
  }

  AclStatus aclStatus = item.fs.getAclStatus(item.path);
  List<AclEntry> entries = perm.getAclBit() ? aclStatus.getEntries()
      : Collections.<AclEntry> emptyList();
  ScopedAclEntries scopedEntries = new ScopedAclEntries(
    AclUtil.getAclFromPermAndEntries(perm, entries));
  printAclEntriesForSingleScope(aclStatus, perm,
      scopedEntries.getAccessEntries());
  printAclEntriesForSingleScope(aclStatus, perm,
      scopedEntries.getDefaultEntries());
  out.println();
}
 
源代码3 项目: hudi   文件: FSPermissionDTO.java
public static FSPermissionDTO fromFsPermission(FsPermission permission) {
  if (null == permission) {
    return null;
  }
  FSPermissionDTO dto = new FSPermissionDTO();
  dto.useraction = permission.getUserAction();
  dto.groupaction = permission.getGroupAction();
  dto.otheraction = permission.getOtherAction();
  dto.stickyBit = permission.getStickyBit();
  return dto;
}
 
源代码4 项目: hadoop   文件: AclStorage.java
/**
 * Creates the new FsPermission for an inode that is receiving an extended
 * ACL, based on its access ACL entries.  For a correctly sorted ACL, the
 * first entry is the owner and the last 2 entries are the mask and other
 * entries respectively.  Also preserve sticky bit and toggle ACL bit on.
 * Note that this method intentionally copies the permissions of the mask
 * entry into the FsPermission group permissions.  This is consistent with the
 * POSIX ACLs model, which presents the mask as the permissions of the group
 * class.
 *
 * @param accessEntries List<AclEntry> access ACL entries
 * @param existingPerm FsPermission existing permissions
 * @return FsPermission new permissions
 */
private static FsPermission createFsPermissionForExtendedAcl(
    List<AclEntry> accessEntries, FsPermission existingPerm) {
  return new FsPermission(accessEntries.get(0).getPermission(),
    accessEntries.get(accessEntries.size() - 2).getPermission(),
    accessEntries.get(accessEntries.size() - 1).getPermission(),
    existingPerm.getStickyBit());
}
 
源代码5 项目: hadoop   文件: AclStorage.java
/**
 * Creates the new FsPermission for an inode that is receiving a minimal ACL,
 * based on its access ACL entries.  For a correctly sorted ACL, the owner,
 * group and other permissions are in order.  Also preserve sticky bit and
 * toggle ACL bit off.
 *
 * @param accessEntries List<AclEntry> access ACL entries
 * @param existingPerm FsPermission existing permissions
 * @return FsPermission new permissions
 */
private static FsPermission createFsPermissionForMinimalAcl(
    List<AclEntry> accessEntries, FsPermission existingPerm) {
  return new FsPermission(accessEntries.get(0).getPermission(),
    accessEntries.get(1).getPermission(),
    accessEntries.get(2).getPermission(),
    existingPerm.getStickyBit());
}
 
源代码6 项目: big-c   文件: AclStorage.java
/**
 * Creates the new FsPermission for an inode that is receiving an extended
 * ACL, based on its access ACL entries.  For a correctly sorted ACL, the
 * first entry is the owner and the last 2 entries are the mask and other
 * entries respectively.  Also preserve sticky bit and toggle ACL bit on.
 * Note that this method intentionally copies the permissions of the mask
 * entry into the FsPermission group permissions.  This is consistent with the
 * POSIX ACLs model, which presents the mask as the permissions of the group
 * class.
 *
 * @param accessEntries List<AclEntry> access ACL entries
 * @param existingPerm FsPermission existing permissions
 * @return FsPermission new permissions
 */
private static FsPermission createFsPermissionForExtendedAcl(
    List<AclEntry> accessEntries, FsPermission existingPerm) {
  return new FsPermission(accessEntries.get(0).getPermission(),
    accessEntries.get(accessEntries.size() - 2).getPermission(),
    accessEntries.get(accessEntries.size() - 1).getPermission(),
    existingPerm.getStickyBit());
}
 
源代码7 项目: big-c   文件: AclStorage.java
/**
 * Creates the new FsPermission for an inode that is receiving a minimal ACL,
 * based on its access ACL entries.  For a correctly sorted ACL, the owner,
 * group and other permissions are in order.  Also preserve sticky bit and
 * toggle ACL bit off.
 *
 * @param accessEntries List<AclEntry> access ACL entries
 * @param existingPerm FsPermission existing permissions
 * @return FsPermission new permissions
 */
private static FsPermission createFsPermissionForMinimalAcl(
    List<AclEntry> accessEntries, FsPermission existingPerm) {
  return new FsPermission(accessEntries.get(0).getPermission(),
    accessEntries.get(1).getPermission(),
    accessEntries.get(2).getPermission(),
    existingPerm.getStickyBit());
}