gpt4 book ai didi

org.onosproject.yang.compiler.datamodel.YangType.getDataType()方法的使用及代码示例

转载 作者:知者 更新时间:2024-03-16 03:49:31 27 4
gpt4 key购买 nike

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

YangType.getDataType介绍

[英]Returns the type of data.
[中]返回数据的类型。

代码示例

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

@Override
public YangNamespace getValueNamespace(String value) {
  return LeafContextUtil.getValueNamespace(dataType, value,
                       dataType.getDataType());
}

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

private static YangNamespace getUnionValNamespace(YangType type,
                         String leafValue) {
  Iterator<YangType<?>> it = ((YangUnion) type.getDataTypeExtendedInfo())
      .getTypeList().listIterator();
  while (it.hasNext()) {
    YangType t = it.next();
    try {
      getObject(t, leafValue, t.getDataType());
      return getValueNamespace(t, leafValue, t.getDataType());
    } catch (IllegalArgumentException e) {
      continue;
    }
  }
  throw new IllegalArgumentException("Invalid value of data: " + leafValue);
}

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

/**
 * Returns the object for given data type with respective value.
 *
 * @param type      data type of value
 * @param leafValue value
 * @return object of data type containing the value
 */
private static Object parseUnionTypeInfo(YangType type, String leafValue) {
  Iterator<YangType<?>> it = ((YangUnion) type.getDataTypeExtendedInfo())
      .getTypeList().listIterator();
  while (it.hasNext()) {
    YangType t = it.next();
    try {
      return getObject(t, leafValue, t.getDataType());
    } catch (IllegalArgumentException e) {
      continue;
    }
  }
  throw new IllegalArgumentException("Invalid value of data: " + leafValue);
}

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

@Override
public LeafType getLeafType(String v) {
  return LeafContextUtil.getLeafType(dataType, v, dataType.getDataType());
}

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

/**
   * Returns the leaf type for given data type with respective value.
   *
   * @param type      data type of value
   * @param leafValue value
   * @return leaf type of data type containing the value
   */
  private static LeafType parseUnionLeafType(YangType type, String
      leafValue) {
    Iterator<YangType<?>> it = ((YangUnion) type.getDataTypeExtendedInfo())
        .getTypeList().listIterator();
    while (it.hasNext()) {
      YangType t = it.next();
      try {
        getObject(t, leafValue, t.getDataType());
        return getLeafType(t, leafValue, t.getDataType());
      } catch (IllegalArgumentException e) {
        continue;
      }
    }
    throw new IllegalArgumentException("Invalid value of data");
  }
}

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

@Override
public YangNamespace getValueNamespace(String value) {
  return LeafContextUtil.getValueNamespace(dataType, value,
                       dataType.getDataType());
}

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

/**
 * Validates the requested data-type resolve type in empty or not.
 *
 * @param dataType the data type
 * @return true, for empty resolved data-type; false otherwise
 * @deprecated use LeafContextUtil.getLeafType instead
 */
@Deprecated
public static boolean validateEmptyDataType(YangType dataType) {
  switch (dataType.getDataType()) {
    case DERIVED:
      return ((YangDerivedInfo) dataType.getDataTypeExtendedInfo())
          .getEffectiveBuiltInType().equals(EMPTY);
    case LEAFREF:
      YangType type = ((YangLeafRef) dataType
          .getDataTypeExtendedInfo())
          .getEffectiveDataType();
      if (type.getDataType() == DERIVED) {
        return ((YangDerivedInfo) type.getDataTypeExtendedInfo())
            .getEffectiveBuiltInType().equals(EMPTY);
      }
      return ((YangLeafRef) dataType.getDataTypeExtendedInfo())
          .getEffectiveDataType().getDataType().equals(EMPTY);
    case UNION:
      return false;
    default:
      return dataType.getDataType().equals(EMPTY);
  }
}

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

/**
 * Sets the default require instance value as true when the type is instance identifier.
 *
 * @param type type to which the value has to be set
 */
private static void setDefaultRequireInstanceForInstanceIdentifier(YangType<?> type) {
  if (type.getDataType() == INSTANCE_IDENTIFIER) {
    ((YangType<Boolean>) type).setDataTypeExtendedInfo(true);
  }
}

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

/**
 * Returns resolvable entity under union. When types under union have
 * identity-ref, derived and union, the function call is done recursively
 * to get resolvable entity and adds it to list.
 *
 * @param type   union YANG type
 * @param isLeaf leaf or leaf-list
 * @return resolvable entity list after setting info
 * @throws DataModelException data model error
 */
private static List<YangEntityToResolveInfoImpl> getUnionResolvableEntity(
    YangType type, boolean isLeaf) throws DataModelException {
  YangUnion union = (YangUnion) type.getDataTypeExtendedInfo();
  List<YangType<?>> typeList = union.getTypeList();
  List<YangEntityToResolveInfoImpl> unionList = new ArrayList<>();
  List<YangEntityToResolveInfoImpl> entity;
  for (YangType unionType : typeList) {
    entity = getUnresolvedTypeList(unionType.getDataType(),
                    unionType, union, null, isLeaf);
    if (nonEmpty(entity)) {
      unionList.addAll(entity);
    }
  }
  return unionList;
}

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

