gpt4 book ai didi

org.onosproject.yangutils.datamodel.YangModule类的使用及代码示例

转载 作者:知者 更新时间:2024-03-20 22:02:48 25 4
gpt4 key购买 nike

本文整理了Java中org.onosproject.yangutils.datamodel.YangModule类的一些代码示例,展示了YangModule类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。YangModule类的具体详情如下:
包路径:org.onosproject.yangutils.datamodel.YangModule
类名称:YangModule

YangModule介绍

[英]Represents data model node to maintain information defined in YANG module.
[中]表示数据模型节点,以维护模块中定义的信息。

代码示例

代码示例来源:origin: org.onosproject/onos-yang-datamodel

@Override
public void addReferencesToImportList(Set<YangNode> yangNodeSet)
    throws DataModelException {
  // Run through the imported list to add references.
  for (YangImport yangImport : getImportList()) {
    yangImport.addReferenceToImport(yangNodeSet);
  }
}

代码示例来源:origin: org.onosproject/onos-yang-datamodel

@Override
public void resolveInterFileLinking(ResolvableType type)
    throws DataModelException {
  // Get the list to be resolved.
  List<YangResolutionInfo> resolutionList = getUnresolvedResolutionList(type);
  // Resolve linking for a resolution list.
  linkInterFileReferences(resolutionList, this);
}

代码示例来源:origin: org.onosproject/onos-yang-datamodel

@Override
public void setLeafNameSpaceAndAddToParentSchemaMap() {
  // Add namespace for all leafs.
  for (YangLeaf yangLeaf : getListOfLeaf()) {
    yangLeaf.setLeafNameSpaceAndAddToParentSchemaMap(getNameSpace());
  }
  // Add namespace for all leaf list.
  for (YangLeafList yangLeafList : getListOfLeafList()) {
    yangLeafList.setLeafNameSpaceAndAddToParentSchemaMap(getNameSpace());
  }
}

代码示例来源:origin: org.onosproject/onos-yang-utils-parser

List<YangResolutionInfo> info = module.getUnresolvedResolutionList(
    YANG_COMPILER_ANNOTATION);
if (info != null && !info.isEmpty() && module.getChild() != null) {
  throwError(INVALID_CHILD, ctx);

代码示例来源:origin: org.onosproject/onos-yang-datamodel

@Override
public String getModuleName() {
  return getName();
}

代码示例来源:origin: org.onosproject/onos-yang-datamodel

@Override
public void addReferencesToIncludeList(Set<YangNode> yangNodeSet)
    throws DataModelException {
  // Run through the included list to add references.
  for (YangInclude yangInclude : getIncludeList()) {
    YangSubModule subModule = yangInclude
        .addReferenceToInclude(yangNodeSet);
    // Check if the referred sub-modules parent is self
    if (!subModule.getBelongsTo().getModuleNode().equals(this)) {
      yangInclude.reportIncludeError();
    }
  }
}

代码示例来源:origin: org.onosproject/onos-yang-utils-parser

case MODULE_DATA: {
  YangModule module = (YangModule) tmpNode;
  module.addToImportList((YangImport) tmpImportNode);
  break;

代码示例来源:origin: org.onosproject/onos-yang-utils-parser

case MODULE_DATA: {
  YangModule module = (YangModule) tmpNode;
  module.addToIncludeList((YangInclude) tmpIncludeNode);
  break;

代码示例来源:origin: org.onosproject/onos-yang-utils-parser

case MODULE_DATA:
  YangModule module = ((YangModule) curData);
  module.addExtension(extension);
  break;
case SUB_MODULE_DATA:

代码示例来源:origin: org.onosproject/onos-yang-datamodel

/**
 * Assigns leafref with new prefixes while cloning.
 *
 * @param importedNodeName imported node name from grouping
 * @param atomicPath       atomic path in leafref
 * @param node             instance of YANG uses where cloning is done
 * @throws DataModelException data model error
 */
private static void assignCurrentLeafedWithNewPrefixes(String importedNodeName, YangAtomicPath atomicPath,
                            YangNode node)
    throws DataModelException {
  while (!(node instanceof YangReferenceResolver)) {
    node = node.getParent();
    if (node == null) {
      throw new DataModelException("Internal datamodel error: Datamodel tree is not correct");
    }
  }
  if (node instanceof YangModule) {
    List<YangImport> importInUsesList = ((YangModule) node).getImportList();
    if (importInUsesList != null && !importInUsesList.isEmpty()) {
      Iterator<YangImport> importInUsesListIterator = importInUsesList.listIterator();
      while (importInUsesListIterator.hasNext()) {
        YangImport importInUsesNode = importInUsesListIterator.next();
        if (importInUsesNode.getModuleName().equals(importedNodeName)) {
          atomicPath.getNodeIdentifier().setPrefix(importInUsesNode.getPrefixId());
        }
      }
    }
  }
}

代码示例来源:origin: org.onosproject/onos-yang-datamodel

@Override
public void resolveSelfFileLinking(ResolvableType type)
    throws DataModelException {
  // Get the list to be resolved.
  List<YangResolutionInfo> resolutionList = getUnresolvedResolutionList(type);
  // Resolve linking for a resolution list.
  resolveLinkingForResolutionList(resolutionList, this);
}

代码示例来源:origin: org.onosproject/onos-yang-utils-parser

/**
 * Validates the prefix of the YANG file where leaf-ref is present and
 * puts it in the map of node and prefix in leaf-ref.
 *
 * @param atomicList atomic content list in leaf-ref
 * @param leafRef    YANG leaf-ref
 */
private static void valPrefix(List<YangAtomicPath> atomicList,
               YangLeafRef leafRef) {
  for (YangAtomicPath atomicPath : atomicList) {
    String prefix = atomicPath.getNodeIdentifier().getPrefix();
    YangNode parent = leafRef.getParentNode();
    YangNode rootNode = getRootNode(parent);
    List<YangImport> imports;
    if (rootNode instanceof YangModule) {
      imports = ((YangModule) rootNode).getImportList();
    } else {
      imports = ((YangSubModule) rootNode).getImportList();
    }
    updatePrefixWithNode(rootNode, imports, prefix, leafRef);
  }
}

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com