org.javers.core.diff.custom.NullAsBlankStringComparator Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of javers-core Show documentation
Show all versions of javers-core Show documentation
JaVers - object auditing and diff framework for Java
package org.javers.core.diff.custom;
import org.javers.common.string.Strings;
import org.javers.core.JaversBuilder;
import java.util.Objects;
/**
* Compares Strings treating blank and null strings as equal.
*
*
* Usage example:
*
* JaversBuilder.javers()
* .registerValue(String.class, new NullAsBlankStringComparator())
* .build();
*
*
* @see JaversBuilder#registerValue(Class, CustomValueComparator)
*/
public class NullAsBlankStringComparator implements CustomValueComparator {
@Override
public boolean equals(String a, String b) {
return Objects.equals(Strings.emptyIfNull(a).trim(), Strings.emptyIfNull(b).trim());
}
@Override
public String toString(String value) {
return Strings.emptyIfNull(value).trim();
}
@Override
public boolean handlesNulls() {
return true;
}
}