com.kenshoo.pl.entity.spi.MissingFieldEnricher Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of persistence-layer Show documentation
Show all versions of persistence-layer Show documentation
A Java persistence layer based on JOOQ for high performance and business flow support.
package com.kenshoo.pl.entity.spi;
import com.kenshoo.pl.entity.EntityChange;
import com.kenshoo.pl.entity.EntityType;
import com.kenshoo.pl.entity.internal.SingleFieldEnricher;
public abstract class MissingFieldEnricher, T> extends SingleFieldEnricher {
@Override
final protected boolean shouldRunForCommand(EntityChange entityChange) {
return shouldEnrichField(entityChange);
}
protected boolean considerNullAsMissing() {
return false;
}
private boolean shouldEnrichField(EntityChange entityChange) {
return enrichedFieldIsMissing(entityChange) || (considerNullAsMissing() && enrichedFieldHasNullValue(entityChange));
}
private boolean enrichedFieldHasNullValue(EntityChange entityChange) {
return entityChange.get(enrichedField()) == null;
}
private boolean enrichedFieldIsMissing(EntityChange entityChange) {
return !entityChange.isFieldChanged(enrichedField());
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy