List of usage examples for org.apache.commons.lang3 StringUtils capitalize
public static String capitalize(final String str)
Capitalizes a String changing the first letter to title case as per Character#toTitleCase(char) .
From source file:org.gvnix.addon.jpa.addon.audit.providers.envers.EnversRevisionLogMetadataBuilder.java
/** * @return gets or creates getProperty(name) method *///from www . j a v a 2 s . c o m private MethodMetadata getPropertyMethod() { // Define method parameter types List<AnnotatedJavaType> parameterTypes = helper.toAnnotedJavaType(JavaType.STRING); // Check if a method exist in type final MethodMetadata method = helper.methodExists(GET_PROPERTY_METHOD, parameterTypes); if (method != null) { // If it already exists, just return the method return method; } // Define method annotations (none in this case) List<AnnotationMetadataBuilder> annotations = new ArrayList<AnnotationMetadataBuilder>(); // Define method throws types (none in this case) List<JavaType> throwsTypes = new ArrayList<JavaType>(); // Define method parameter names (none in this case) List<JavaSymbolName> parameterNames = helper.toSymbolName("name"); // Create the method body InvocableMemberBodyBuilder body = new InvocableMemberBodyBuilder(); // return getProperty(name, new BeanWrapperImpl(Visit.class)); body.appendFormalLine(String.format("return %s(name, new %s(%s.class));", GET_PROPERTY_METHOD, helper.getFinalTypeName(BEAN_WRAPPER_IMPL), StringUtils.capitalize(context.getEntityName()))); // Use the MethodMetadataBuilder for easy creation of MethodMetadata MethodMetadataBuilder methodBuilder = new MethodMetadataBuilder(context.getMetadataId(), Modifier.PUBLIC + Modifier.STATIC, GET_PROPERTY_METHOD, AUDIT_PROPERTY_GENERIC, parameterTypes, parameterNames, body); methodBuilder.setAnnotations(annotations); methodBuilder.setThrowsTypes(throwsTypes); return methodBuilder.build(); // Build and return a MethodMetadata }
From source file:org.gvnix.addon.jpa.addon.audit.providers.envers.EnversRevisionLogMetadataBuilder.java
/** * {@inheritDoc}/*from ww w . j a v a 2s . c o m*/ */ @Override public void buildBodyFindFromDate(InvocableMemberBodyBuilder body, List<JavaSymbolName> parameterNames) { // AuditReader reader = auditReader(); body.appendFormalLine(String.format("%s reader = %s();", helper.getFinalTypeName(AUDIT_READER), AUDIT_READER_STATIC_METHOD)); // Long revision = (Long) reader.getRevisionNumberForDate(atDate); body.appendFormalLine(String.format("%s revision = (Long) reader.getRevisionNumberForDate(%s);", helper.getFinalTypeName(JavaType.LONG_OBJECT), parameterNames.get(1))); // if (revision == null) { body.appendFormalLine("if (revision == null) {"); body.indent(); // return null; body.appendFormalLine("return null;"); // } body.indentRemove(); body.appendFormalLine("}"); // return reader.find(Visit.class, id, revision); body.appendFormalLine(String.format("return reader.find(%s.class, %s, revision);", StringUtils.capitalize(context.getEntityName()), parameterNames.get(0))); }
From source file:org.gvnix.addon.jpa.addon.audit.providers.envers.EnversRevisionLogMetadataBuilder.java
/** * {@inheritDoc}// w w w .j a v a2 s .c o m */ @Override public void buildBodyFindFromRevision(InvocableMemberBodyBuilder body, List<JavaSymbolName> parameterNames) { // AuditReader reader = auditReader(); body.appendFormalLine(String.format("%s reader = %s();", helper.getFinalTypeName(AUDIT_READER), AUDIT_READER_STATIC_METHOD)); // return reader.find(Visit.class, id, revision); body.appendFormalLine(String.format("return reader.find(%s.class, %s, %s);", StringUtils.capitalize(context.getEntityName()), parameterNames.get(0), parameterNames.get(1))); }
From source file:org.gvnix.addon.jpa.addon.audit.providers.envers.EnversRevisionLogMetadataBuilder.java
/** * {@inheritDoc}// www.j a v a 2 s.c o m */ @Override public void buildBodyFindRevision(InvocableMemberBodyBuilder body, List<JavaSymbolName> parameterNames) { // AuditReader reader = auditReader(); body.appendFormalLine(String.format("%s reader = %s();", helper.getFinalTypeName(AUDIT_READER), AUDIT_READER_STATIC_METHOD)); // BeanWrapperImpl beanWrapper = new BeanWrapperImpl(Visit.class); String capitalizeEntityName = StringUtils.capitalize(context.getEntityName()); body.appendFormalLine( String.format("%s beanWrapper = new %s(%s.class);", helper.getFinalTypeName(BEAN_WRAPPER_IMPL), helper.getFinalTypeName(BEAN_WRAPPER_IMPL), capitalizeEntityName)); body.appendFormalLine(""); body.appendFormalLine("// Get revisions list"); // AuditQuery query = // reader.createQuery().forRevisionsOfEntity(Visit.class, false, true); body.appendFormalLine( String.format("%s query = reader.createQuery().forRevisionsOfEntity(%s.class, false, true);", helper.getFinalTypeName(AUDIT_QUERY), capitalizeEntityName)); // if (fromRevision != null && toRevision != null) { body.appendFormalLine( String.format("if (%s != null && %s != null) {", parameterNames.get(0), parameterNames.get(1))); body.indent(); // query.add(AuditEntity.revisionNumber().between(fromRevision, // toRevision)); body.appendFormalLine(String.format("query.add(%s.revisionNumber().between(%s, %s));", helper.getFinalTypeName(AUDIT_ENTITY), parameterNames.get(0), parameterNames.get(1))); // } else if (fromRevision != null) { body.indentRemove(); body.appendFormalLine(String.format("} else if (%s != null) {", parameterNames.get(0))); body.indent(); // query.add(AuditEntity.revisionNumber().ge(fromRevision)); body.appendFormalLine(String.format("query.add(%s.revisionNumber().ge(%s));", helper.getFinalTypeName(AUDIT_ENTITY), parameterNames.get(0))); // } else if (toRevision != null) { body.indentRemove(); body.appendFormalLine(String.format("} else if (%s != null) {", parameterNames.get(1))); body.indent(); // query.add(AuditEntity.revisionNumber().le(toRevision)); body.appendFormalLine(String.format("query.add(%s.revisionNumber().le(%s));", helper.getFinalTypeName(AUDIT_ENTITY), parameterNames.get(1))); // } (else if) body.indentRemove(); body.appendFormalLine("}"); body.appendFormalLine(""); // AuditConjunction criteria = null; body.appendFormalLine(String.format("%s criteria = null;", helper.getFinalTypeName(AUDIT_CONJUNTION))); body.appendFormalLine(""); // if (filterMap != null && !filterMap.isEmpty()) { body.appendFormalLine( String.format("if (%s != null && !%s.isEmpty()) {", parameterNames.get(2), parameterNames.get(2))); body.indent(); // criteria = AuditEntity.conjunction(); body.appendFormalLine(String.format("criteria = %s.conjunction();", helper.getFinalTypeName(AUDIT_ENTITY))); // for (Entry<String, Object> entry : filterMap.entrySet()) { body.appendFormalLine(String.format("for (%s entry : %s.entrySet()) {", helper.getFinalTypeName(ENTRY_STRING_OBJECT), parameterNames.get(2))); body.indent(); // criteria.add(((AuditProperty<Object>) // getProperty(entry.getKey(),beanWrapper)).eq(entry.getValue())); body.appendFormalLine( String.format("criteria.add(((%s) %s(entry.getKey(),beanWrapper)).eq(entry.getValue()));", helper.getFinalTypeName(AUDIT_PROPERTY_OBJECT), GET_PROPERTY_METHOD)); // } (for) body.indentRemove(); body.appendFormalLine("}"); // query.add(criteria); body.appendFormalLine("query.add(criteria);"); // } (if) body.indentRemove(); body.appendFormalLine("}"); body.appendFormalLine(""); // Prepare order body.appendFormalLine("// Prepare order"); // AuditProperty<?> orderProp; body.appendFormalLine(String.format("%s<?> orderProp;", helper.getFinalTypeName(AUDIT_PROPERTY))); // AuditOrder orderObj; body.appendFormalLine(String.format("%s orderObj;", helper.getFinalTypeName(AUDIT_ORDER))); // if (order != null && !order.isEmpty()) { body.appendFormalLine( String.format("if (%s != null && !%s.isEmpty()) {", parameterNames.get(3), parameterNames.get(3))); body.indent(); // for (String orderStr : %s) { body.appendFormalLine(String.format("for (String orderStr : order) {", parameterNames.get(3))); body.indent(); // if (StringUtils.contains(orderStr, "|")) { body.appendFormalLine( String.format("if (%s.contains(orderStr, \"|\")) {", helper.getFinalTypeName(STRING_UTILS))); body.indent(); // orderProp = getProperty(StringUtils.substringBefore(orderStr, // "|"),beanWrapper); body.appendFormalLine(String.format("orderProp = %s(%s.substringBefore(orderStr, \"|\"),beanWrapper);", GET_PROPERTY_METHOD, helper.getFinalTypeName(STRING_UTILS))); // if ("ASC".equals(StringUtils.substringAfter(orderStr, // "|").toUpperCase())) { body.appendFormalLine( String.format("if (\"ASC\".equals(%s.substringAfter(orderStr, \"|\").toUpperCase())) {", helper.getFinalTypeName(STRING_UTILS))); body.indent(); // orderObj = orderProp.asc(); body.appendFormalLine("orderObj = orderProp.asc();"); // } else if ("DESC".equals(StringUtils.substringAfter(orderStr, // "|").toUpperCase())) { body.indentRemove(); body.appendFormalLine( String.format("} else if (\"DESC\".equals(%s.substringAfter(orderStr, \"|\").toUpperCase())) {", helper.getFinalTypeName(STRING_UTILS))); body.indent(); // orderObj = orderProp.desc(); body.appendFormalLine("orderObj = orderProp.desc();"); // } else { body.indentRemove(); body.appendFormalLine("} else {"); body.indent(); // throw new // IllegalArgumentException("Invalid order '".concat(orderStr).concat("'")); body.appendFormalLine( "throw new IllegalArgumentException(\"Invalid order '\".concat(orderStr).concat(\"'\"));"); // } (if ("ASC".equals... body.indentRemove(); body.appendFormalLine("}"); // } else { [if (SringUtils.contains... body.indentRemove(); body.appendFormalLine("} else {"); body.indent(); // orderObj = AuditEntity.property(orderStr).asc(); body.appendFormalLine( String.format("orderObj = %s.property(orderStr).asc();", helper.getFinalTypeName(AUDIT_ENTITY))); // } (if [if (SringUtils.contains... body.indentRemove(); body.appendFormalLine("}"); // query.addOrder(orderObj); body.appendFormalLine("query.addOrder(orderObj);"); // } (for body.indentRemove(); body.appendFormalLine("}"); // } (if order != null.. body.indentRemove(); body.appendFormalLine("}"); body.appendFormalLine(""); // // start modifier body.appendFormalLine("// start modifier"); // if (start != null) { body.appendFormalLine(String.format("if (%s != null) {", parameterNames.get(4))); body.indent(); // query.setFirstResult(start); body.appendFormalLine(String.format("query.setFirstResult(%s);", parameterNames.get(4))); // } body.indentRemove(); body.appendFormalLine("}"); // if (limit != null) { body.appendFormalLine(String.format("if (%s != null) {", parameterNames.get(5))); body.indent(); // query.setMaxResults(limit); body.appendFormalLine(String.format("query.setMaxResults(%s);", parameterNames.get(5))); // } body.indentRemove(); body.appendFormalLine("}"); // List<Object[]> revisions = query.getResultList(); body.appendFormalLine( String.format("%s revisions = query.getResultList();", helper.getFinalTypeName(LIST_OBJECT_ARRAY))); // return VisitRevision.createList(revisions, reader); body.appendFormalLine(String.format("return %s.%s(revisions, reader);", context.getRevisonItemTypeName(), CREATE_ITEM_LIST_METHOD)); }
From source file:org.gvnix.addon.jpa.addon.audit.providers.envers.EnversRevisionLogMetadataBuilder.java
/** * Builds method body (implementation) of * XXXRevision.createList(list,reader)/*from w ww .ja v a 2 s . c om*/ * * @param body * @param context * @param parameterNames */ private void buildRevisionItemCreateListMethodBody(InvocableMemberBodyBuilder body, List<JavaSymbolName> parameterNames) { JavaType arrayListRevison = new JavaType(ARRAYLIST.getFullyQualifiedTypeName(), 0, DataType.TYPE, null, Arrays.asList(context.getRevisonItemType())); // ArrayList<VisitRevision> newList = new // ArrayList<VisitRevision>(list.size()); body.appendFormalLine( String.format("%s newList = new %s(%s.size());", helper.getFinalTypeName(arrayListRevison), helper.getFinalTypeName(arrayListRevison), parameterNames.get(0))); // for (Object[] item : list) { body.appendFormalLine(String.format("for (%s item : %s) {", helper.getFinalTypeName(OBJECT_ARRAY), parameterNames.get(0))); body.indent(); // newList.add(new VisitRevision((Visit) item[0], // (HistoryRevisionEntity) item[1], (RevisionType) item[2])); body.appendFormalLine(String.format("newList.add(new %s((%s) item[0], (%s) item[1], (%s) item[2]));", helper.getFinalTypeName(context.getRevisonItemType()), StringUtils.capitalize(context.getEntityName()), helper.getFinalTypeName(revisionEntityMetadata.getType()), helper.getFinalTypeName(REVISON_TYPE))); // } body.indentRemove(); body.appendFormalLine("}"); // return Collections.unmodifiableList(newList); body.appendFormalLine( String.format("return %s.unmodifiableList(newList);", helper.getFinalTypeName(COLLECTIONS))); }
From source file:org.gvnix.addon.jpa.addon.batch.JpaBatchMetadata.java
/** * Builds body method for <code>findByValues</code> method. <br> * This method generates a item List based on a list of entity values. * //from w w w . j a v a 2 s.c o m * @param bodyBuilder */ private void buildFindByValuesMethodBody(InvocableMemberBodyBuilder bodyBuilder) { // bodyBuilder.appendFormalLine(""); // // // if there is a filter bodyBuilder.appendFormalLine("// if there is a filter"); // if (propertyValues != null && !propertyValues.isEmpty()) { bodyBuilder.appendFormalLine("if (propertyValues != null && !propertyValues.isEmpty()) {"); bodyBuilder.indent(); // // Prepare a predicate bodyBuilder.appendFormalLine("// Prepare a predicate"); // BooleanBuilder baseFilterPredicate = new BooleanBuilder(); bodyBuilder.appendFormalLine(String.format("%s baseFilterPredicate = new %s();", helper.getFinalTypeName(QDSL_BOOLEAN_BUILDER), helper.getFinalTypeName(QDSL_BOOLEAN_BUILDER))); bodyBuilder.appendFormalLine(""); // // Base filter. Using BooleanBuilder, a cascading builder for bodyBuilder.appendFormalLine("// Base filter. Using BooleanBuilder, a cascading builder for"); // // Predicate expressions bodyBuilder.appendFormalLine("// Predicate expressions"); // PathBuilder<Visit> entity = new PathBuilder<Visit>(Visit.class, // "entity"); bodyBuilder.appendFormalLine(String.format("%s<%s> entity = new %s<%s>(%s.class, \"entity\");", helper.getFinalTypeName(QDSL_PATH_BUILDER), helper.getFinalTypeName(entity), helper.getFinalTypeName(QDSL_PATH_BUILDER), helper.getFinalTypeName(entity), helper.getFinalTypeName(entity))); bodyBuilder.appendFormalLine(""); // // // Build base filter bodyBuilder.appendFormalLine("// Build base filter"); // for (String key : propertyMap.keySet()) { bodyBuilder.appendFormalLine("for (String key : propertyValues.keySet()) {"); bodyBuilder.indent(); // baseFilterPredicate.and(entity.get(key).eq(propertyMap.get(key))); bodyBuilder.appendFormalLine("baseFilterPredicate.and(entity.get(key).eq(propertyValues.get(key)));"); // } bodyBuilder.indentRemove(); bodyBuilder.appendFormalLine("}"); bodyBuilder.appendFormalLine(""); // // // Create a query with filter bodyBuilder.appendFormalLine("// Create a query with filter"); // JPAQuery query = new JPAQuery(Visit.entityManager()); bodyBuilder.appendFormalLine( String.format("%s query = new %s(%s.entityManager());", helper.getFinalTypeName(QDSL_JPA_QUERY), helper.getFinalTypeName(QDSL_JPA_QUERY), helper.getFinalTypeName(entity))); // query = query.from(entity); bodyBuilder.appendFormalLine("query = query.from(entity);"); // bodyBuilder.appendFormalLine(""); // // execute query bodyBuilder.appendFormalLine("// execute query"); // return query.where(baseFilterPredicate).list(entity); bodyBuilder.appendFormalLine("return query.where(baseFilterPredicate).list(entity);"); // } bodyBuilder.indentRemove(); bodyBuilder.appendFormalLine("}"); bodyBuilder.appendFormalLine(""); // // // no filter: return all elements bodyBuilder.appendFormalLine("// no filter: return all elements"); // return Visit.findAllVisits(); bodyBuilder.appendFormalLine(String.format("return %s.findAll%s();", helper.getFinalTypeName(entity), StringUtils.capitalize(entityPlural))); }
From source file:org.gvnix.addon.jpa.addon.geo.providers.hibernatespatial.GvNIXEntityMapLayerMetadata.java
/** * Create a method to filter by two or more geometry fields from an entity * /* w w w. j a v a2s . co m*/ * @param entity * @param finders * @param plural * @param geoFieldNames * @return */ private MethodMetadata getfindAllTheEntityByFilters(JavaType entity, String finders[], String plural, Map<JavaSymbolName, AnnotationAttributeValue<Integer>> geoFields) { // Define method parameter types List<AnnotatedJavaType> parameterTypes = new ArrayList<AnnotatedJavaType>(); // Adding parameter types parameterTypes.add(AnnotatedJavaType .convertFromJavaType(new JavaType("org.gvnix.jpa.geo.hibernatespatial.util.GeometryFilter"))); parameterTypes.add(AnnotatedJavaType.convertFromJavaType( new JavaType("java.lang.Class", 0, DataType.TYPE, null, Arrays.asList(new JavaType("T"))))); parameterTypes.add(AnnotatedJavaType.convertFromJavaType(new JavaType(MAP.getFullyQualifiedTypeName(), 0, DataType.TYPE, null, Arrays.asList(JavaType.STRING, JavaType.OBJECT)))); // Getting method name StringBuilder methodNameBuilder = new StringBuilder(String.format("findAll%sBy", plural)); for (String field : finders) { methodNameBuilder.append(StringUtils.capitalize(field).concat("Or")); } JavaSymbolName methodName = new JavaSymbolName( methodNameBuilder.substring(0, methodNameBuilder.length() - 2)); // Check if a method with the same signature already exists in the // target type final MethodMetadata method = methodExists(methodName, parameterTypes); if (method != null) { // If it already exists, just return the method and omit its // generation via the ITD return method; } // Define method annotations List<AnnotationMetadataBuilder> annotations = new ArrayList<AnnotationMetadataBuilder>(); // Define method throws types List<JavaType> throwsTypes = new ArrayList<JavaType>(); // Define method parameter names List<JavaSymbolName> parameterNames = new ArrayList<JavaSymbolName>(); parameterNames.add(new JavaSymbolName("geomFilter")); parameterNames.add(new JavaSymbolName("klass")); parameterNames.add(new JavaSymbolName("hints")); // Create the method body InvocableMemberBodyBuilder bodyBuilder = new InvocableMemberBodyBuilder(); buildfindAllTheEntityByGeoFiltersMethodBody(entity, plural, finders, bodyBuilder, geoFields); // Return type JavaType responseEntityJavaType = new JavaType("java.util.List", 0, DataType.TYPE, null, Arrays.asList(new JavaType("T"))); // Use the MethodMetadataBuilder for easy creation of MethodMetadata MethodMetadataBuilder methodBuilder = new MethodMetadataBuilder(getId(), Modifier.PUBLIC + Modifier.STATIC, methodName, responseEntityJavaType, parameterTypes, parameterNames, bodyBuilder); methodBuilder.setAnnotations(annotations); methodBuilder.setThrowsTypes(throwsTypes); methodBuilder.setGenericDefinition("T"); return methodBuilder.build(); // Build and return a MethodMetadata // instance }
From source file:org.gvnix.addon.jpa.addon.geo.providers.hibernatespatial.GvNIXEntityMapLayerMetadata.java
/** * Create a method to filter by a single geometry field * /*from ww w . j a va 2s. c o m*/ * @param entity * @param finder * @param plural * @param geoFieldNames * @return */ private MethodMetadata getfindAllTheEntityByGeomFilter(JavaType entity, String finder, String plural, Map<JavaSymbolName, AnnotationAttributeValue<Integer>> geoFields) { // Define method parameter types List<AnnotatedJavaType> parameterTypes = new ArrayList<AnnotatedJavaType>(); // Adding parameter types parameterTypes.add(AnnotatedJavaType .convertFromJavaType(new JavaType("org.gvnix.jpa.geo.hibernatespatial.util.GeometryFilter"))); parameterTypes.add(AnnotatedJavaType.convertFromJavaType( new JavaType("java.lang.Class", 0, DataType.TYPE, null, Arrays.asList(new JavaType("T"))))); parameterTypes.add(AnnotatedJavaType.convertFromJavaType(new JavaType(MAP.getFullyQualifiedTypeName(), 0, DataType.TYPE, null, Arrays.asList(JavaType.STRING, JavaType.OBJECT)))); // Getting method name JavaSymbolName methodName = new JavaSymbolName( String.format("findAll%sBy%s", plural, StringUtils.capitalize(finder))); // Check if a method with the same signature already exists in the // target type final MethodMetadata method = methodExists(methodName, parameterTypes); if (method != null) { // If it already exists, just return the method and omit its // generation via the ITD return method; } // Define method annotations List<AnnotationMetadataBuilder> annotations = new ArrayList<AnnotationMetadataBuilder>(); // Define method throws types List<JavaType> throwsTypes = new ArrayList<JavaType>(); // Define method parameter names List<JavaSymbolName> parameterNames = new ArrayList<JavaSymbolName>(); parameterNames.add(new JavaSymbolName("geomFilter")); parameterNames.add(new JavaSymbolName("klass")); parameterNames.add(new JavaSymbolName("hints")); // Create the method body InvocableMemberBodyBuilder bodyBuilder = new InvocableMemberBodyBuilder(); buildfindAllTheEntityByGeomFilterMethodBody(entity, plural, finder, bodyBuilder, geoFields); // Return type JavaType responseEntityJavaType = new JavaType("java.util.List", 0, DataType.TYPE, null, Arrays.asList(new JavaType("T"))); // Use the MethodMetadataBuilder for easy creation of MethodMetadata MethodMetadataBuilder methodBuilder = new MethodMetadataBuilder(getId(), Modifier.PUBLIC + Modifier.STATIC, methodName, responseEntityJavaType, parameterTypes, parameterNames, bodyBuilder); methodBuilder.setAnnotations(annotations); methodBuilder.setThrowsTypes(throwsTypes); methodBuilder.setGenericDefinition("T"); return methodBuilder.build(); // Build and return a MethodMetadata // instance }
From source file:org.gvnix.flex.as.model.ActionScriptSymbolName.java
/** * @return the symbol name, capitalising the first letter (never null or * empty)//from www . j av a2 s. c o m */ public String getSymbolNameCapitalisedFirstLetter() { return StringUtils.capitalize(this.symbolName); }
From source file:org.gvnix.flex.as.model.ActionScriptSymbolName.java
/** * @return the symbol name in human readable form *//*from w ww. j a va 2 s.co m*/ public String getReadableSymbolName() { Pattern p = Pattern.compile("[A-Z][^A-Z]*"); Matcher m = p.matcher(StringUtils.capitalize(this.symbolName)); StringBuilder string = new StringBuilder(); while (m.find()) { string.append(m.group()).append(" "); } return string.toString().trim(); }