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

Java SnapshottableDirectoryStatus类代码示例

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

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



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

示例1: getSnapshottableDirListing

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
/**
 * Get the list of snapshottable directories that are owned 
 * by the current user. Return all the snapshottable directories if the 
 * current user is a super user.
 * @return The list of all the current snapshottable directories
 * @throws IOException
 */
public SnapshottableDirectoryStatus[] getSnapshottableDirListing()
    throws IOException {
  SnapshottableDirectoryStatus[] status = null;
  checkOperation(OperationCategory.READ);
  boolean success = false;
  readLock();
  try {
    checkOperation(OperationCategory.READ);
    status = FSDirSnapshotOp.getSnapshottableDirListing(dir, snapshotManager);
    success = true;
  } finally {
    readUnlock();
  }
  logAuditEvent(success, "listSnapshottableDirectory", null, null, null);
  return status;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:24,代码来源:FSNamesystem.java


示例2: convert

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
public static SnapshottableDirectoryStatus convert(
    SnapshottableDirectoryStatusProto sdirStatusProto) {
  if (sdirStatusProto == null) {
    return null;
  }
  final HdfsFileStatusProto status = sdirStatusProto.getDirStatus();
  return new SnapshottableDirectoryStatus(
      status.getModificationTime(),
      status.getAccessTime(),
      PBHelper.convert(status.getPermission()),
      status.getOwner(),
      status.getGroup(),
      status.getPath().toByteArray(),
      status.getFileId(),
      status.getChildrenNum(),
      sdirStatusProto.getSnapshotNumber(),
      sdirStatusProto.getSnapshotQuota(),
      sdirStatusProto.getParentFullpath().toByteArray());
}
 
开发者ID:naver,项目名称:hadoop,代码行数:20,代码来源:PBHelper.java


示例3: getSnapshottableDirListing

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
@Override
public GetSnapshottableDirListingResponseProto getSnapshottableDirListing(
    RpcController controller, GetSnapshottableDirListingRequestProto request)
    throws ServiceException {
  try {
    SnapshottableDirectoryStatus[] result = server
        .getSnapshottableDirListing();
    if (result != null) {
      return GetSnapshottableDirListingResponseProto.newBuilder().
          setSnapshottableDirList(PBHelper.convert(result)).build();
    } else {
      return NULL_GET_SNAPSHOTTABLE_DIR_LISTING_RESPONSE;
    }
  } catch (IOException e) {
    throw new ServiceException(e);
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:18,代码来源:ClientNamenodeProtocolServerSideTranslatorPB.java


示例4: getSnapshottableDirListing

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
@Override
public SnapshottableDirectoryStatus[] getSnapshottableDirListing()
    throws IOException {
  GetSnapshottableDirListingRequestProto req = 
      GetSnapshottableDirListingRequestProto.newBuilder().build();
  try {
    GetSnapshottableDirListingResponseProto result = rpcProxy
        .getSnapshottableDirListing(null, req);
    
    if (result.hasSnapshottableDirList()) {
      return PBHelper.convert(result.getSnapshottableDirList());
    }
    return null;
  } catch (ServiceException e) {
    throw ProtobufHelper.getRemoteException(e);
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:18,代码来源:ClientNamenodeProtocolTranslatorPB.java


示例5: convert

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
public static SnapshottableDirectoryStatus[] convert(
    SnapshottableDirectoryListingProto sdlp) {
  if (sdlp == null)
    return null;
  List<SnapshottableDirectoryStatusProto> list = sdlp
      .getSnapshottableDirListingList();
  if (list.isEmpty()) {
    return new SnapshottableDirectoryStatus[0];
  } else {
    SnapshottableDirectoryStatus[] result =
        new SnapshottableDirectoryStatus[list.size()];
    for (int i = 0; i < list.size(); i++) {
      result[i] = convert(list.get(i));
    }
    return result;
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:18,代码来源:PBHelperClient.java


示例6: getSnapshottableDirListing

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
@Override
public SnapshottableDirectoryStatus[] getSnapshottableDirListing()
    throws IOException {
  GetSnapshottableDirListingRequestProto req =
      GetSnapshottableDirListingRequestProto.newBuilder().build();
  try {
    GetSnapshottableDirListingResponseProto result = rpcProxy
        .getSnapshottableDirListing(null, req);

    if (result.hasSnapshottableDirList()) {
      return PBHelperClient.convert(result.getSnapshottableDirList());
    }
    return null;
  } catch (ServiceException e) {
    throw ProtobufHelper.getRemoteException(e);
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:18,代码来源:ClientNamenodeProtocolTranslatorPB.java


示例7: getSnapshottableDirListing

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
@Override
public GetSnapshottableDirListingResponseProto getSnapshottableDirListing(
    RpcController controller, GetSnapshottableDirListingRequestProto request)
    throws ServiceException {
  try {
    SnapshottableDirectoryStatus[] result = server
        .getSnapshottableDirListing();
    if (result != null) {
      return GetSnapshottableDirListingResponseProto.newBuilder().
          setSnapshottableDirList(PBHelperClient.convert(result)).build();
    } else {
      return NULL_GET_SNAPSHOTTABLE_DIR_LISTING_RESPONSE;
    }
  } catch (IOException e) {
    throw new ServiceException(e);
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:18,代码来源:ClientNamenodeProtocolServerSideTranslatorPB.java


示例8: getSnapshottableDirListing

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
/**
 * Get the list of snapshottable directories that are owned 
 * by the current user. Return all the snapshottable directories if the 
 * current user is a super user.
 * @return The list of all the current snapshottable directories
 * @throws IOException
 */
public SnapshottableDirectoryStatus[] getSnapshottableDirListing()
    throws IOException {
  SnapshottableDirectoryStatus[] status = null;
  checkOperation(OperationCategory.READ);
  final FSPermissionChecker checker = getPermissionChecker();
  readLock();
  try {
    checkOperation(OperationCategory.READ);
    final String user = checker.isSuperUser()? null : checker.getUser();
    status = snapshotManager.getSnapshottableDirListing(user);
  } finally {
    readUnlock();
  }
  if (auditLog.isInfoEnabled() && isExternalInvocation()) {
    logAuditEvent(true, "listSnapshottableDirectory", null, null, null);
  }
  return status;
}
 
开发者ID:Nextzero,项目名称:hadoop-2.6.0-cdh5.4.3,代码行数:26,代码来源:FSNamesystem.java


示例9: getSnapshottableDirListing

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
/**
 * Get the list of snapshottable directories that are owned 
 * by the current user. Return all the snapshottable directories if the 
 * current user is a super user.
 * @return The list of all the current snapshottable directories
 * @throws IOException
 */
public SnapshottableDirectoryStatus[] getSnapshottableDirListing()
    throws IOException {
  SnapshottableDirectoryStatus[] status = null;
  readLock();
  try {
    checkOperation(OperationCategory.READ);
    FSPermissionChecker checker = getPermissionChecker();
    final String user = checker.isSuperUser()? null : checker.getUser();
    status = snapshotManager.getSnapshottableDirListing(user);
  } finally {
    readUnlock();
  }
  if (auditLog.isInfoEnabled() && isExternalInvocation()) {
    logAuditEvent(true, "listSnapshottableDirectory", null, null, null);
  }
  return status;
}
 
开发者ID:ict-carch,项目名称:hadoop-plus,代码行数:25,代码来源:FSNamesystem.java


示例10: getSnapshottableDirListing

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
/**
 * List all the snapshottable directories that are owned by the current user.
 * @param userName Current user name.
 * @return Snapshottable directories that are owned by the current user,
 *         represented as an array of {@link SnapshottableDirectoryStatus}. If
 *         {@code userName} is null, return all the snapshottable dirs.
 */
public SnapshottableDirectoryStatus[] getSnapshottableDirListing(
    String userName) {
  if (snapshottables.isEmpty()) {
    return null;
  }
  
  List<SnapshottableDirectoryStatus> statusList = 
      new ArrayList<SnapshottableDirectoryStatus>();
  for (INodeDirectorySnapshottable dir : snapshottables.values()) {
    if (userName == null || userName.equals(dir.getUserName())) {
      SnapshottableDirectoryStatus status = new SnapshottableDirectoryStatus(
          dir.getModificationTime(), dir.getAccessTime(),
          dir.getFsPermission(), dir.getUserName(), dir.getGroupName(),
          dir.getLocalNameBytes(), dir.getId(), dir.getChildrenNum(null),
          dir.getNumSnapshots(),
          dir.getSnapshotQuota(), dir.getParent() == null ? 
              DFSUtil.EMPTY_BYTES : 
              DFSUtil.string2Bytes(dir.getParent().getFullPathName()));
      statusList.add(status);
    }
  }
  Collections.sort(statusList, SnapshottableDirectoryStatus.COMPARATOR);
  return statusList.toArray(
      new SnapshottableDirectoryStatus[statusList.size()]);
}
 
开发者ID:ict-carch,项目名称:hadoop-plus,代码行数:33,代码来源:SnapshotManager.java


示例11: checkSnapshottableDirs

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
public static void checkSnapshottableDirs(Volume[] volumes) throws IOException {
	for (Volume v : volumes) {
		LOG.debug("Checking to see if Volume {} has snapshots enabled", v.getBasePath());
		FileSystem fs = v.getFileSystem();
		if (fs instanceof DistributedFileSystem) {
			DistributedFileSystem dfs = (DistributedFileSystem) fs;
			SnapshottableDirectoryStatus[] snaps = dfs.getSnapshottableDirListing();
			boolean found = false;
			if (null != snaps) {
				for (SnapshottableDirectoryStatus snap : snaps) {
					LOG.trace("Snapshots enabled for directory: {}", snap.getFullPath());
					if (v.getBasePath().equals(snap.getFullPath().toString())) {
						found = true;
						LOG.debug("Snapshots enabled for Volume {}", v);
						break;
					}
				}
			}
			if (!found) {
				throw new RuntimeException(v.toString() + " is not configured for snapshots.");
			}
		} else {
			throw new RuntimeException("Configured Accumulo volume is not an HDFS DistributedFileSystem.");
		}
	}
}
 
开发者ID:dlmarion,项目名称:raccovery,代码行数:27,代码来源:Utils.java


示例12: getSnapshottableDirListing

import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; //导入依赖的package包/类
/**
 * Get the list of snapshottable directories that are owned 
 * by the current user. Return all the snapshottable directories if the 
 * current user is a super user.
 * @return The list of all the current snapshottable directories
 * @throws IOException
 */
public SnapshottableDirectoryStatus[] getSnapshottableDirListing()
    throws IOException {
  SnapshottableDirectoryStatus[] status = null;
  final FSPermissionChecker checker = getPermissionChecker();
  readLock();
  try {
    checkOperation(OperationCategory.READ);
    final String user = checker.isSuperUser()? null : checker.getUser();
    status = snapshotManager.getSnapshottableDirListing(user);
  } finally {
    readUnlock();
  }
  if (auditLog.isInfoEnabled() && isExternalInvocation()) {
    logAuditEvent(true, "listSnapshottableDirectory", null, null, null);
  }
  return status;
}
 
开发者ID:chendave,项目名称:hadoop-TCP,代码行数:25,代码来源:FSNamesystem.java



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
Java DefaultFailoverProxyProvider类代码示例发布时间:2022-05-22
下一篇:
Java Visitor类代码示例发布时间: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