package org.hibernate.envers.test.entities.reventity.trackmodifiedentities; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.ManyToOne; /** * Custom detail of revision entity. * @author Lukasz Antoniak (lukasz dot antoniak at gmail dot com) */ @Entity public class ModifiedEntityTypeEntity { @Id @GeneratedValue private Integer id; @ManyToOne private CustomTrackingRevisionEntity revision; private String entityClassName; public ModifiedEntityTypeEntity() { } public ModifiedEntityTypeEntity(String entityClassName) { this.entityClassName = entityClassName; } public ModifiedEntityTypeEntity(CustomTrackingRevisionEntity revision, String entityClassName) { this.revision = revision; this.entityClassName = entityClassName; } public CustomTrackingRevisionEntity getRevision() { return revision; } public void setRevision(CustomTrackingRevisionEntity revision) { this.revision = revision; } public String getEntityClassName() { return entityClassName; } public void setEntityClassName(String entityClassName) { this.entityClassName = entityClassName; } public boolean equals(Object o) { if (this == o) return true; if (!(o instanceof ModifiedEntityTypeEntity)) return false; ModifiedEntityTypeEntity that = (ModifiedEntityTypeEntity) o; if (entityClassName != null ? !entityClassName.equals(that.entityClassName) : that.entityClassName != null) return false; return true; } public int hashCode() { return entityClassName != null ? entityClassName.hashCode() : 0; } @Override public String toString() { return "CustomTrackingRevisionEntity(entityClassName = " + entityClassName + ")"; } }