public AutoBeanType getPeer(JClassType beanType) { beanType = ModelUtils.ensureBaseType(beanType); return peers.get(beanType); }
public AutoBeanType getPeer(JClassType beanType) { beanType = ModelUtils.ensureBaseType(beanType); return peers.get(beanType); }
public AutoBeanType getPeer(JClassType beanType) { beanType = ModelUtils.ensureBaseType(beanType); return peers.get(beanType); }
/** * Given a JType, return the source name of the class that is most proximately * assignable to the type. This method will resolve type parameters as well as * wildcard types. */ public static String getQualifiedBaseSourceName(JType type) { return ensureBaseType(type).getErasedType().getQualifiedSourceName(); }
/** * Given a JType, return the binary name of the class that is most proximately * assignable to the type. This method will resolve type parameters as well as * wildcard types. */ public static String getQualifiedBaseBinaryName(JType type) { return ensureBaseType(type).getErasedType().getQualifiedBinaryName(); }
/** * Given a JType, return the source name of the class that is most proximately * assignable to the type. This method will resolve type parameters as well as * wildcard types. */ public static String getQualifiedBaseSourceName(JType type) { return ensureBaseType(type).getErasedType().getQualifiedSourceName(); }
/** * Given a JType, return the binary name of the class that is most proximately * assignable to the type. This method will resolve type parameters as well as * wildcard types. */ public static String getQualifiedBaseBinaryName(JType type) { return ensureBaseType(type).getErasedType().getQualifiedBinaryName(); }
@Override void examineTypeOnce(JClassType type) { // Need this to handle List<Foo>, Map<Foo> JParameterizedType parameterized = type.isParameterized(); if (parameterized != null) { for (JClassType arg : parameterized.getTypeArgs()) { maybeVisit(arg); } } JClassType base = ModelUtils.ensureBaseType(type); EntityProxyModel peer = model.getPeer(base); if (peer == null) { return; } peer.accept(this); }
@Override void examineTypeOnce(JClassType type) { // Need this to handle List<Foo>, Map<Foo> JParameterizedType parameterized = type.isParameterized(); if (parameterized != null) { for (JClassType arg : parameterized.getTypeArgs()) { maybeVisit(arg); } } JClassType base = ModelUtils.ensureBaseType(type); EntityProxyModel peer = model.getPeer(base); if (peer == null) { return; } peer.accept(this); }
private boolean methodAcceptsAutoBeanAsFirstParam(JClassType beanType, JMethod method) { JParameter[] params = method.getParameters(); if (params.length == 0) { return false; } JClassType paramAsClass = params[0].getType().isClassOrInterface(); // First parameter is a primitive if (paramAsClass == null) { return false; } // Check using base types to account for erasure semantics JParameterizedType expectedFirst = oracle.getParameterizedType( autoBeanInterface, new JClassType[] {ModelUtils.ensureBaseType(beanType)}); return expectedFirst.isAssignableTo(paramAsClass); }
private boolean methodAcceptsAutoBeanAsFirstParam(JClassType beanType, JMethod method) { JParameter[] params = method.getParameters(); if (params.length == 0) { return false; } JClassType paramAsClass = params[0].getType().isClassOrInterface(); // First parameter is a primitive if (paramAsClass == null) { return false; } // Check using base types to account for erasure semantics JParameterizedType expectedFirst = oracle.getParameterizedType( autoBeanInterface, new JClassType[] {ModelUtils.ensureBaseType(beanType)}); return expectedFirst.isAssignableTo(paramAsClass); }
private boolean methodAcceptsAutoBeanAsFirstParam(JClassType beanType, JMethod method) { JParameter[] params = method.getParameters(); if (params.length == 0) { return false; } JClassType paramAsClass = params[0].getType().isClassOrInterface(); // First parameter is a primitive if (paramAsClass == null) { return false; } // Check using base types to account for erasure semantics JParameterizedType expectedFirst = oracle.getParameterizedType( autoBeanInterface, new JClassType[] {ModelUtils.ensureBaseType(beanType)}); return expectedFirst.isAssignableTo(paramAsClass); }
private AutoBeanType getAutoBeanType(JClassType beanType) { beanType = ModelUtils.ensureBaseType(beanType); AutoBeanType toReturn = peers.get(beanType); if (toReturn == null) { AutoBeanType.Builder builder = new AutoBeanType.Builder(); builder.setOwnerFactory(this); builder.setPeerType(beanType); builder.setMethods(computeMethods(beanType)); builder.setInterceptor(findInterceptor(beanType)); if (noWrapTypes != null) { for (JClassType noWrap : noWrapTypes) { if (noWrap.isAssignableFrom(beanType)) { builder.setNoWrap(true); break; } } } toReturn = builder.build(); peers.put(beanType, toReturn); } return toReturn; }
private AutoBeanType getAutoBeanType(JClassType beanType) { beanType = ModelUtils.ensureBaseType(beanType); AutoBeanType toReturn = peers.get(beanType); if (toReturn == null) { AutoBeanType.Builder builder = new AutoBeanType.Builder(); builder.setOwnerFactory(this); builder.setPeerType(beanType); builder.setMethods(computeMethods(beanType)); builder.setInterceptor(findInterceptor(beanType)); if (noWrapTypes != null) { for (JClassType noWrap : noWrapTypes) { if (noWrap.isAssignableFrom(beanType)) { builder.setNoWrap(true); break; } } } toReturn = builder.build(); peers.put(beanType, toReturn); } return toReturn; }
private AutoBeanType getAutoBeanType(JClassType beanType) { beanType = ModelUtils.ensureBaseType(beanType); AutoBeanType toReturn = peers.get(beanType); if (toReturn == null) { AutoBeanType.Builder builder = new AutoBeanType.Builder(); builder.setOwnerFactory(this); builder.setPeerType(beanType); builder.setMethods(computeMethods(beanType)); builder.setInterceptor(findInterceptor(beanType)); if (noWrapTypes != null) { for (JClassType noWrap : noWrapTypes) { if (noWrap.isAssignableFrom(beanType)) { builder.setNoWrap(true); break; } } } toReturn = builder.build(); peers.put(beanType, toReturn); } return toReturn; }
sw.println("public Class<%1$s> getType() {return %1$s.class;}", ModelUtils.ensureBaseType( type.getPeerType()).getQualifiedSourceName());
sw.println("public Class<%1$s> getType() {return %1$s.class;}", ModelUtils.ensureBaseType( type.getPeerType()).getQualifiedSourceName());
sw.println("public Class<%1$s> getType() {return %1$s.class;}", ModelUtils.ensureBaseType( type.getPeerType()).getQualifiedSourceName());
@SuppressWarnings("unchecked") public static <T extends JType> T ensureBaseType(T maybeParameterized) { if (maybeParameterized.isArray() != null) { JArrayType array = maybeParameterized.isArray(); return (T) array.getOracle().getArrayType( ensureBaseType(array.getComponentType())); } if (maybeParameterized.isTypeParameter() != null) { return (T) maybeParameterized.isTypeParameter().getBaseType(); } if (maybeParameterized.isParameterized() != null) { return (T) maybeParameterized.isParameterized().getBaseType(); } if (maybeParameterized.isRawType() != null) { return (T) maybeParameterized.isRawType().getBaseType(); } if (maybeParameterized.isWildcard() != null) { return (T) maybeParameterized.isWildcard().getBaseType(); } return maybeParameterized; }
@SuppressWarnings("unchecked") public static <T extends JType> T ensureBaseType(T maybeParameterized) { if (maybeParameterized.isArray() != null) { JArrayType array = maybeParameterized.isArray(); return (T) array.getOracle().getArrayType( ensureBaseType(array.getComponentType())); } if (maybeParameterized.isTypeParameter() != null) { return (T) maybeParameterized.isTypeParameter().getBaseType(); } if (maybeParameterized.isParameterized() != null) { return (T) maybeParameterized.isParameterized().getBaseType(); } if (maybeParameterized.isRawType() != null) { return (T) maybeParameterized.isRawType().getBaseType(); } if (maybeParameterized.isWildcard() != null) { return (T) maybeParameterized.isWildcard().getBaseType(); } return maybeParameterized; }