npalm/graphql-java-demo

View on GitHub
src/main/java/ofouro/code/graphql/demo/model/Talk.java

Summary

Maintainability
A
0 mins
Test Coverage
package ofouro.code.graphql.demo.model;
 
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;
 
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.ManyToMany;
import java.util.ArrayList;
import java.util.List;
 
@Entity
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = false, exclude = {"speakers", "conferences"})
public class Talk extends BaseEntity {
 
private String title;
 
@Column(columnDefinition = "TEXT")
private String summary;
 
@ManyToMany(fetch = FetchType.EAGER)
@Fetch(value = FetchMode.SUBSELECT)
private List<Person> speakers = new ArrayList<>();
 
@ManyToMany(fetch = FetchType.EAGER)
@Fetch(value = FetchMode.SUBSELECT)
private List<Conference> conferences = new ArrayList<>();
 
}