Skip to content
Snippets Groups Projects
UUIDPanacheEntity.java 900 B
Newer Older
package cz.mendelu.model;

import com.google.common.base.MoreObjects;
import com.google.common.base.Objects;
import io.quarkus.hibernate.orm.panache.PanacheEntityBase;

import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
import java.util.UUID;

@MappedSuperclass
public class UUIDPanacheEntity extends PanacheEntityBase {

    @Id
    public UUID id = UUID.randomUUID();

    @Override
    public String toString() {
        return MoreObjects.toStringHelper(this)
                .add("id", id)
                .toString();
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        UUIDPanacheEntity that = (UUIDPanacheEntity) o;
        return Objects.equal(id, that.id);
    }

    @Override
    public int hashCode() {
        return Objects.hashCode(id);
    }
}