![JAR search and dependency download from the Maven repository](/logo.png)
org.simpleflatmapper.map.mapper.AbstractColumnNameDiscriminatorMapperFactory Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of sfm-map Show documentation
Show all versions of sfm-map Show documentation
Java library to map flat record - ResultSet, csv - to java object with minimum configuration and low footprint.
package org.simpleflatmapper.map.mapper;
import org.simpleflatmapper.map.CaseInsensitiveFieldKeyNamePredicate;
import org.simpleflatmapper.map.FieldKey;
import org.simpleflatmapper.map.getter.ContextualGetterFactory;
import org.simpleflatmapper.util.CheckedBiFunction;
import org.simpleflatmapper.util.Consumer;
import org.simpleflatmapper.util.Predicate;
import java.lang.reflect.Type;
public class AbstractColumnNameDiscriminatorMapperFactory<
K extends FieldKey,
MF extends AbstractColumnNameDiscriminatorMapperFactory, S> extends AbstractMapperFactory {
private final DiscriminatorNamedGetterFactory columnNameGetterFactory;
public AbstractColumnNameDiscriminatorMapperFactory(AbstractMapperFactory config, DiscriminatorNamedGetterFactory columnNameGetterFactory) {
super(config);
this.columnNameGetterFactory = columnNameGetterFactory;
}
public AbstractColumnNameDiscriminatorMapperFactory(AbstractColumnDefinitionProvider columnDefinitions, ColumnDefinition identity, DiscriminatorNamedGetterFactory columnNameGetterFactory, ContextualGetterFactory getterFactory) {
super(columnDefinitions, identity, getterFactory);
this.columnNameGetterFactory = columnNameGetterFactory;
}
/**
* @deprecated use {@link AbstractMapperFactory#discriminator(Type)} dsl
*/
@Deprecated
public MF discriminator(Class commonType, String discriminatorColumn, Consumer> consumer) {
return discriminator((Type)commonType, discriminatorColumn, consumer);
}
/**
* @deprecated use {@link AbstractMapperFactory#discriminator(Type)} dsl
*/
public MF discriminator(Type commonType, String discriminatorColumn, Consumer> consumer) {
return discriminator(commonType, discriminatorColumn, Object.class, consumer);
}
/**
* @deprecated use {@link AbstractMapperFactory#discriminator(Type)} dsl
*/
public MF discriminator(Class commonType, String discriminatorColumn, Class discriminatorType, Consumer> consumer) {
return discriminator((Type)commonType, discriminatorColumn, discriminatorType, consumer);
}
/**
* @deprecated use {@link AbstractMapperFactory#discriminator(Type)} dsl
*/
public MF discriminator(Type commonType, String discriminatorColumn, final Class discriminatorType, Consumer> consumer) {
return this.discriminator(commonType).onColumn(discriminatorColumn, discriminatorType).with(consumer);
}
public interface DiscriminatorNamedGetterFactory {
DiscriminatorNamedGetter newGetter(Class type);
}
public interface DiscriminatorNamedGetter {
T get(S s, String discriminatorColumn) throws Exception;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy