private <P> void setColumnInfo(FieldDescriptorImpl<BEAN, P> classField) { classField.setColumnInfo(new InferedColumnName(classField.getFieldName())); findAnnotation(classField, Column.class) .ifPresent(column -> { classField.setColumnInfo(new AnnotationColumnInfo(column.name())); }); }
private String getDbColumn(final String alias, final String field) { String dbColumn = registeredClass.get(alias).getFieldDescriptorByJavaName(field).getColumnInfo().getDBColumnName(); if (dbColumn.isEmpty()) { throw new JpoWrongPropertyNameException("Field with name [" + field + "] is not present or ignored for alias [" + alias + "]"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ } return dbColumn; }
private String getDbColumn(final String alias, final String field) { String dbColumn = registeredClass.get(alias).getFieldDescriptorByJavaName(field).getColumnInfo().getDBColumnName(); if (dbColumn.isEmpty()) { throw new JpoWrongPropertyNameException("Field with name [" + field + "] is not present or ignored for alias [" + alias + "]"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ } return dbColumn; }
private String columnToCommaSepareted(final Set<String> fieldNames) { List<String> queryParameters = new ArrayList<String>(); for (String field : fieldNames) { FieldDescriptor<BEAN, ?> classField = classDescriptor.getFieldDescriptorByJavaName(field); final AColumnValueGenerator columnValueGenerator = ColumnValueGeneratorFactory.getColumnValueGenerator( classField, dbProfile, !useGenerators ); final String queryParameter = columnValueGenerator.insertColumn(classField.getColumnInfo().getDBColumnName()); if (queryParameter.length()>0) { queryParameters.add(queryParameter); } } return toQueryString(queryParameters); }
if (!hasGenerator) { allGeneratedColumnJavaNamesList.add(javaFieldName); allGeneratedColumnDBNamesList.add(entry.getValue().getColumnInfo().getDBColumnName()); this.logger.debug("Field [" + javaFieldName + "] is an autogenerated field"); //$NON-NLS-1$ //$NON-NLS-2$ hasGenerator = true;
private <P> FieldDescriptorImpl<BEAN, P> buildClassField(final ClassDescriptorImpl<BEAN> classMap, final Field field, final List<Method> methods, final Class<P> fieldClass) { final Class<?> realClass = field.getType(); Class<P> processedClass = (Class<P>) field.getType(); // In future this should be more generic. Not required at the moment if (isOptional(realClass)) { processedClass = getGenericClass(field.getGenericType()); } final FieldDescriptorImpl<BEAN, P> classField = new FieldDescriptorImpl<>(field.getName(), processedClass, buildPropertyFieldWrapper(field), getGetter(field, methods), getSetter(field, methods, classMap.getMappedClass()) ); setIgnored(classField); setColumnInfo(classField); setIdentifier(classField); setGeneratorInfo(classField); setVersionInfo(classField); setJsonInfo(classField); this.logger.debug("DB column [" + classField.getColumnInfo().getDBColumnName() + "]" + " will be associated with object field [" //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + classField.getFieldName() + "]"); //$NON-NLS-1$ return classField; }
columnValueGenerator.setGeneratedColumnName(classField.getColumnInfo().getDBColumnName()); return columnValueGenerator;