本文整理了Java中com.sun.codemodel.JClass.isAssignableFrom()
方法的一些代码示例,展示了JClass.isAssignableFrom()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。JClass.isAssignableFrom()
方法的具体详情如下:
包路径:com.sun.codemodel.JClass
类名称:JClass
方法名:isAssignableFrom
[英]Checks the relationship between two classes.
This method works in the same way as Class#isAssignableFrom(Class)works. For example, baseClass.isAssignableFrom(derivedClass)==true.
[中]检查两个类之间的关系。
此方法的工作方式与类#isAssignableFrom(类)的工作方式相同。例如,基类。isAssignableFrom(derivedClass)=真。
代码示例来源:origin: javaee/glassfish
/**
* Figure out the concrete implementation class to be used.
*/
JType implType() {
if(cm.ref(Set.class).isAssignableFrom(collectionType))
return cm.ref(HashSet.class).narrow(itemType);
return cm.ref(ArrayList.class).narrow(itemType);
}
代码示例来源:origin: org.jvnet.jaxb2_commons/jaxb2-basics-tools
private boolean matches(final JClass thatType) {
final JClass thisType = getType();
if (thisType.isAssignableFrom(thatType))
{
return true;
}
else if(thisType.erasure().isAssignableFrom(thatType.erasure()))
{
return true;
}
else
{
return false;
}
}
代码示例来源:origin: org.jvnet.jaxb2_commons/jaxb2-basics-tools
@Override
public Boolean visit(JCMTypeWildcard type) {
return getType().isAssignableFrom(type.getType());
}
};
代码示例来源:origin: org.jvnet.jaxb2_commons/jaxb2-basics-tools
@Override
public Boolean visit(JCMTypeVar type) {
return getType().isAssignableFrom(type.getType());
}
代码示例来源:origin: org.jvnet.jaxb2_commons/jaxb2-basics-tools
@Override
public Boolean visit(JCMClass type) {
return getType().isAssignableFrom(type.getType());
}
代码示例来源:origin: net.sourceforge.ccxjc/cc-xjc-plugin
public int compare( final CClassInfo o1, final CClassInfo o2 )
{
final JClass javaClass1 = o1.toType( this.outline, Aspect.IMPLEMENTATION );
final JClass javaClass2 = o2.toType( this.outline, Aspect.IMPLEMENTATION );
int ret = 0;
if ( !javaClass1.binaryName().equals( javaClass2.binaryName() ) )
{
if ( javaClass1.isAssignableFrom( javaClass2 ) )
{
ret = -1;
}
else if ( javaClass2.isAssignableFrom( javaClass1 ) )
{
ret = 1;
}
}
return ret;
}
代码示例来源:origin: net.sourceforge.ccxjc/cc-xjc-plugin
public int compare( final CTypeInfo o1, final CTypeInfo o2 )
{
final JType javaType1 = o1.toType( this.outline, Aspect.IMPLEMENTATION );
final JType javaType2 = o2.toType( this.outline, Aspect.IMPLEMENTATION );
int ret = 0;
if ( !javaType1.binaryName().equals( javaType2.binaryName() ) && javaType1 instanceof JClass
&& javaType2 instanceof JClass )
{
if ( ( (JClass) javaType1 ).isAssignableFrom( (JClass) javaType2 ) )
{
ret = -1;
}
else if ( ( (JClass) javaType2 ).isAssignableFrom( (JClass) javaType1 ) )
{
ret = 1;
}
}
return ret;
}
代码示例来源:origin: nokia/Avro-Schema-Generator
private AvroType avroFromSpecialTypes(JClass clazz, JPackage _package) {
String pName = makePackageName(_package);
if (clazz.isAssignableFrom(clazz.owner().ref(XMLGregorianCalendar.class))) {
specialSchemas.get(DateAvroType.class).add(pName);
return new DateAvroType(pName);
}
if (clazz.isAssignableFrom(clazz.owner().ref(BigInteger.class))) {
return AvroPrimitive.PrimitiveType.STRING.newInstance();
}
return null;
}
代码示例来源:origin: org.jvnet.jaxb2_commons/jaxb2-basics-tools
public Boolean visit(JCMTypeWildcard type) {
return getType().isAssignableFrom(type.getType()._extends());
};
};
代码示例来源:origin: com.sun.codemodel/codemodel
if( b!=null && this.isAssignableFrom(b) )
return true;
Iterator<JClass> itfs = derived._implements();
while( itfs.hasNext() )
if( this.isAssignableFrom(itfs.next()) )
return true;
代码示例来源:origin: javaee/jaxb-v2
if( b!=null && this.isAssignableFrom(b) )
return true;
Iterator<JClass> itfs = derived._implements();
while( itfs.hasNext() )
if( this.isAssignableFrom(itfs.next()) )
return true;
代码示例来源:origin: org.glassfish.metro/webservices-tools
if( b!=null && this.isAssignableFrom(b) )
return true;
Iterator<JClass> itfs = derived._implements();
while( itfs.hasNext() )
if( this.isAssignableFrom(itfs.next()) )
return true;
代码示例来源:origin: sun-jaxb/jaxb-xjc
if( b!=null && this.isAssignableFrom(b) )
return true;
Iterator itfs = derived._implements();
while( itfs.hasNext() )
if( this.isAssignableFrom((JClass)itfs.next()) )
return true;
代码示例来源:origin: com.unquietcode.tools.jcodemodel/codemodel
if( b!=null && this.isAssignableFrom(b) )
return true;
Iterator<JClass> itfs = derived._implements();
while( itfs.hasNext() )
if( this.isAssignableFrom(itfs.next()) )
return true;
代码示例来源:origin: bonitasoft/bonita-engine
private JMethod createQueryMethod(final JDefinedClass entity, final JDefinedClass targetClass, final String name,
final String returnTypeName) {
JType returnType;
if (returnTypeName.equals(entity.fullName())) {
returnType = entity;
} else {
returnType = getModel().ref(returnTypeName);
}
final JClass collectionType = getModel().ref(Collection.class.getName());
if (returnType instanceof JClass && collectionType.isAssignableFrom((JClass) returnType)) {
returnType = ((JClass) returnType).narrow(entity);
}
return addMethodSignature(targetClass, name, returnType);
}
代码示例来源:origin: bonitasoft/bonita-engine
private JMethod createQueryMethod(final JDefinedClass entity, final JDefinedClass targetClass, final String name,
final String returnTypeName) {
JType returnType;
if (returnTypeName.equals(entity.fullName())) {
returnType = entity;
} else {
returnType = getModel().ref(returnTypeName);
}
final JClass collectionType = getModel().ref(Collection.class.getName());
if (returnType instanceof JClass && collectionType.isAssignableFrom((JClass) returnType)) {
returnType = ((JClass) returnType).narrow(entity);
}
return addMethodSignature(targetClass, name, returnType);
}
代码示例来源:origin: eclipse-ee4j/glassfish
/**
* Figure out the concrete implementation class to be used.
*/
JType implType() {
if(cm.ref(Set.class).isAssignableFrom(collectionType))
return cm.ref(HashSet.class).narrow(itemType);
return cm.ref(ArrayList.class).narrow(itemType);
}
代码示例来源:origin: net.sourceforge.ccxjc/cc-xjc-plugin
public int compare( final CElementInfo o1, final CElementInfo o2 )
{
final JClass javaClass1;
final JClass javaClass2;
if ( this.hasClass )
{
javaClass1 = (JClass) o1.toType( this.outline, Aspect.IMPLEMENTATION );
javaClass2 = (JClass) o2.toType( this.outline, Aspect.IMPLEMENTATION );
}
else
{
javaClass1 = (JClass) o1.getContentType().toType( this.outline, Aspect.IMPLEMENTATION );
javaClass2 = (JClass) o2.getContentType().toType( this.outline, Aspect.IMPLEMENTATION );
}
int ret = 0;
if ( !javaClass1.binaryName().equals( javaClass2.binaryName() ) )
{
if ( javaClass1.isAssignableFrom( javaClass2 ) )
{
ret = -1;
}
else if ( javaClass2.isAssignableFrom( javaClass1 ) )
{
ret = 1;
}
}
return ret;
}
代码示例来源:origin: mklemm/jaxb2-rich-contract-plugin
private JInvocation generateImmutableListInstantiation(final PluginContext pluginContext, final JFieldRef fieldRef, final JType elementType) {
if (this.overrideCollectionClass == null) {
return pluginContext.unmodifiableList(fieldRef);
} else {
final JClass overrideCollection = pluginContext.codeModel.ref(this.overrideCollectionClass);
if (overrideCollection.isAssignableFrom(pluginContext.codeModel.ref(Collection.class))) {
return pluginContext.unmodifiableList(fieldRef);
} else {
return JExpr._new(overrideCollection.narrow(elementType)).arg(fieldRef);
}
}
}
}
代码示例来源:origin: mklemm/jaxb2-rich-contract-plugin
JMethod generateCreateCopyMethod(final boolean partial) {
final JDefinedClass definedClass = this.classOutline.implClass;
final JMethod cloneMethod = definedClass.method(JMod.PUBLIC, definedClass, this.pluginContext.copyMethodName);
final CopyGenerator cloneGenerator = this.pluginContext.createCopyGenerator(cloneMethod, partial);
cloneMethod.annotate(Override.class);
final JBlock body = cloneMethod.body();
final JVar newObjectVar;
final boolean superPartialCopyable = this.pluginContext.partialCopyableInterface.isAssignableFrom(definedClass._extends());
final boolean superCopyable = this.pluginContext.copyableInterface.isAssignableFrom(definedClass._extends());
if (superPartialCopyable) {
newObjectVar = body.decl(JMod.FINAL, definedClass, this.pluginContext.newObjectVarName, JExpr.cast(definedClass, cloneGenerator.generatePartialArgs(this.pluginContext.invoke(JExpr._super(), this.pluginContext.copyMethodName))));
} else if(superCopyable) {
newObjectVar = body.decl(JMod.FINAL, definedClass, this.pluginContext.newObjectVarName, JExpr.cast(definedClass, JExpr._super().invoke(this.pluginContext.copyMethodName)));
} else {
newObjectVar = body.decl(JMod.FINAL, definedClass, this.pluginContext.newObjectVarName, null);
final JBlock maybeTryBlock = this.pluginContext.catchCloneNotSupported(body, definedClass._extends());
maybeTryBlock.assign(newObjectVar, JExpr.cast(definedClass, JExpr._super().invoke(this.pluginContext.cloneMethodName)));
}
generateFieldCopyExpressions(cloneGenerator, body, newObjectVar, JExpr._this());
body._return(newObjectVar);
return cloneMethod;
}
内容来源于网络,如有侵权,请联系作者删除!