org.javers.core.metamodel.object.Cdo 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.metamodel.object;
import org.javers.common.validation.Validate;
import org.javers.core.metamodel.property.Property;
import org.javers.core.metamodel.type.*;
import java.util.Optional;
/**
* Abstract holder for client's domain object, {@link EntityType} or {@link ValueObjectType}
*
* @author bartosz walacik
*/
public abstract class Cdo {
private final GlobalId globalId;
private final ManagedType managedType;
protected Cdo(GlobalId globalId, ManagedType managedType) {
Validate.argumentsAreNotNull(globalId, managedType);
this.globalId = globalId;
this.managedType = managedType;
}
public GlobalId getGlobalId() {
return globalId;
}
public abstract Optional