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


Java RuntimePropertyInfo类代码示例

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


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

示例1: getParametrizedTypes

import com.sun.xml.internal.bind.v2.model.runtime.RuntimePropertyInfo; //导入依赖的package包/类
/**
 * Getting parametrized classes of {@code JAXBElement<...>} property
 * @param p property which parametrized types we will try to get
 * @return null - if it's not JAXBElement property, or it's not parametrized, and array of parametrized classes in other case
 */
private Class[] getParametrizedTypes(PropertyInfo p) {
    try {
        Type pType = ((RuntimePropertyInfo) p).getIndividualType();
        if (pType instanceof ParameterizedType) {
            ParameterizedType prmzdType = (ParameterizedType) pType;
            if (prmzdType.getRawType() == JAXBElement.class) {
                Type[] actualTypes = prmzdType.getActualTypeArguments();
                Class[] result = new Class[actualTypes.length];
                for (int i = 0; i < actualTypes.length; i++) {
                    result[i] = (Class) actualTypes[i];
                }
                return result;
            }
        }
    } catch (Exception e) {
        logger.log(Level.FINE, "Error in ModelBuilder.getParametrizedTypes. " + e.getMessage());
    }
    return null;
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:25,代码来源:ModelBuilder.java

示例2: isLeaf

import com.sun.xml.internal.bind.v2.model.runtime.RuntimePropertyInfo; //导入依赖的package包/类
/**
 * Look for the case that can be optimized as a leaf,
 * which is a kind of type whose XML representation is just PCDATA.
 */
static boolean isLeaf(RuntimePropertyInfo info) {
    Collection<? extends RuntimeTypeInfo> types = info.ref();
    if(types.size()!=1)     return false;

    RuntimeTypeInfo rti = types.iterator().next();
    if(!(rti instanceof RuntimeNonElement)) return false;

    if(info.id()==ID.IDREF)
        // IDREF is always handled as leaf -- Transducer maps IDREF String back to an object
        return true;

    if(((RuntimeNonElement)rti).getTransducer()==null)
        // Transducer!=null means definitely binds to PCDATA.
        // even if transducer==null, a referene might be IDREF,
        // in which case it will still produce PCDATA in this reference.
        return false;

    if(!info.getIndividualType().equals(rti.getType()))
        return false;

    return true;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:27,代码来源:PropertyFactory.java

示例3: get

import com.sun.xml.internal.bind.v2.model.runtime.RuntimePropertyInfo; //导入依赖的package包/类
/**
 * Gets the {@link TransducedAccessor} appropriately configured for
 * the given property.
 *
 * <p>
 * This allows the implementation to use an optimized code.
 */
public static <T> TransducedAccessor<T> get(JAXBContextImpl context, RuntimeNonElementRef ref) {
    Transducer xducer = RuntimeModelBuilder.createTransducer(ref);
    RuntimePropertyInfo prop = ref.getSource();

    if(prop.isCollection()) {
        return new ListTransducedAccessorImpl(xducer,prop.getAccessor(),
                Lister.create(Utils.REFLECTION_NAVIGATOR.erasure(prop.getRawType()), prop.id(), prop.getAdapter()));
    }

    if(prop.id()==ID.IDREF)
        return new IDREFTransducedAccessorImpl(prop.getAccessor());

    if(xducer.isDefault() && context != null && !context.fastBoot) {
        TransducedAccessor xa = OptimizedTransducedAccessorFactory.get(prop);
        if(xa!=null)    return xa;
    }

    if(xducer.useNamespace())
        return new CompositeContextDependentTransducedAccessorImpl( context, xducer, prop.getAccessor() );
    else
        return new CompositeTransducedAccessorImpl( context, xducer, prop.getAccessor() );
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:30,代码来源:TransducedAccessor.java

示例4: get

import com.sun.xml.internal.bind.v2.model.runtime.RuntimePropertyInfo; //导入依赖的package包/类
/**
 * Gets the {@link TransducedAccessor} appropriately configured for
 * the given property.
 *
 * <p>
 * This allows the implementation to use an optimized code.
 */
public static <T> TransducedAccessor<T> get(JAXBContextImpl context, RuntimeNonElementRef ref) {
    Transducer xducer = RuntimeModelBuilder.createTransducer(ref);
    RuntimePropertyInfo prop = ref.getSource();

    if(prop.isCollection()) {
        return new ListTransducedAccessorImpl(xducer,prop.getAccessor(),
                Lister.create(Navigator.REFLECTION.erasure(prop.getRawType()),prop.id(),
                prop.getAdapter()));
    }

    if(prop.id()==ID.IDREF)
        return new IDREFTransducedAccessorImpl(prop.getAccessor());

    if(xducer.isDefault() && context != null && !context.fastBoot) {
        TransducedAccessor xa = OptimizedTransducedAccessorFactory.get(prop);
        if(xa!=null)    return xa;
    }

    if(xducer.useNamespace())
        return new CompositeContextDependentTransducedAccessorImpl( context, xducer, prop.getAccessor() );
    else
        return new CompositeTransducedAccessorImpl( context, xducer, prop.getAccessor() );
}
 
开发者ID:alexkasko,项目名称:openjdk-icedtea7,代码行数:31,代码来源:TransducedAccessor.java

示例5: SingleTypePropertyInfoImpl

import com.sun.xml.internal.bind.v2.model.runtime.RuntimePropertyInfo; //导入依赖的package包/类
public SingleTypePropertyInfoImpl(ClassInfoImpl<T,C,F,M> classInfo, PropertySeed<T,C,F,M> seed) {
    super(classInfo, seed);
    if(this instanceof RuntimePropertyInfo) {
        Accessor rawAcc = ((RuntimeClassInfoImpl.RuntimePropertySeed)seed).getAccessor();
        if(getAdapter()!=null && !isCollection())
            // adapter for a single-value property is handled by accessor.
            // adapter for a collection property is handled by lister.
            rawAcc = rawAcc.adapt(((RuntimePropertyInfo)this).getAdapter());
        this.acc = rawAcc;
    } else
        this.acc = null;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:13,代码来源:SingleTypePropertyInfoImpl.java

示例6: ArrayProperty

import com.sun.xml.internal.bind.v2.model.runtime.RuntimePropertyInfo; //导入依赖的package包/类
protected ArrayProperty(JAXBContextImpl context, RuntimePropertyInfo prop) {
    super(context,prop);

    assert prop.isCollection();
    lister = Lister.create(
        Utils.REFLECTION_NAVIGATOR.erasure(prop.getRawType()),prop.id(),prop.getAdapter());
    assert lister!=null;
    acc = prop.getAccessor().optimize(context);
    assert acc!=null;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:11,代码来源:ArrayProperty.java

示例7: ArrayERProperty

import com.sun.xml.internal.bind.v2.model.runtime.RuntimePropertyInfo; //导入依赖的package包/类
protected ArrayERProperty(JAXBContextImpl grammar, RuntimePropertyInfo prop, QName tagName, boolean isWrapperNillable) {
    super(grammar,prop);
    if(tagName==null)
        this.wrapperTagName = null;
    else
        this.wrapperTagName = grammar.nameBuilder.createElementName(tagName);
    this.isWrapperNillable = isWrapperNillable;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:9,代码来源:ArrayERProperty.java

示例8: ArrayProperty

import com.sun.xml.internal.bind.v2.model.runtime.RuntimePropertyInfo; //导入依赖的package包/类
protected ArrayProperty(JAXBContextImpl context, RuntimePropertyInfo prop) {
    super(context,prop);

    assert prop.isCollection();
    lister = Lister.create(
        Navigator.REFLECTION.erasure(prop.getRawType()),prop.id(),prop.getAdapter());
    assert lister!=null;
    acc = prop.getAccessor().optimize(context);
    assert acc!=null;
}
 
开发者ID:alexkasko,项目名称:openjdk-icedtea7,代码行数:11,代码来源:ArrayProperty.java


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