Package org.javers.core.diff.appenders
Class CorePropertyChangeAppender<T extends PropertyChange>
java.lang.Object
org.javers.core.diff.appenders.CorePropertyChangeAppender<T>
- All Implemented Interfaces:
PropertyChangeAppender<T>
- Direct Known Subclasses:
LevenshteinListChangeAppender,SimpleListChangeAppender
public abstract class CorePropertyChangeAppender<T extends PropertyChange>
extends Object
implements PropertyChangeAppender<T>
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringJaVers needs to know actual Class of elements stored in your Collections and Maps.Fields inherited from interface org.javers.core.diff.appenders.PropertyChangeAppender
HIGH_PRIORITY, LOW_PRIORITY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract TcalculateChanges(Object leftValue, Object rightValue, NodePair pair, JaversProperty property) final TcalculateChanges(NodePair pair, JaversProperty property) static voidrenderNotParametrizedWarningIfNeeded(Type parameterType, String parameterName, String colType, JaversProperty property) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.javers.core.diff.appenders.PropertyChangeAppender
priority, supports
-
Field Details
-
GENERIC_TYPE_NOT_PARAMETRIZED
JaVers needs to know actual Class of elements stored in your Collections and Maps.
Wildcards (e.g. Set<?>), unbounded type parameters (e.g. Set<T>)
or missing parameters (e.g. Set) are defaulted to Object.class.
For Collections of Values it's a reasonable guess
but for Collections of Entities or ValueObjects you should use fully parametrized types (e.g. Set<Person>).- See Also:
-
-
Constructor Details
-
CorePropertyChangeAppender
public CorePropertyChangeAppender()
-
-
Method Details
-
renderNotParametrizedWarningIfNeeded
public static void renderNotParametrizedWarningIfNeeded(Type parameterType, String parameterName, String colType, JaversProperty property) -
calculateChanges
- Specified by:
calculateChangesin interfacePropertyChangeAppender<T extends PropertyChange>
-
calculateChanges
protected abstract T calculateChanges(Object leftValue, Object rightValue, NodePair pair, JaversProperty property)
-