public <T, V> MF discriminator(Class<T> commonType, final String discriminatorColumn, CheckedBiFunction<S, String, V> discriminatorFieldAccessor, Consumer<DiscriminatorConditionBuilder<S, V, T>> consumer) { return discriminator((Type) commonType, discriminatorColumn, discriminatorFieldAccessor, consumer); }
public <T> MF discriminator(Class<T> commonType, Consumer<DiscriminatorBuilder<S, T>> consumer) { return discriminator((Type)commonType, consumer); }
public <T, V> MF discriminator(Class<T> commonType, Getter<? super S, ? extends V> getter, Consumer<DiscriminatorConditionBuilder<S, V, T>> consumer) { return discriminator((Type)commonType, getter, consumer); }
public <T, V> MF discriminator(Class<T> commonType, Getter<? super S, ? extends V> getter, Consumer<DiscriminatorConditionBuilder<S, V, T>> consumer) { return discriminator((Type)commonType, getter, consumer); }
public <T> MF discriminator(Class<T> commonType, Consumer<DiscriminatorBuilder<S, T>> consumer) { return discriminator((Type)commonType, consumer); }
public <T, V> MF discriminator(Class<T> commonType, final String discriminatorColumn, CheckedBiFunction<S, String, V> discriminatorFieldAccessor, Consumer<DiscriminatorConditionBuilder<S, V, T>> consumer) { return discriminator((Type) commonType, discriminatorColumn, discriminatorFieldAccessor, consumer); }
public <T, V> MF discriminator(Type commonType, final String discriminatorColumn, final CheckedBiFunction<S, String, V> discriminatorFieldAccessor, Consumer<DiscriminatorConditionBuilder<S, V, T>> consumer) { addColumnProperty(discriminatorColumn, OptionalProperty.INSTANCE); Getter<? super S, ? extends V> getter = new Getter<S, V>() { @Override public V get(S target) throws Exception { return discriminatorFieldAccessor.apply(target, discriminatorColumn); } }; return discriminator(commonType, getter, consumer); }
public <T, V> MF discriminator(Type commonType, final String discriminatorColumn, final CheckedBiFunction<S, String, V> discriminatorFieldAccessor, Consumer<DiscriminatorConditionBuilder<S, V, T>> consumer) { addColumnProperty(discriminatorColumn, OptionalProperty.INSTANCE); Getter<? super S, ? extends V> getter = new Getter<S, V>() { @Override public V get(S target) throws Exception { return discriminatorFieldAccessor.apply(target, discriminatorColumn); } }; return discriminator(commonType, getter, consumer); }