• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java EncryptionZone类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.apache.hadoop.hdfs.protocol.EncryptionZone的典型用法代码示例。如果您正苦于以下问题:Java EncryptionZone类的具体用法?Java EncryptionZone怎么用?Java EncryptionZone使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



EncryptionZone类属于org.apache.hadoop.hdfs.protocol包,在下文中一共展示了EncryptionZone类的18个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: listEncryptionZones

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
BatchedListEntries<EncryptionZone> listEncryptionZones(long prevId)
    throws IOException {
  boolean success = false;
  checkSuperuserPrivilege();
  checkOperation(OperationCategory.READ);
  readLock();
  try {
    checkSuperuserPrivilege();
    checkOperation(OperationCategory.READ);
    final BatchedListEntries<EncryptionZone> ret =
        dir.listEncryptionZones(prevId);
    success = true;
    return ret;
  } finally {
    readUnlock();
    logAuditEvent(success, "listEncryptionZones", null);
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:19,代码来源:FSNamesystem.java


示例2: getEZForPath

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
@Override
public GetEZForPathResponseProto getEZForPath(
    RpcController controller, GetEZForPathRequestProto req)
    throws ServiceException {
  try {
    GetEZForPathResponseProto.Builder builder =
        GetEZForPathResponseProto.newBuilder();
    final EncryptionZone ret = server.getEZForPath(req.getSrc());
    if (ret != null) {
      builder.setZone(PBHelper.convert(ret));
    }
    return builder.build();
  } catch (IOException e) {
    throw new ServiceException(e);
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:17,代码来源:ClientNamenodeProtocolServerSideTranslatorPB.java


示例3: listEncryptionZones

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
@Override
public ListEncryptionZonesResponseProto listEncryptionZones(
  RpcController controller, ListEncryptionZonesRequestProto req)
  throws ServiceException {
  try {
    BatchedEntries<EncryptionZone> entries = server
        .listEncryptionZones(req.getId());
    ListEncryptionZonesResponseProto.Builder builder =
        ListEncryptionZonesResponseProto.newBuilder();
    builder.setHasMore(entries.hasMore());
    for (int i=0; i<entries.size(); i++) {
      builder.addZones(PBHelper.convert(entries.get(i)));
    }
    return builder.build();
  } catch (IOException e) {
    throw new ServiceException(e);
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:19,代码来源:ClientNamenodeProtocolServerSideTranslatorPB.java


示例4: getEZForPath

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
@Override
public EncryptionZone getEZForPath(String src)
    throws IOException {
  final GetEZForPathRequestProto.Builder builder =
      GetEZForPathRequestProto.newBuilder();
  builder.setSrc(src);
  final GetEZForPathRequestProto req = builder.build();
  try {
    final EncryptionZonesProtos.GetEZForPathResponseProto response =
        rpcProxy.getEZForPath(null, req);
    if (response.hasZone()) {
      return PBHelper.convert(response.getZone());
    } else {
      return null;
    }
  } catch (ServiceException e) {
    throw ProtobufHelper.getRemoteException(e);
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:20,代码来源:ClientNamenodeProtocolTranslatorPB.java


示例5: listEncryptionZones

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
@Override
public BatchedEntries<EncryptionZone> listEncryptionZones(long id)
    throws IOException {
  final ListEncryptionZonesRequestProto req =
    ListEncryptionZonesRequestProto.newBuilder()
        .setId(id)
        .build();
  try {
    EncryptionZonesProtos.ListEncryptionZonesResponseProto response =
        rpcProxy.listEncryptionZones(null, req);
    List<EncryptionZone> elements =
        Lists.newArrayListWithCapacity(response.getZonesCount());
    for (EncryptionZoneProto p : response.getZonesList()) {
      elements.add(PBHelper.convert(p));
    }
    return new BatchedListEntries<EncryptionZone>(elements,
        response.getHasMore());
  } catch (ServiceException e) {
    throw ProtobufHelper.getRemoteException(e);
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:22,代码来源:ClientNamenodeProtocolTranslatorPB.java


示例6: run

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
@Override
public int run(Configuration conf, List<String> args) throws IOException {
  if (!args.isEmpty()) {
    System.err.println("Can't understand argument: " + args.get(0));
    return 1;
  }

  final DistributedFileSystem dfs = AdminHelper.getDFS(conf);
  try {
    final TableListing listing = new TableListing.Builder()
      .addField("").addField("", true)
      .wrapWidth(AdminHelper.MAX_LINE_WIDTH).hideHeaders().build();
    final RemoteIterator<EncryptionZone> it = dfs.listEncryptionZones();
    while (it.hasNext()) {
      EncryptionZone ez = it.next();
      listing.addRow(ez.getPath(), ez.getKeyName());
    }
    System.out.println(listing.toString());
  } catch (IOException e) {
    System.err.println(prettifyException(e));
    return 2;
  }

  return 0;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:26,代码来源:CryptoAdmin.java


示例7: assertZonePresent

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
/**
 * Checks that an encryption zone with the specified keyName and path (if not
 * null) is present.
 *
 * @throws IOException if a matching zone could not be found
 */
public void assertZonePresent(String keyName, String path) throws IOException {
  final RemoteIterator<EncryptionZone> it = dfsAdmin.listEncryptionZones();
  boolean match = false;
  while (it.hasNext()) {
    EncryptionZone zone = it.next();
    boolean matchKey = (keyName == null);
    boolean matchPath = (path == null);
    if (keyName != null && zone.getKeyName().equals(keyName)) {
      matchKey = true;
    }
    if (path != null && zone.getPath().equals(path)) {
      matchPath = true;
    }
    if (matchKey && matchPath) {
      match = true;
      break;
    }
  }
  assertTrue("Did not find expected encryption zone with keyName " + keyName +
          " path " + path, match
  );
}
 
开发者ID:naver,项目名称:hadoop,代码行数:29,代码来源:TestEncryptionZones.java


示例8: getTrashRoot

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
/**
 * Get the root directory of Trash for a path in HDFS.
 * 1. File in encryption zone returns /ez1/.Trash/username
 * 2. File not in encryption zone returns /users/username/.Trash
 * Caller appends either Current or checkpoint timestamp for trash destination
 * @param path the trash root of the path to be determined.
 * @return trash root
 * @throws IOException
 */
@Override
public Path getTrashRoot(Path path) throws IOException {
  if ((path == null) || !dfs.isHDFSEncryptionEnabled()) {
    return super.getTrashRoot(path);
  }

  String absSrc = path.toUri().getPath();
  EncryptionZone ez = dfs.getEZForPath(absSrc);
  if ((ez != null) && !ez.getPath().equals(absSrc)) {
    return this.makeQualified(
        new Path(ez.getPath() + "/" + FileSystem.TRASH_PREFIX +
            dfs.ugi.getShortUserName()));
  } else {
    return super.getTrashRoot(path);
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:26,代码来源:DistributedFileSystem.java


示例9: getTrashRoots

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
/**
 * Get all the trash roots of HDFS for current user or for all the users.
 * 1. File deleted from non-encryption zone /user/username/.Trash
 * 2. File deleted from encryption zones
 *    e.g., ez1 rooted at /ez1 has its trash root at /ez1/.Trash/$USER
 * @allUsers return trashRoots of all users if true, used by emptier
 * @return trash roots of HDFS
 * @throws IOException
 */
@Override
public Collection<FileStatus> getTrashRoots(boolean allUsers) throws IOException {
  List<FileStatus> ret = new ArrayList<FileStatus>();
  // Get normal trash roots
  ret.addAll(super.getTrashRoots(allUsers));

  // Get EZ Trash roots
  final RemoteIterator<EncryptionZone> it = dfs.listEncryptionZones();
  while (it.hasNext()) {
    Path ezTrashRoot = new Path(it.next().getPath(), FileSystem.TRASH_PREFIX);
    if (allUsers) {
      for (FileStatus candidate : listStatus(ezTrashRoot)) {
        if (exists(candidate.getPath())) {
          ret.add(candidate);
        }
      }
    } else {
      Path userTrash = new Path(ezTrashRoot, System.getProperty("user.name"));
      if (exists(userTrash)) {
        ret.add(getFileStatus(userTrash));
      }
    }
  }
  return ret;
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:35,代码来源:DistributedFileSystem.java


示例10: getEZForPath

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
@Override
public EncryptionZone getEZForPath(String src) throws IOException {
  final GetEZForPathRequestProto.Builder builder =
      GetEZForPathRequestProto.newBuilder();
  builder.setSrc(src);
  final GetEZForPathRequestProto req = builder.build();
  try {
    final EncryptionZonesProtos.GetEZForPathResponseProto response =
        rpcProxy.getEZForPath(null, req);
    if (response.hasZone()) {
      return PBHelperClient.convert(response.getZone());
    } else {
      return null;
    }
  } catch (ServiceException e) {
    throw ProtobufHelper.getRemoteException(e);
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:19,代码来源:ClientNamenodeProtocolTranslatorPB.java


示例11: listEncryptionZones

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
@Override
public BatchedEntries<EncryptionZone> listEncryptionZones(long id)
    throws IOException {
  final ListEncryptionZonesRequestProto req =
      ListEncryptionZonesRequestProto.newBuilder()
          .setId(id)
          .build();
  try {
    EncryptionZonesProtos.ListEncryptionZonesResponseProto response =
        rpcProxy.listEncryptionZones(null, req);
    List<EncryptionZone> elements =
        Lists.newArrayListWithCapacity(response.getZonesCount());
    for (EncryptionZoneProto p : response.getZonesList()) {
      elements.add(PBHelperClient.convert(p));
    }
    return new BatchedListEntries<>(elements, response.getHasMore());
  } catch (ServiceException e) {
    throw ProtobufHelper.getRemoteException(e);
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:21,代码来源:ClientNamenodeProtocolTranslatorPB.java


示例12: getEZForPath

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
/**
 * Get the encryption zone for the specified path.
 *
 * @param srcArg the path of a file or directory to get the EZ for.
 * @return the EZ of the of the path or null if none.
 * @throws AccessControlException  if the caller is not the superuser.
 * @throws UnresolvedLinkException if the path can't be resolved.
 */
EncryptionZone getEZForPath(final String srcArg)
  throws AccessControlException, UnresolvedLinkException, IOException {
  HdfsFileStatus resultingStat = null;
  boolean success = false;
  final FSPermissionChecker pc = getPermissionChecker();
  checkOperation(OperationCategory.READ);
  readLock();
  try {
    checkOperation(OperationCategory.READ);
    Entry<EncryptionZone, HdfsFileStatus> ezForPath = FSDirEncryptionZoneOp
        .getEZForPath(dir, srcArg, pc);
    success = true;
    resultingStat = ezForPath.getValue();
    return ezForPath.getKey();
  } finally {
    readUnlock();
    logAuditEvent(success, "getEZForPath", srcArg, null, resultingStat);
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:28,代码来源:FSNamesystem.java


示例13: listEncryptionZones

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
BatchedListEntries<EncryptionZone> listEncryptionZones(long prevId)
    throws IOException {
  boolean success = false;
  checkSuperuserPrivilege();
  checkOperation(OperationCategory.READ);
  readLock();
  try {
    checkSuperuserPrivilege();
    checkOperation(OperationCategory.READ);
    final BatchedListEntries<EncryptionZone> ret =
        FSDirEncryptionZoneOp.listEncryptionZones(dir, prevId);
    success = true;
    return ret;
  } finally {
    readUnlock();
    logAuditEvent(success, "listEncryptionZones", null);
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:19,代码来源:FSNamesystem.java


示例14: getEZForPath

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
/**
 * Get the encryption zone for the specified path.
 *
 * @param fsd fsdirectory
 * @param srcArg the path of a file or directory to get the EZ for
 * @param pc permission checker to check fs permission
 * @return the EZ with file status.
 */
static Map.Entry<EncryptionZone, HdfsFileStatus> getEZForPath(
    final FSDirectory fsd, final String srcArg, final FSPermissionChecker pc)
    throws IOException {
  final byte[][] pathComponents = FSDirectory
      .getPathComponentsForReservedPath(srcArg);
  final String src;
  final INodesInPath iip;
  final EncryptionZone ret;
  fsd.readLock();
  try {
    src = fsd.resolvePath(pc, srcArg, pathComponents);
    iip = fsd.getINodesInPath(src, true);
    if (iip.getLastINode() == null) {
      throw new FileNotFoundException("Path not found: " + iip.getPath());
    }
    if (fsd.isPermissionEnabled()) {
      fsd.checkPathAccess(pc, iip, FsAction.READ);
    }
    ret = fsd.ezManager.getEZINodeForPath(iip);
  } finally {
    fsd.readUnlock();
  }
  HdfsFileStatus auditStat = fsd.getAuditFileInfo(iip);
  return new AbstractMap.SimpleImmutableEntry<>(ret, auditStat);
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:34,代码来源:FSDirEncryptionZoneOp.java


示例15: getEncryptionKeyInfo

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
static EncryptionKeyInfo getEncryptionKeyInfo(FSNamesystem fsn,
    FSPermissionChecker pc, String src,
    CryptoProtocolVersion[] supportedVersions)
    throws IOException {
  byte[][] pathComponents = FSDirectory.getPathComponentsForReservedPath(src);
  FSDirectory fsd = fsn.getFSDirectory();
  src = fsd.resolvePath(pc, src, pathComponents);
  INodesInPath iip = fsd.getINodesInPath4Write(src);
  // Nothing to do if the path is not within an EZ
  final EncryptionZone zone = FSDirEncryptionZoneOp.getEZForPath(fsd, iip);
  if (zone == null) {
    return null;
  }
  CryptoProtocolVersion protocolVersion = fsn.chooseProtocolVersion(
      zone, supportedVersions);
  CipherSuite suite = zone.getSuite();
  String ezKeyName = zone.getKeyName();

  Preconditions.checkNotNull(protocolVersion);
  Preconditions.checkNotNull(suite);
  Preconditions.checkArgument(!suite.equals(CipherSuite.UNKNOWN),
                              "Chose an UNKNOWN CipherSuite!");
  Preconditions.checkNotNull(ezKeyName);
  return new EncryptionKeyInfo(protocolVersion, suite, ezKeyName);
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:26,代码来源:FSDirWriteFileOp.java


示例16: getEZForPath

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
@Override
public GetEZForPathResponseProto getEZForPath(
    RpcController controller, GetEZForPathRequestProto req)
    throws ServiceException {
  try {
    GetEZForPathResponseProto.Builder builder =
        GetEZForPathResponseProto.newBuilder();
    final EncryptionZone ret = server.getEZForPath(req.getSrc());
    if (ret != null) {
      builder.setZone(PBHelperClient.convert(ret));
    }
    return builder.build();
  } catch (IOException e) {
    throw new ServiceException(e);
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:17,代码来源:ClientNamenodeProtocolServerSideTranslatorPB.java


示例17: listEncryptionZones

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
@Override
public ListEncryptionZonesResponseProto listEncryptionZones(
  RpcController controller, ListEncryptionZonesRequestProto req)
  throws ServiceException {
  try {
    BatchedEntries<EncryptionZone> entries = server
        .listEncryptionZones(req.getId());
    ListEncryptionZonesResponseProto.Builder builder =
        ListEncryptionZonesResponseProto.newBuilder();
    builder.setHasMore(entries.hasMore());
    for (int i=0; i<entries.size(); i++) {
      builder.addZones(PBHelperClient.convert(entries.get(i)));
    }
    return builder.build();
  } catch (IOException e) {
    throw new ServiceException(e);
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:19,代码来源:ClientNamenodeProtocolServerSideTranslatorPB.java


示例18: run

import org.apache.hadoop.hdfs.protocol.EncryptionZone; //导入依赖的package包/类
@Override
public int run(Configuration conf, List<String> args) throws IOException {
  if (!args.isEmpty()) {
    System.err.println("Can't understand argument: " + args.get(0));
    return 1;
  }

  final DistributedFileSystem dfs = getDFS(conf);
  try {
    final TableListing listing = new TableListing.Builder()
      .addField("").addField("", true)
      .wrapWidth(MAX_LINE_WIDTH).hideHeaders().build();
    final RemoteIterator<EncryptionZone> it = dfs.listEncryptionZones();
    while (it.hasNext()) {
      EncryptionZone ez = it.next();
      listing.addRow(ez.getPath(), ez.getKeyName());
    }
    System.out.println(listing.toString());
  } catch (IOException e) {
    System.err.println(prettifyException(e));
    return 2;
  }

  return 0;
}
 
开发者ID:Nextzero,项目名称:hadoop-2.6.0-cdh5.4.3,代码行数:26,代码来源:CryptoAdmin.java



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java InferTypes类代码示例发布时间:2022-05-22
下一篇:
Java JsonArray类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap