
org.simpleflatmapper.map.mapper.PropertyMapping Maven / Gradle / Ivy
package org.simpleflatmapper.map.mapper;
import org.simpleflatmapper.map.FieldKey;
import org.simpleflatmapper.reflect.meta.PropertyMeta;
public class PropertyMapping, D extends ColumnDefinition> {
private final PropertyMeta propertyMeta;
private final K columnKey;
private final D columnDefinition;
public PropertyMapping(PropertyMeta propertyMeta, K columnKey, D columnDefinition) {
super();
this.propertyMeta = propertyMeta;
this.columnKey = columnKey;
this.columnDefinition = columnDefinition;
}
public PropertyMapping propertyMeta(PropertyMeta propertyMeta) {
Object[] definedProperties = propertyMeta.getDefinedProperties();
D mergeColumnDefintion = definedProperties != null ? this.columnDefinition.newColumnDefinition(definedProperties) : this.columnDefinition;
return new PropertyMapping(propertyMeta, columnKey, mergeColumnDefintion);
}
public PropertyMeta getPropertyMeta() {
return propertyMeta;
}
public K getColumnKey() {
return columnKey;
}
public D getColumnDefinition() {
return columnDefinition;
}
@Override
public String toString() {
return "PropertyMapping{" +
"propertyMeta=" + propertyMeta +
", columnKey=" + columnKey +
", columnDefinition=" + columnDefinition +
'}';
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy