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


Java XmlNSDescriptorImpl类代码示例

本文整理汇总了Java中com.intellij.xml.impl.dtd.XmlNSDescriptorImpl的典型用法代码示例。如果您正苦于以下问题:Java XmlNSDescriptorImpl类的具体用法?Java XmlNSDescriptorImpl怎么用?Java XmlNSDescriptorImpl使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: resolveElementReference

import com.intellij.xml.impl.dtd.XmlNSDescriptorImpl; //导入依赖的package包/类
@Nullable
public static XmlElementDescriptor resolveElementReference(String name, XmlElement context) {
  XmlNSDescriptor rootTagNSDescriptor = getNsDescriptor(context);

  if (rootTagNSDescriptor instanceof XmlNSDescriptorImpl) {
    return ((XmlNSDescriptorImpl)rootTagNSDescriptor).getElementDescriptor(name);
  }
  return null;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:10,代码来源:DtdResolveUtil.java

示例2: createDescriptor

import com.intellij.xml.impl.dtd.XmlNSDescriptorImpl; //导入依赖的package包/类
private static XmlNSDescriptor createDescriptor(String dtdText) {
  PsiFile dtdFile = createLightFile("test.dtd", dtdText);

  XmlNSDescriptorImpl descriptor = new XmlNSDescriptorImpl();
  descriptor.init(dtdFile);
  return descriptor;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:8,代码来源:XmlDtdTest.java

示例3: createDescriptor

import com.intellij.xml.impl.dtd.XmlNSDescriptorImpl; //导入依赖的package包/类
private XmlNSDescriptor createDescriptor(String dtdText) throws Exception {
  PsiFile dtdFile = createDummyFile("test.dtd", dtdText);

  XmlNSDescriptorImpl descriptor = new XmlNSDescriptorImpl();
  descriptor.init(dtdFile);
  return descriptor;
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:8,代码来源:XmlDtdTest.java

示例4: resolveElementReference

import com.intellij.xml.impl.dtd.XmlNSDescriptorImpl; //导入依赖的package包/类
@Nullable
public static XmlElementDescriptor resolveElementReference(String name, XmlElement context)
{
	XmlNSDescriptor rootTagNSDescriptor = getNsDescriptor(context);

	if(rootTagNSDescriptor instanceof XmlNSDescriptorImpl)
	{
		return ((XmlNSDescriptorImpl) rootTagNSDescriptor).getElementDescriptor(name);
	}
	return null;
}
 
开发者ID:consulo,项目名称:consulo-xml,代码行数:12,代码来源:DtdResolveUtil.java

示例5: contributeMetaData

import com.intellij.xml.impl.dtd.XmlNSDescriptorImpl; //导入依赖的package包/类
@Override
public void contributeMetaData(final MetaDataRegistrar registrar)
{
	{
		registrar.registerMetaData(new AndFilter(new NamespaceFilter(XmlUtil.SCHEMA_URIS), new ClassFilter(XmlDocument.class)), SchemaNSDescriptor.class);

		registrar.registerMetaData(new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("schema")), SchemaNSDescriptor.class);
	}
	{
		registrar.registerMetaData(new OrFilter(new AndFilter(new ContentFilter(new OrFilter(new ClassFilter(XmlElementDecl.class), new ClassFilter(XmlEntityDecl.class), new ClassFilter
				(XmlConditionalSection.class), new ClassFilter(XmlEntityRef.class))), new ClassFilter(XmlDocument.class)), new ClassFilter(XmlMarkupDecl.class)), XmlNSDescriptorImpl.class);
	}

	{
		registrar.registerMetaData(new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("element")), XmlElementDescriptorImpl.class);
	}

	{
		registrar.registerMetaData(new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("attribute")), XmlAttributeDescriptorImpl.class);
	}

	{
		registrar.registerMetaData(new ClassFilter(XmlElementDecl.class), com.intellij.xml.impl.dtd.XmlElementDescriptorImpl.class);
	}

	{
		registrar.registerMetaData(new ClassFilter(XmlAttributeDecl.class), com.intellij.xml.impl.dtd.XmlAttributeDescriptorImpl.class);
	}

	{
		registrar.registerMetaData(new AndFilter(new ClassFilter(XmlDocument.class), new TargetNamespaceFilter(XmlUtil.XHTML_URI), new NamespaceFilter(XmlUtil.SCHEMA_URIS)),
				RelaxedHtmlFromSchemaNSDescriptor.class);
	}

	{
		registrar.registerMetaData(new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("complexType", "simpleType", "group", "attributeGroup")),
				NamedObjectDescriptor.class);
	}
}
 
