本文整理汇总了Java中org.apache.hadoop.hdfs.server.namenode.INodeReference.WithName类的典型用法代码示例。如果您正苦于以下问题:Java WithName类的具体用法?Java WithName怎么用?Java WithName使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
WithName类属于org.apache.hadoop.hdfs.server.namenode.INodeReference包,在下文中一共展示了WithName类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: loadINodeReference
import org.apache.hadoop.hdfs.server.namenode.INodeReference.WithName; //导入依赖的package包/类
private INodeReference loadINodeReference(
INodeReferenceSection.INodeReference r) throws IOException {
long referredId = r.getReferredId();
INode referred = fsDir.getInode(referredId);
WithCount withCount = (WithCount) referred.getParentReference();
if (withCount == null) {
withCount = new INodeReference.WithCount(null, referred);
}
final INodeReference ref;
if (r.hasDstSnapshotId()) { // DstReference
ref = new INodeReference.DstReference(null, withCount,
r.getDstSnapshotId());
} else {
ref = new INodeReference.WithName(null, withCount, r.getName()
.toByteArray(), r.getLastSnapshotId());
}
return ref;
}
开发者ID:naver,项目名称:hadoop,代码行数:19,代码来源:FSImageFormatPBSnapshot.java
示例2: findRenameTargetPath
import org.apache.hadoop.hdfs.server.namenode.INodeReference.WithName; //导入依赖的package包/类
/**
* We just found a deleted WithName node as the source of a rename operation.
* However, we should include it in our snapshot diff report as rename only
* if the rename target is also under the same snapshottable directory.
*/
private byte[][] findRenameTargetPath(final INodeDirectory snapshotRoot,
INodeReference.WithName wn, final int snapshotId) {
INode inode = wn.getReferredINode();
final LinkedList<byte[]> ancestors = Lists.newLinkedList();
while (inode != null) {
if (inode == snapshotRoot) {
return ancestors.toArray(new byte[ancestors.size()][]);
}
if (inode instanceof INodeReference.WithCount) {
inode = ((WithCount) inode).getParentRef(snapshotId);
} else {
INode parent = inode.getParentReference() != null ? inode
.getParentReference() : inode.getParent();
if (parent != null && parent instanceof INodeDirectory) {
int sid = parent.asDirectory().searchChild(inode);
if (sid < snapshotId) {
return null;
}
}
if (!(parent instanceof WithCount)) {
ancestors.addFirst(inode.getLocalNameBytes());
}
inode = parent;
}
}
return null;
}
开发者ID:naver,项目名称:hadoop,代码行数:33,代码来源:DirectorySnapshottableFeature.java
示例3: buildINodeReference
import org.apache.hadoop.hdfs.server.namenode.INodeReference.WithName; //导入依赖的package包/类
private INodeReferenceSection.INodeReference.Builder buildINodeReference(
INodeReference ref) throws IOException {
INodeReferenceSection.INodeReference.Builder rb =
INodeReferenceSection.INodeReference.newBuilder().
setReferredId(ref.getId());
if (ref instanceof WithName) {
rb.setLastSnapshotId(((WithName) ref).getLastSnapshotId()).setName(
ByteString.copyFrom(ref.getLocalNameBytes()));
} else if (ref instanceof DstReference) {
rb.setDstSnapshotId(ref.getDstSnapshotId());
}
return rb;
}
开发者ID:naver,项目名称:hadoop,代码行数:14,代码来源:FSImageFormatPBSnapshot.java
示例4: buildINodeReference
import org.apache.hadoop.hdfs.server.namenode.INodeReference.WithName; //导入依赖的package包/类
private INodeReferenceSection.INodeReference.Builder buildINodeReference(
INodeReference ref) throws IOException {
INodeReferenceSection.INodeReference.Builder rb =
INodeReferenceSection.INodeReference.newBuilder().
setReferredId(ref.getId());
if (ref instanceof WithName) {
rb.setLastSnapshotId(((WithName) ref).getLastSnapshotId()).setName(
ByteString.copyFrom(ref.getLocalNameBytes()));
} else if (ref instanceof DstReference) {
rb.setDstSnapshotId(((DstReference) ref).getDstSnapshotId());
}
return rb;
}
开发者ID:Seagate,项目名称:hadoop-on-lustre2,代码行数:14,代码来源:FSImageFormatPBSnapshot.java
注:本文中的org.apache.hadoop.hdfs.server.namenode.INodeReference.WithName类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论