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


Java RuntimeElementInfo类代码示例

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


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

示例1: ElementBeanInfoImpl

import com.sun.xml.internal.bind.v2.model.runtime.RuntimeElementInfo; //导入依赖的package包/类
ElementBeanInfoImpl(JAXBContextImpl grammar, RuntimeElementInfo rei) {
    super(grammar,rei,(Class<JAXBElement>)rei.getType(),true,false,true);

    this.property = PropertyFactory.create(grammar,rei.getProperty());

    tagName = rei.getElementName();
    expectedType = (Class) Utils.REFLECTION_NAVIGATOR.erasure(rei.getContentInMemoryType());
    scope = rei.getScope()==null ? JAXBElement.GlobalScope.class : rei.getScope().getClazz();

    Class type = (Class) Utils.REFLECTION_NAVIGATOR.erasure(rei.getType());
    if(type==JAXBElement.class)
        constructor = null;
    else {
        try {
            constructor = type.getConstructor(expectedType);
        } catch (NoSuchMethodException e) {
            NoSuchMethodError x = new NoSuchMethodError("Failed to find the constructor for " + type + " with " + expectedType);
            x.initCause(e);
            throw x;
        }
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:23,代码来源:ElementBeanInfoImpl.java

示例2: ElementBeanInfoImpl

import com.sun.xml.internal.bind.v2.model.runtime.RuntimeElementInfo; //导入依赖的package包/类
ElementBeanInfoImpl(JAXBContextImpl grammar, RuntimeElementInfo rei) {
    super(grammar,rei,(Class<JAXBElement>)rei.getType(),true,false,true);

    this.property = PropertyFactory.create(grammar,rei.getProperty());

    tagName = rei.getElementName();
    expectedType = Navigator.REFLECTION.erasure(rei.getContentInMemoryType());
    scope = rei.getScope()==null ? JAXBElement.GlobalScope.class : rei.getScope().getClazz();

    Class type = Navigator.REFLECTION.erasure(rei.getType());
    if(type==JAXBElement.class)
        constructor = null;
    else {
        try {
            constructor = type.getConstructor(expectedType);
        } catch (NoSuchMethodException e) {
            NoSuchMethodError x = new NoSuchMethodError("Failed to find the constructor for " + type + " with " + expectedType);
            x.initCause(e);
            throw x;
        }
    }
}
 
开发者ID:alexkasko,项目名称:openjdk-icedtea7,代码行数:23,代码来源:ElementBeanInfoImpl.java

示例3: getOrCreate

import com.sun.xml.internal.bind.v2.model.runtime.RuntimeElementInfo; //导入依赖的package包/类
private ElementBeanInfoImpl getOrCreate( RuntimeElementInfo rei ) {
    JaxBeanInfo bi = beanInfos.get(rei);
    if(bi!=null)    return (ElementBeanInfoImpl)bi;

    // all elements share the same type, so we can't register them to beanInfoMap
    return new ElementBeanInfoImpl(this, rei);
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:8,代码来源:JAXBContextImpl.java

示例4: createSchemaGenerator

import com.sun.xml.internal.bind.v2.model.runtime.RuntimeElementInfo; //导入依赖的package包/类
private XmlSchemaGenerator<Type,Class,Field,Method> createSchemaGenerator() {
    RuntimeTypeInfoSet tis;
    try {
        tis = getTypeInfoSet();
    } catch (IllegalAnnotationsException e) {
        // this shouldn't happen because we've already
        throw new AssertionError(e);
    }

    XmlSchemaGenerator<Type,Class,Field,Method> xsdgen =
            new XmlSchemaGenerator<Type,Class,Field,Method>(tis.getNavigator(),tis);

    // JAX-RPC uses Bridge objects that collide with
    // @XmlRootElement.
    // we will avoid collision here
    Set<QName> rootTagNames = new HashSet<QName>();
    for (RuntimeElementInfo ei : tis.getAllElements()) {
        rootTagNames.add(ei.getElementName());
    }
    for (RuntimeClassInfo ci : tis.beans().values()) {
        if(ci.isElement())
            rootTagNames.add(ci.asElement().getElementName());
    }

    for (TypeReference tr : bridges.keySet()) {
        if(rootTagNames.contains(tr.tagName))
            continue;

        if(tr.type==void.class || tr.type==Void.class) {
            xsdgen.add(tr.tagName,false,null);
        } else
        if(tr.type==CompositeStructure.class) {
            // this is a special class we introduced for JAX-WS that we *don't* want in the schema
        } else {
            NonElement<Type,Class> typeInfo = getXmlType(tis,tr);
            xsdgen.add(tr.tagName, !tis.getNavigator().isPrimitive(tr.type),typeInfo);
        }
    }
    return xsdgen;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:41,代码来源:JAXBContextImpl.java

示例5: createSchemaGenerator

import com.sun.xml.internal.bind.v2.model.runtime.RuntimeElementInfo; //导入依赖的package包/类
private XmlSchemaGenerator<Type,Class,Field,Method> createSchemaGenerator() {
    RuntimeTypeInfoSet tis;
    try {
        tis = getTypeInfoSet();
    } catch (IllegalAnnotationsException e) {
        // this shouldn't happen because we've already
        throw new AssertionError(e);
    }

    XmlSchemaGenerator<Type,Class,Field,Method> xsdgen =
            new XmlSchemaGenerator<Type,Class,Field,Method>(tis.getNavigator(),tis);

    // JAX-RPC uses Bridge objects that collide with
    // @XmlRootElement.
    // we will avoid collision here
    Set<QName> rootTagNames = new HashSet<QName>();
    for (RuntimeElementInfo ei : tis.getAllElements()) {
        rootTagNames.add(ei.getElementName());
    }
    for (RuntimeClassInfo ci : tis.beans().values()) {
        if(ci.isElement())
            rootTagNames.add(ci.asElement().getElementName());
    }

    for (TypeReference tr : bridges.keySet()) {
        if(rootTagNames.contains(tr.tagName))
            continue;

        if(tr.type==void.class || tr.type==Void.class) {
            xsdgen.add(tr.tagName,false,null);
        } else
        if(tr.type==CompositeStructure.class) {
            // this is a special class we introduced for JAX-WS that we *don't* want in the schema
        } else {
            NonElement<Type,Class> typeInfo = getXmlType(tis,tr);
            xsdgen.add(tr.tagName, !Navigator.REFLECTION.isPrimitive(tr.type),typeInfo);
        }
    }
    return xsdgen;
}
 
开发者ID:alexkasko,项目名称:openjdk-icedtea7,代码行数:41,代码来源:JAXBContextImpl.java


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