开发者ID:consulo,项目名称:consulo-xml,代码行数:40,代码来源:XmlApplicationComponent.java

示例6: contributeMetaData

import com.intellij.xml.impl.dtd.XmlNSDescriptorImpl; //导入依赖的package包/类
@Override
public void contributeMetaData(final MetaDataRegistrar registrar) {
  {
    registrar.registerMetaData(
        new AndFilter(
            new NamespaceFilter(XmlUtil.SCHEMA_URIS),
            new ClassFilter(XmlDocument.class)
        ),
        SchemaNSDescriptor.class
    );

    registrar.registerMetaData(
        new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("schema")),
        SchemaNSDescriptor.class
    );
  }
  {
    registrar.registerMetaData(
        new OrFilter(
            new AndFilter(
                new ContentFilter(
                  new OrFilter(
                    new ClassFilter(XmlElementDecl.class),
                    new ClassFilter(XmlEntityDecl.class),
                    new ClassFilter(XmlConditionalSection.class),
                    new ClassFilter(XmlEntityRef.class)
                  )
                ),
                new ClassFilter(XmlDocument.class)
            ),
            new ClassFilter(XmlMarkupDecl.class)
        ),
        XmlNSDescriptorImpl.class
    );
  }

  {
    registrar.registerMetaData(new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("element")),
                       XmlElementDescriptorImpl.class);
  }

  {
    registrar.registerMetaData(
        new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("attribute")),
        XmlAttributeDescriptorImpl.class
    );
  }

  {
    registrar.registerMetaData(
        new ClassFilter(XmlElementDecl.class),
        com.intellij.xml.impl.dtd.XmlElementDescriptorImpl.class
    );
  }

  {
    registrar.registerMetaData(
        new ClassFilter(XmlAttributeDecl.class),
        com.intellij.xml.impl.dtd.XmlAttributeDescriptorImpl.class
    );
  }

  {
    registrar.registerMetaData(
        new AndFilter(
            new ClassFilter(XmlDocument.class),
            new TargetNamespaceFilter(XmlUtil.XHTML_URI),
            new NamespaceFilter(XmlUtil.SCHEMA_URIS)),
        RelaxedHtmlFromSchemaNSDescriptor.class
    );
  }

  {
    registrar.registerMetaData(new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("complexType",
                                                                                                                                "simpleType", "group",
                                                                                                                                "attributeGroup")),
                       NamedObjectDescriptor.class);
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:80,代码来源:XmlApplicationComponent.java

示例7: contributeMetaData

import com.intellij.xml.impl.dtd.XmlNSDescriptorImpl; //导入依赖的package包/类
public void contributeMetaData(final MetaDataRegistrar registrar) {
  {
    registrar.registerMetaData(
        new AndFilter(
            new NamespaceFilter(XmlUtil.SCHEMA_URIS),
            new ClassFilter(XmlDocument.class)
        ),
        SchemaNSDescriptor.class
    );

    registrar.registerMetaData(
        new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("schema")),
        SchemaNSDescriptor.class
    );
  }
  {
    registrar.registerMetaData(
        new OrFilter(
            new AndFilter(
                new ContentFilter(
                  new OrFilter(
                    new ClassFilter(XmlElementDecl.class),
                    new ClassFilter(XmlEntityDecl.class),
                    new ClassFilter(XmlConditionalSection.class),
                    new ClassFilter(XmlEntityRef.class)
                  )
                ),
                new ClassFilter(XmlDocument.class)
            ),
            new ClassFilter(XmlMarkupDecl.class)
        ),
        XmlNSDescriptorImpl.class
    );
  }

  {
    registrar.registerMetaData(new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("element")),
                       XmlElementDescriptorImpl.class);
  }

  {
    registrar.registerMetaData(
        new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("attribute")),
        XmlAttributeDescriptorImpl.class
    );
  }

  {
    registrar.registerMetaData(
        new ClassFilter(XmlElementDecl.class),
        com.intellij.xml.impl.dtd.XmlElementDescriptorImpl.class
    );
  }

  {
    registrar.registerMetaData(
        new ClassFilter(XmlAttributeDecl.class),
        com.intellij.xml.impl.dtd.XmlAttributeDescriptorImpl.class
    );
  }

  {
    registrar.registerMetaData(
        new AndFilter(
            new ClassFilter(XmlDocument.class),
            new TargetNamespaceFilter(XmlUtil.XHTML_URI),
            new NamespaceFilter(XmlUtil.SCHEMA_URIS)),
        RelaxedHtmlFromSchemaNSDescriptor.class
    );
  }

  {
    registrar.registerMetaData(new AndFilter(XmlTagFilter.INSTANCE, new NamespaceFilter(XmlUtil.SCHEMA_URIS), new XmlTextFilter("complexType",
                                                                                                                                "simpleType", "group",
                                                                                                                                "attributeGroup")),
                       NamedObjectDescriptor.class);
  }
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:79,代码来源:XmlApplicationComponent.java

