/** * Returns a {@link JavaType} for a _wrapperType_ with wildcard: * JavaType.wrapperWilcard(JavaType.LIST) return List<?> * * @param elementType the type of element in the list (required) * @return a non-<code>null</code> type * @since 2.0.0 */ public static JavaType wrapperWilcard(final JavaType wrapperType) { return wrapperOf(wrapperType, WILDCARD_NEITHER); }
/** * Returns a {@link JavaType} for a _wrapperType_ with generic: * JavaType.wrapperWilcard(JavaType.LIST) return List<T> * * @param elementType the type of element in the list (required) * @return a non `null` type * @since 2.0.0 */ public static JavaType wrapperGenericType(final JavaType wrapperType) { return wrapperOf(wrapperType, GENERIC_TYPE); }
/** * Return JPQLQuery JavaType for required entity * * @param entityType * @return */ private JavaType getJPQLQueryFor(JavaType entityType) { return JavaType.wrapperOf(QUERYDSL_JPQLQUERY, entityType); }
parameterTypes.add(AnnotatedJavaType.convertFromJavaType(JavaType.wrapperOf(JavaType.LIST, identifierType))); parameterNames.add(new JavaSymbolName("ids"));
/** * Build a MethodLinkBuilderFactory field of provided type * * @param fieldName * @return FieldMetadata */ private FieldMetadata getMethodLinkBuilderFactoryField(String fieldName, JavaType controller) { FieldMetadataBuilder field = new FieldMetadataBuilder(getId(), Modifier.PRIVATE, new JavaSymbolName(fieldName), JavaType.wrapperOf(SpringletsJavaType.SPRINGLETS_METHOD_LINK_BUILDER_FACTORY, controller), null); return field.build(); }
/** * Builds a method which returns the class of entity JavaType. * * @return MethodMetadataBuilder */ private MethodMetadata getEntityTypeGetterMethod() { List<JavaSymbolName> parameterNames = new ArrayList<JavaSymbolName>(); List<AnnotatedJavaType> parameterTypes = new ArrayList<AnnotatedJavaType>(); MethodMetadata existingMethod = getGovernorMethod(GET_ENTITY_TYPE_METHOD_NAME, AnnotatedJavaType.convertFromAnnotatedJavaTypes(parameterTypes)); if (existingMethod != null) { return existingMethod; } InvocableMemberBodyBuilder bodyBuilder = new InvocableMemberBodyBuilder(); // return ENTITY_TYPE.class; bodyBuilder.appendFormalLine("return %s.class;", this.entity.getNameIncludingTypeParameters(false, importResolver)); // Use the MethodMetadataBuilder for easy creation of MethodMetadata MethodMetadataBuilder methodBuilder = new MethodMetadataBuilder(getId(), Modifier.PUBLIC, GET_ENTITY_TYPE_METHOD_NAME, JavaType.wrapperOf(JavaType.CLASS, this.entity), parameterTypes, parameterNames, bodyBuilder); // Build and return a MethodMetadata instance return methodBuilder.build(); }
/** * Builds a method which returns the class of the entity identifier JavaType. * * @return MethodMetadataBuilder */ private MethodMetadata getIdentifierTypeGetterMethod() { List<JavaSymbolName> parameterNames = new ArrayList<JavaSymbolName>(); List<AnnotatedJavaType> parameterTypes = new ArrayList<AnnotatedJavaType>(); MethodMetadata existingMethod = getGovernorMethod(GET_ID_TYPE_METHOD_NAME, AnnotatedJavaType.convertFromAnnotatedJavaTypes(parameterTypes)); if (existingMethod != null) { return existingMethod; } InvocableMemberBodyBuilder bodyBuilder = new InvocableMemberBodyBuilder(); // return IDENTIFIER_TYPE.class; bodyBuilder.appendFormalLine("return %s.class;", getNameOfJavaType(this.entityIdentifierType)); // Use the MethodMetadataBuilder for easy creation of MethodMetadata MethodMetadataBuilder methodBuilder = new MethodMetadataBuilder(getId(), Modifier.PUBLIC, GET_ID_TYPE_METHOD_NAME, JavaType.wrapperOf(JavaType.CLASS, this.serviceMetadata.getIdType()), parameterTypes, parameterNames, bodyBuilder); // Build and return a MethodMetadata instance return methodBuilder.build(); }
private MethodMetadata getControllerClassMethod() { // Define methodName final JavaSymbolName methodName = GET_CONTROLLER_CLASS_METHOD_NAME; // Define method argument types List<AnnotatedJavaType> parameterTypes = new ArrayList<AnnotatedJavaType>(); // Return method if already exists MethodMetadata existingMethod = getGovernorMethod(methodName, AnnotatedJavaType.convertFromAnnotatedJavaTypes(parameterTypes)); if (existingMethod != null) { return existingMethod; } InvocableMemberBodyBuilder bodyBuilder = new InvocableMemberBodyBuilder(); bodyBuilder.appendFormalLine("return %s.class;", getNameOfJavaType(this.controller)); // return CONTROLLER_CLASS; MethodMetadataBuilder methodBuilder = new MethodMetadataBuilder(getId(), Modifier.PUBLIC, methodName, JavaType.wrapperOf( JavaType.CLASS, this.controller), null); // Set method body methodBuilder.setBodyBuilder(bodyBuilder); return methodBuilder.build(); }
JavaType returnType = JavaType.wrapperOf(RESPONSE_ENTITY, serviceReturnType);
JavaType returnType = JavaType.wrapperOf(RESPONSE_ENTITY, serviceReturnType);
requestParamIdsAnnotation.addStringAttribute("value", "ids"); parameterTypes .add(new AnnotatedJavaType(JavaType.wrapperOf(JavaType.LIST, findAllByIdsInMethod .getParameterTypes().get(0).getJavaType().getBaseType()), requestParamIdsAnnotation .build())); JavaType.wrapperOf(SpringletsJavaType.SPRINGLETS_CONVERTED_DATATABLES_DATA, serviceReturnType.getParameters().get(0)); final JavaType returnType = JavaType.wrapperOf(RESPONSE_ENTITY, dataReturnType);
ensureGovernorImplements(JavaType.wrapperOf(SpringletsJavaType.SPRINGLETS_METHOD_LINK_FACTORY, this.controller));
new AnnotationMetadataBuilder(REQUEST_PARAM); requestParamIdsAnnotation.addStringAttribute("value", "ids"); parameterTypes.add(new AnnotatedJavaType(JavaType.wrapperOf(JavaType.LIST, entityMetadata .getCurrentIndentifierField().getFieldType()), requestParamIdsAnnotation.build())); parameterTypes.add(DATATABLES_COLUMNS_PARAM); JavaType.wrapperOf(RESPONSE_ENTITY, JavaType.wrapperOf( SpringletsJavaType.SPRINGLETS_CONVERTED_DATATABLES_DATA, defaultReturnType));
cidBuilder.addExtendsTypes(JavaType.wrapperOf(JSON_OBJECT_DESERIALIZER, entity));
cidBuilder.addExtendsTypes(JavaType.wrapperOf(repositoryType, domainType, entityMetadata .getCurrentIndentifierField().getFieldType()));