当前位置: 首页>>代码示例>>Java>>正文


Java XmlUtil.XML_NAMESPACE_URI属性代码示例

本文整理汇总了Java中com.intellij.xml.util.XmlUtil.XML_NAMESPACE_URI属性的典型用法代码示例。如果您正苦于以下问题:Java XmlUtil.XML_NAMESPACE_URI属性的具体用法?Java XmlUtil.XML_NAMESPACE_URI怎么用?Java XmlUtil.XML_NAMESPACE_URI使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在com.intellij.xml.util.XmlUtil的用法示例。


在下文中一共展示了XmlUtil.XML_NAMESPACE_URI属性的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getNamespaceByPrefix

@Override
@NotNull
public String getNamespaceByPrefix(String prefix) {
  final PsiElement parent = getParent();
  if (!parent.isValid()) {
    LOG.error(this.isValid());
  }
  BidirectionalMap<String, String> map = initNamespaceMaps(parent);
  if (map != null) {
    final String ns = map.get(prefix);
    if (ns != null) return ns;
  }
  if (parent instanceof XmlTag) return ((XmlTag)parent).getNamespaceByPrefix(prefix);
  //The prefix 'xml' is by definition bound to the namespace name http://www.w3.org/XML/1998/namespace. It MAY, but need not, be declared
  if (XML_NS_PREFIX.equals(prefix)) return XmlUtil.XML_NAMESPACE_URI;

  if (!prefix.isEmpty() &&
      !hasNamespaceDeclarations() &&
      getNamespacePrefix().equals(prefix)) {
    // When there is no namespace declarations then qualified names should be just used in dtds
    // this implies that we may have "" namespace prefix ! (see last paragraph in Namespaces in Xml, Section 5)

    String result = ourGuard.doPreventingRecursion("getNsByPrefix", true, new Computable<String>() {
      @Override
      public String compute() {
        final String nsFromEmptyPrefix = getNamespaceByPrefix("");
        final XmlNSDescriptor nsDescriptor = getNSDescriptor(nsFromEmptyPrefix, false);
        final XmlElementDescriptor descriptor = nsDescriptor != null ? nsDescriptor.getElementDescriptor(XmlTagImpl.this) : null;
        final String nameFromRealDescriptor =
          descriptor != null && descriptor.getDeclaration() != null && descriptor.getDeclaration().isPhysical()
          ? descriptor.getName()
          : "";
        if (nameFromRealDescriptor.equals(getName())) return nsFromEmptyPrefix;
        return XmlUtil.EMPTY_URI;
      }
    });
    if (result != null) {
      return result;
    }
  }
  return XmlUtil.EMPTY_URI;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:42,代码来源:XmlTagImpl.java


注:本文中的com.intellij.xml.util.XmlUtil.XML_NAMESPACE_URI属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。