52 lines
1.4 KiB
Java
52 lines
1.4 KiB
Java
package dev.rsems.feedreader.model;
|
|
|
|
import jakarta.persistence.*;
|
|
import lombok.*;
|
|
import org.hibernate.proxy.HibernateProxy;
|
|
|
|
import java.util.Objects;
|
|
|
|
@Getter
|
|
@Setter
|
|
@ToString
|
|
@RequiredArgsConstructor
|
|
@Entity(name = "userfeed")
|
|
public class UserFeed {
|
|
|
|
@Id
|
|
@GeneratedValue(strategy = GenerationType.AUTO)
|
|
@Column(name = "id", nullable = false)
|
|
private Long id;
|
|
|
|
@ManyToOne
|
|
@JoinColumn(name = "user_id")
|
|
private User user;
|
|
|
|
@ManyToOne
|
|
@JoinColumn(name = "feed_id")
|
|
private Feed feed;
|
|
|
|
@Column
|
|
private Boolean visible;
|
|
|
|
@Column
|
|
private String filter;
|
|
|
|
@Override
|
|
public final boolean equals(Object o) {
|
|
if (this == o) return true;
|
|
if (o == null) return false;
|
|
Class<?> oEffectiveClass = o instanceof HibernateProxy ? ((HibernateProxy) o).getHibernateLazyInitializer().getPersistentClass() : o.getClass();
|
|
Class<?> thisEffectiveClass = this instanceof HibernateProxy ? ((HibernateProxy) this).getHibernateLazyInitializer().getPersistentClass() : this.getClass();
|
|
if (thisEffectiveClass != oEffectiveClass) return false;
|
|
UserFeed userFeed = (UserFeed) o;
|
|
return getId() != null && Objects.equals(getId(), userFeed.getId());
|
|
}
|
|
|
|
@Override
|
|
public final int hashCode() {
|
|
return this instanceof HibernateProxy ? ((HibernateProxy) this).getHibernateLazyInitializer().getPersistentClass().hashCode() : getClass().hashCode();
|
|
}
|
|
|
|
}
|