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


Java BindInfo类代码示例

本文整理汇总了Java中com.sun.tools.xjc.reader.xmlschema.bindinfo.BindInfo的典型用法代码示例。如果您正苦于以下问题:Java BindInfo类的具体用法?Java BindInfo怎么用?Java BindInfo使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: hasAnnotation

import com.sun.tools.xjc.reader.xmlschema.bindinfo.BindInfo; //导入依赖的package包/类
private static BIDeclaration hasAnnotation(XSAnnotation annotation, QName qname) {
    if (annotation == null) {
        return null;
    }

    Object object = annotation.getAnnotation();
    if (!(object instanceof BindInfo)) {
        return null;
    }

    BindInfo info = (BindInfo) object;
    BIDeclaration[] declarations = info.getDecls();
    if (declarations == null) {
        return null;
    }

    for (BIDeclaration declaration : declarations) {
        if (qname.equals(declaration.getName())) {
            return declaration;
        }
    }

    return null;
}
 
开发者ID:Pardus-Engerek,项目名称:engerek,代码行数:25,代码来源:ProcessorUtils.java

示例2: getCustomPropertyName

import com.sun.tools.xjc.reader.xmlschema.bindinfo.BindInfo; //导入依赖的package包/类
private String getCustomPropertyName(final XSComponent component) {
	if (component.getAnnotation() != null && (component.getAnnotation().getAnnotation() instanceof BindInfo)) {
		final BindInfo bindInfo = (BindInfo) component.getAnnotation().getAnnotation();
		final BIProperty biProperty = bindInfo.get(BIProperty.class);
		if (biProperty != null) {
			final String customPropertyName = biProperty.getPropertyName(false);
			return customPropertyName != null ? customPropertyName : null;
		}
	}
	return null;
}
 
开发者ID:mklemm,项目名称:jaxb2-rich-contract-plugin,代码行数:12,代码来源:GroupInterfaceGenerator.java

示例3: getDocumentation

import com.sun.tools.xjc.reader.xmlschema.bindinfo.BindInfo; //导入依赖的package包/类
/**
 * Helper to get xsdoc from schema component
 * 
 * @param xsComp
 *            ,XSComponent
 * @return doc string
 */
public static String getDocumentation(XSComponent xsComp) {
	if (xsComp == null)
		return null;
	XSAnnotation xsa = xsComp.getAnnotation();
	if (xsa != null && xsa.getAnnotation() != null) {
		String docComment = ((BindInfo) xsa.getAnnotation())
				.getDocumentation();
		return docComment;
	}
	return null;
}
 
开发者ID:agodet,项目名称:wadlcodegenerator,代码行数:19,代码来源:ModelBuilder.java

示例4: getPrefixBinding

import com.sun.tools.xjc.reader.xmlschema.bindinfo.BindInfo; //导入依赖的package包/类
/**
 * This method detects prefixes for a given package as specified in the bindings file. Usually, there is only one namespace per package, but there may be more.
 *
 * @param packageModel     the package model
 * @param packageNamespace the target namespace for the package
 * @return the prefix annotations
 */
private static List<Pair> getPrefixBinding(Model packageModel, Set<String> packageNamespace) {

	final List<Pair> list = new ArrayList<Pair>();

	// loop on existing schemas (XSD files)
	for (XSSchema schema : packageModel.schemaComponent.getSchemas()) {

		final SchemaImpl s = (SchemaImpl) schema;
		final XSAnnotation annotation = s.getAnnotation();
		if (annotation == null) {
			continue;
		}

		final Object anno = annotation.getAnnotation();
		if (anno == null || !(anno instanceof BindInfo)) {
			continue;
		}

		final BindInfo b = (BindInfo) anno;
		final String targetNS = b.getOwner().getOwnerSchema().getTargetNamespace();

		if (!packageNamespace.contains(targetNS)) { // only consider schemas that bind the current package
			continue;
		}

		Set<String> mappedPrefixes = new HashSet<String>();
		Set<String> mappedNamespaceURIs = new HashSet<String>();

		for (BIDeclaration declaration : b.getDecls()) {
			if (declaration instanceof BIXPluginCustomization) {
				final BIXPluginCustomization customization = (BIXPluginCustomization) declaration;

				if (!customization.element.getNamespaceURI().equals(NAMESPACE_URI)) {
					continue;
				}

				final String localName = customization.element.getLocalName();

				if (!localName.equals("prefix")) {
					throw new RuntimeException("Unrecognized element [" + localName + "]");
				}

				final String namespaceURI;

				if (customization.element.hasAttribute("namespaceURI")) {
					namespaceURI = customization.element.getAttribute("namespaceURI");
				} else {
					namespaceURI = targetNS;
				}

				if (mappedNamespaceURIs.contains(namespaceURI)) {
					throw new RuntimeException("Multiple mappings for namespaceURI [" + namespaceURI + "] detected");
				}

				mappedNamespaceURIs.add(namespaceURI);

				final String prefix = customization.element.getAttribute("name");

				if (mappedPrefixes.contains(prefix)) {
					throw new RuntimeException("Multiple mappings for prefix [" + prefix + "] detected");
				}

				mappedPrefixes.add(prefix);

				list.add(new Pair(namespaceURI, prefix));
				customization.markAsAcknowledged();
			}
		}
	}

	return list;
}
 
开发者ID:Siggen,项目名称:jaxb2-namespace-prefix,代码行数:80,代码来源:NamespacePrefixPlugin.java


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