当前位置: 首页>>代码示例>>Java>>正文


Java AclStatus.Builder方法代码示例

本文整理汇总了Java中org.apache.hadoop.fs.permission.AclStatus.Builder方法的典型用法代码示例。如果您正苦于以下问题:Java AclStatus.Builder方法的具体用法?Java AclStatus.Builder怎么用?Java AclStatus.Builder使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.hadoop.fs.permission.AclStatus的用法示例。


在下文中一共展示了AclStatus.Builder方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testToAclStatus

import org.apache.hadoop.fs.permission.AclStatus; //导入方法依赖的package包/类
@Test
public void testToAclStatus() throws IOException {
  String jsonString =
      "{\"AclStatus\":{\"entries\":[\"user::rwx\",\"user:user1:rw-\",\"group::rw-\",\"other::r-x\"],\"group\":\"supergroup\",\"owner\":\"testuser\",\"stickyBit\":false}}";
  ObjectReader reader = new ObjectMapper().reader(Map.class);
  Map<?, ?> json = reader.readValue(jsonString);

  List<AclEntry> aclSpec =
      Lists.newArrayList(aclEntry(ACCESS, USER, ALL),
          aclEntry(ACCESS, USER, "user1", READ_WRITE),
          aclEntry(ACCESS, GROUP, READ_WRITE),
          aclEntry(ACCESS, OTHER, READ_EXECUTE));

  AclStatus.Builder aclStatusBuilder = new AclStatus.Builder();
  aclStatusBuilder.owner("testuser");
  aclStatusBuilder.group("supergroup");
  aclStatusBuilder.addEntries(aclSpec);
  aclStatusBuilder.stickyBit(false);

  Assert.assertEquals("Should be equal", aclStatusBuilder.build(),
      JsonUtil.toAclStatus(json));
}
 
开发者ID:naver,项目名称:hadoop,代码行数:23,代码来源:TestJsonUtil.java

示例2: testToJsonFromAclStatus

import org.apache.hadoop.fs.permission.AclStatus; //导入方法依赖的package包/类
@Test
public void testToJsonFromAclStatus() {
  String jsonString =
      "{\"AclStatus\":{\"entries\":[\"user:user1:rwx\",\"group::rw-\"],\"group\":\"supergroup\",\"owner\":\"testuser\",\"stickyBit\":false}}";
  AclStatus.Builder aclStatusBuilder = new AclStatus.Builder();
  aclStatusBuilder.owner("testuser");
  aclStatusBuilder.group("supergroup");
  aclStatusBuilder.stickyBit(false);

  List<AclEntry> aclSpec =
      Lists.newArrayList(aclEntry(ACCESS, USER,"user1", ALL),
          aclEntry(ACCESS, GROUP, READ_WRITE));

  aclStatusBuilder.addEntries(aclSpec);
  Assert.assertEquals(jsonString,
      JsonUtil.toJsonString(aclStatusBuilder.build()));

}
 
开发者ID:naver,项目名称:hadoop,代码行数:19,代码来源:TestJsonUtil.java

示例3: createAclStatus

import org.apache.hadoop.fs.permission.AclStatus; //导入方法依赖的package包/类
/**
 * Convert the given JSON object into an AclStatus
 * @param json Input JSON representing the ACLs
 * @return Resulting AclStatus
 */
private AclStatus createAclStatus(JSONObject json) {
  AclStatus.Builder aclStatusBuilder = new AclStatus.Builder()
          .owner((String) json.get(OWNER_JSON))
          .group((String) json.get(GROUP_JSON))
          .stickyBit((Boolean) json.get(ACL_STICKY_BIT_JSON));
  JSONArray entries = (JSONArray) json.get(ACL_ENTRIES_JSON);
  for ( Object e : entries ) {
    aclStatusBuilder.addEntry(AclEntry.parseAclEntry(e.toString(), true));
  }
  return aclStatusBuilder.build();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:17,代码来源:HttpFSFileSystem.java

示例4: toAclStatus

import org.apache.hadoop.fs.permission.AclStatus; //导入方法依赖的package包/类
/** Convert a Json map to a AclStatus object. */
public static AclStatus toAclStatus(final Map<?, ?> json) {
  if (json == null) {
    return null;
  }

  final Map<?, ?> m = (Map<?, ?>) json.get(AclStatus.class.getSimpleName());

  AclStatus.Builder aclStatusBuilder = new AclStatus.Builder();
  aclStatusBuilder.owner((String) m.get("owner"));
  aclStatusBuilder.group((String) m.get("group"));
  aclStatusBuilder.stickyBit((Boolean) m.get("stickyBit"));
  String permString = (String) m.get("permission");
  if (permString != null) {
    final FsPermission permission = toFsPermission(permString,
        (Boolean) m.get("aclBit"), (Boolean) m.get("encBit"));
    aclStatusBuilder.setPermission(permission);
  }
  final List<?> entries = (List<?>) m.get("entries");

  List<AclEntry> aclEntryList = new ArrayList<AclEntry>();
  for (Object entry : entries) {
    AclEntry aclEntry = AclEntry.parseAclEntry((String) entry, true);
    aclEntryList.add(aclEntry);
  }
  aclStatusBuilder.addEntries(aclEntryList);
  return aclStatusBuilder.build();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:29,代码来源:JsonUtil.java

示例5: convert

import org.apache.hadoop.fs.permission.AclStatus; //导入方法依赖的package包/类
public static AclStatus convert(GetAclStatusResponseProto e) {
  AclStatusProto r = e.getResult();
  AclStatus.Builder builder = new AclStatus.Builder();
  builder.owner(r.getOwner()).group(r.getGroup()).stickyBit(r.getSticky())
      .addEntries(convertAclEntry(r.getEntriesList()));
  if (r.hasPermission()) {
    builder.setPermission(convert(r.getPermission()));
  }
  return builder.build();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:11,代码来源:PBHelper.java

示例6: getAclStatus

import org.apache.hadoop.fs.permission.AclStatus; //导入方法依赖的package包/类
/**
 * Return the JSON formatted ACL status of the specified file.
 * @param path a path specifies a file
 * @return JSON formatted AclStatus
 * @throws IOException if failed to serialize fileStatus to JSON.
 */
String getAclStatus(String path) throws IOException {
  PermissionStatus p = getPermissionStatus(path);
  List<AclEntry> aclEntryList = getAclEntryList(path);
  FsPermission permission = p.getPermission();
  AclStatus.Builder builder = new AclStatus.Builder();
  builder.owner(p.getUserName()).group(p.getGroupName())
      .addEntries(aclEntryList).setPermission(permission)
      .stickyBit(permission.getStickyBit());
  AclStatus aclStatus = builder.build();
  return JsonUtil.toJsonString(aclStatus);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:18,代码来源:FSImageLoader.java


注:本文中的org.apache.hadoop.fs.permission.AclStatus.Builder方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。