本文整理了Java中org.onosproject.yang.compiler.datamodel.YangIdentity
类的一些代码示例,展示了YangIdentity
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。YangIdentity
类的具体详情如下:
包路径:org.onosproject.yang.compiler.datamodel.YangIdentity
类名称:YangIdentity
[英]Represents data model node to maintain information defined in YANG identity.
[中]表示数据模型节点,以维护标识中定义的信息。
代码示例来源:origin: org.onosproject/onos-yang-compiler-datamodel
/**
* Adds an identity to all the parent nodes.
*
* @param referredId referred identity
* @param baseId base identity
*/
private void addToAllParent(YangIdentity referredId, YangIdentity baseId) {
YangIdentity baseIdentity = baseId;
while (baseIdentity != null) {
List<YangIdentity> list = baseIdentity.getExtendList();
if (!list.contains(referredId)) {
baseIdentity.addToExtendList(referredId);
}
YangBase base = baseIdentity.getBaseNode();
baseIdentity = null;
if (base != null) {
baseIdentity = base.getReferredIdentity();
}
}
referredId.setAddedToAllParent(true);
}
}
代码示例来源:origin: org.onosproject/onos-yang-compiler-datamodel
private static YangNamespace getReferIdNamespace(YangIdentity refId, String v) {
String baseIdentity = refId.getYangSchemaNodeIdentifier().getName();
if (v.equals(baseIdentity)) {
return refId.getYangSchemaNodeIdentifier().getNameSpace();
}
for (YangIdentity i : refId.getExtendList()) {
String refIdentity = i.getYangSchemaNodeIdentifier().getName();
if (v.equals(refIdentity)) {
return i.getYangSchemaNodeIdentifier().getNameSpace();
}
}
throw new IllegalArgumentException("Invalid value of data: " + v);
}
代码示例来源:origin: org.onosproject/onos-yang-compiler-datamodel
/**
* Adds to the extend list for all the parent nodes with its complete tree.
*/
public void addToExtendList() {
while (!stack.empty()) {
YangIdentity baseId = stack.peek();
List<YangIdentity> exList = baseId.getExtendList();
if (exList != null && !exList.isEmpty()) {
for (YangIdentity id : exList) {
if (!id.isAddedToAllParent()) {
stack.push(id);
}
}
}
YangIdentity resolvingId = stack.pop();
addToAllParent(resolvingId, resolvingId.getBaseNode().getReferredIdentity());
}
}
代码示例来源:origin: org.onosproject/onos-yang-compiler-parser
identity.setName(identifier);
identity.setLineNumber(ctx.getStart().getLine());
identity.setCharPosition(ctx.getStart().getCharPositionInLine());
identity.setFileName(listener.getFileName());
Parsable curData = listener.getParsedDataStack().peek();
if (curData instanceof YangModule || curData instanceof YangSubModule) {
代码示例来源:origin: org.onosproject/onos-yang-compiler-linker
/**
* Returns if there is any unresolved base in identity.
*
* @param node module/submodule node
*/
private void addUnResolvedBaseToStack(YangNode node) {
YangIdentity curNode = (YangIdentity) node;
if (curNode.getBaseNode() != null) {
if (curNode.getBaseNode().getResolvableStatus() != RESOLVED) {
addEntityToStack((T) curNode.getBaseNode(), node);
}
}
}
代码示例来源:origin: org.onosproject/onos-yang-compiler-linker
private void addToIdentityExtendList(YangIdentity baseIdentity, YangIdentity
referredIdentity) {
YangIdentity referredId = referredIdentity;
referredId.addToExtendList(baseIdentity);
}
代码示例来源:origin: org.onosproject/onos-yang-compiler-datamodel
/**
* Creates a new identity handler.
*
* @param base YANG base
*/
public IdentityHandler(YangBase base) {
stack = new Stack<>();
YangIdentity id = base.getParentIdentity();
if (id.isAddedToAllParent()) {
return;
}
stack.push(id);
addToExtendList();
}
代码示例来源:origin: org.onosproject/onos-yang-compiler-parser
((YangIdentity) tmpData).setBaseNode(yangBase);
yangBase.setParentIdentity(((YangIdentity) tmpData));
代码示例来源:origin: org.onosproject/onos-yang-compiler-datamodel
@Override
public Object resolve()
throws DataModelException {
// Check if the derived info is present.
YangIdentity identity = getReferredIdentity();
if (identity == null) {
throw new DataModelException("Linker Error: Identity information is missing. " +
getName() + " in " +
getLineNumber() + " at " +
getCharPosition() +
" in " + getFileName() + "\"");
}
while (identity.getBaseNode() != null) {
if (identity.getBaseNode().getResolvableStatus() != RESOLVED) {
setResolvableStatus(INTRA_FILE_RESOLVED);
return null;
}
identity = identity.getBaseNode().getReferredIdentity();
}
return null;
}
内容来源于网络,如有侵权,请联系作者删除!