本文整理汇总了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;未经允许,请勿转载。 |
请发表评论