@Override
public LeafObjectType getLeafObjectType() {
  return getLeafTypeByDataType(dataType, dataType.getDataType());
}

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

PatternStatementContext ctx) {
if (type.getDataType() != STRING && type.getDataType() != DERIVED) {
  ParserException exc = new ParserException(E_INVALID_TYPE);
  exc.setLine(ctx.getStart().getLine());
patRes.setLineNumber(ctx.getStart().getLine());
if (type.getDataType() == STRING) {
  YangStringRestriction strRes = (YangStringRestriction) type
      .getDataTypeExtendedInfo();

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

@Override
public LeafObjectType getLeafObjectType() {
  return getLeafTypeByDataType(dataType, dataType.getDataType());
}

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

@Override
public Object resolve()
    throws DataModelException {
  /*
   * Check whether the data type is derived.
   */
  if (getDataType() != DERIVED) {
    throw new DataModelException("Linker Error: Resolve should only be called for derived data types. "
                       + " in " +
                       getLineNumber() + " at " +
                       getCharPosition()
                       + " in " + getFileName() + "\"");
  }
  // Check if the derived info is present.
  YangDerivedInfo<?> derivedInfo = (YangDerivedInfo<?>) getDataTypeExtendedInfo();
  if (derivedInfo == null) {
    throw new DataModelException("Linker Error: Derived information is missing. " + " in " +
                       getLineNumber() + " at " +
                       getCharPosition()
                       + " in " + getFileName() + "\"");
  }
  // Initiate the resolution
  try {
    setResolvableStatus(derivedInfo.resolve());
  } catch (DataModelException e) {
    throw new DataModelException(e.getMessage());
  }
  return null;
}

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

@Override
public Object fromString(String value) {
  return LeafContextUtil.getObject(dataType, value, dataType.getDataType());
}

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

@Override
public LeafType getLeafType(String v) {
  return LeafContextUtil.getLeafType(dataType, v, dataType.getDataType());
}

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

@Override
public Object fromString(String value) {
  return LeafContextUtil.getObject(dataType, value, dataType.getDataType());
}

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

/**
 * Returns types that has to be resolved for a single leaf/leaf-list.
 * Identifies the object to be leaf/leaf-list and assigns respective
 * parameters to resolve the types under leaf/leaf-list.
 *
 * @param clonedObj  leaf/leaf-list object
 * @param holderNode holder node
 * @param yangUses   YANG uses
 * @return list of resolvable entities in a leaf/leaf-list
 * @throws DataModelException data model error
 */
private static List<YangEntityToResolveInfoImpl> getTypesToBeResolved(
    Object clonedObj, YangNode holderNode,
    YangUses yangUses) throws DataModelException {
  YangType type;
  if (clonedObj instanceof YangLeaf) {
    YangLeaf clonedLeaf = (YangLeaf) clonedObj;
    type = clonedLeaf.getDataType();
    return getUnresolvedTypeList(type.getDataType(), type, holderNode,
                   yangUses, true);
  }
  YangLeafList clonedLeafList = (YangLeafList) clonedObj;
  type = clonedLeafList.getDataType();
  return getUnresolvedTypeList(type.getDataType(), type, holderNode,
                 yangUses, false);
}

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

private void addUnResolvedTypeDataToStack(YangType refType, YangNode
    ancestorRefNode, T extendedInfo) {
  YangEntityToResolveInfoImpl<YangLeafRef<?>> unResolvedLeafRef =
      new YangEntityToResolveInfoImpl<>();
  YangEntityToResolveInfoImpl<YangType<?>> unResolvedTypeDef =
      new YangEntityToResolveInfoImpl<>();
  if (refType.getDataType() == YangDataTypes.LEAFREF) {
    unResolvedLeafRef.setEntityToResolve((YangLeafRef<?>) extendedInfo);
    unResolvedLeafRef.setHolderOfEntityToResolve(ancestorRefNode);
    addInPartialResolvedStack((YangEntityToResolveInfoImpl<T>) unResolvedLeafRef);
  } else if (refType.getDataType() == YangDataTypes.DERIVED) {
    unResolvedTypeDef.setEntityToResolve(refType);
    unResolvedTypeDef.setHolderOfEntityToResolve(ancestorRefNode);
    addInPartialResolvedStack((YangEntityToResolveInfoImpl<T>) unResolvedTypeDef);
  }
}

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

/**
 * Adds YANG type to type list.
 *
 * @param yangType YANG type to be added to list
 * @throws DataModelException union member type must not be one of the
 *                            built-in types "empty" or "leafref"
 */
public void addType(YangType<?> yangType)
    throws DataModelException {
  YangDataTypes type = yangType.getDataType();
  String msg = "Union member type must not be one of the built-in types" +
      " \"empty\" or \"leafref\"";
  switch (type) {
    case EMPTY:
    case LEAFREF:
      throw new DataModelException(getErrorMsg(
          msg, getName(), getLineNumber(), getCharPosition(),
          getFileName()));
    default:
      typeList.add(yangType);
  }
}

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

.getDataType() == YangDataTypes.DERIVED) {
addEntityToStack((T) ((YangTypeDef) refNode).getTypeDefBaseType(),
         refNode);

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