示例8: initializeSchema

import com.intellij.xml.impl.dtd.XmlNSDescriptorImpl; //导入依赖的package包/类
private Map<String, CachedValue<XmlNSDescriptor>> initializeSchema(final String namespace,
                                                                   @Nullable final String version,
                                                                   final String fileLocation,
                                                                   Map<String, CachedValue<XmlNSDescriptor>> map) {
  if (map == null) map = new THashMap<String, CachedValue<XmlNSDescriptor>>();

  // We put cached value in any case to cause its value update on e.g. mapping change
  map.put(namespace, CachedValuesManager.getManager(getManager().getProject()).createCachedValue(new CachedValueProvider<XmlNSDescriptor>() {
    @Override
    public Result<XmlNSDescriptor> compute() {
      XmlNSDescriptor descriptor = getImplicitNamespaceDescriptor(fileLocation);
      if (descriptor != null) {
        return new Result<XmlNSDescriptor>(descriptor, ArrayUtil.append(descriptor.getDependences(), XmlTagImpl.this));
      }

      XmlFile currentFile = retrieveFile(fileLocation, version, namespace);
      if (currentFile == null) {
        final XmlDocument document = XmlUtil.getContainingFile(XmlTagImpl.this).getDocument();
        if (document != null) {
          final String uri = XmlUtil.getDtdUri(document);
          if (uri != null) {
            final XmlFile containingFile = XmlUtil.getContainingFile(document);
            final XmlFile xmlFile = XmlUtil.findNamespace(containingFile, uri);
            descriptor = xmlFile == null ? null : (XmlNSDescriptor)xmlFile.getDocument().getMetaData();
          }

          // We want to get fixed xmlns attr from dtd and check its default with requested namespace
          if (descriptor instanceof XmlNSDescriptorImpl) {
            final XmlElementDescriptor elementDescriptor = descriptor.getElementDescriptor(XmlTagImpl.this);
            if (elementDescriptor != null) {
              final XmlAttributeDescriptor attributeDescriptor = elementDescriptor.getAttributeDescriptor("xmlns", XmlTagImpl.this);
              if (attributeDescriptor != null && attributeDescriptor.isFixed()) {
                final String defaultValue = attributeDescriptor.getDefaultValue();
                if (defaultValue != null && defaultValue.equals(namespace)) {
                  return new Result<XmlNSDescriptor>(descriptor, descriptor.getDependences(), XmlTagImpl.this,
                                                     ExternalResourceManager.getInstance());
                }
              }
            }
          }
        }
      }
      PsiMetaOwner currentOwner = retrieveOwner(currentFile, namespace);
      if (currentOwner != null) {
        descriptor = (XmlNSDescriptor)currentOwner.getMetaData();
        if (descriptor != null) {
          return new Result<XmlNSDescriptor>(descriptor, descriptor.getDependences(), XmlTagImpl.this,
                                             ExternalResourceManager.getInstance());
        }
      }
      return new Result<XmlNSDescriptor>(null, XmlTagImpl.this, currentFile, ExternalResourceManager.getInstance());
    }
  }, false));

  return map;
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:57,代码来源:XmlTagImpl.java


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