Bael 7452 fixes (#15729)
* BAEL-7452: Renamed service getter * BAEL-7452: Delombok and cleanup
This commit is contained in:
parent
8154f89f17
commit
450e82b2ca
|
@ -57,11 +57,6 @@
|
||||||
<artifactId>jackson-databind</artifactId>
|
<artifactId>jackson-databind</artifactId>
|
||||||
<version>${jackson.version}</version>
|
<version>${jackson.version}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
|
||||||
<groupId>org.projectlombok</groupId>
|
|
||||||
<artifactId>lombok</artifactId>
|
|
||||||
<version>${lombok.version}</version>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
|
@ -81,7 +76,6 @@
|
||||||
<db.util.version>1.0.7</db.util.version>
|
<db.util.version>1.0.7</db.util.version>
|
||||||
<hypersistence-utils.version>3.7.0</hypersistence-utils.version>
|
<hypersistence-utils.version>3.7.0</hypersistence-utils.version>
|
||||||
<jackson.version>2.16.0</jackson.version>
|
<jackson.version>2.16.0</jackson.version>
|
||||||
<lombok.version>1.18.28</lombok.version>
|
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
</project>
|
</project>
|
|
@ -50,7 +50,7 @@ public class Service<S> extends ParametrizationAware<S> {
|
||||||
public int getUserByIdWithFunction(Long id, ToIntFunction<S> function) {
|
public int getUserByIdWithFunction(Long id, ToIntFunction<S> function) {
|
||||||
|
|
||||||
Optional<S> optionalUser = repository.findById(id);
|
Optional<S> optionalUser = repository.findById(id);
|
||||||
if(optionalUser.isPresent()) {
|
if (optionalUser.isPresent()) {
|
||||||
return function.applyAsInt(optionalUser.get());
|
return function.applyAsInt(optionalUser.get());
|
||||||
} else {
|
} else {
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -4,9 +4,8 @@ import com.fasterxml.jackson.annotation.JsonBackReference;
|
||||||
import jakarta.persistence.Entity;
|
import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity
|
@Entity
|
||||||
public class Comment {
|
public class Comment {
|
||||||
|
|
||||||
|
@ -22,4 +21,63 @@ public class Comment {
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
private Post post;
|
private Post post;
|
||||||
|
|
||||||
|
public Comment() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getText() {
|
||||||
|
return this.text;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getAuthor() {
|
||||||
|
return this.author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Post getPost() {
|
||||||
|
return this.post;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setText(String text) {
|
||||||
|
this.text = text;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuthor(User author) {
|
||||||
|
this.author = author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPost(Post post) {
|
||||||
|
this.post = post;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Comment comment = (Comment) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, comment.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Comment(id=" + this.getId() + ", text=" + this.getText() + ", author=" + this.getAuthor() + ", post=" + this.getPost()
|
||||||
|
+ ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,9 +6,8 @@ import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.ManyToMany;
|
import jakarta.persistence.ManyToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "interest_group")
|
@Entity(name = "interest_group")
|
||||||
@Table(name = "interest_group")
|
@Table(name = "interest_group")
|
||||||
public class Group {
|
public class Group {
|
||||||
|
@ -20,4 +19,54 @@ public class Group {
|
||||||
|
|
||||||
@ManyToMany(fetch = FetchType.EAGER)
|
@ManyToMany(fetch = FetchType.EAGER)
|
||||||
private List<User> members;
|
private List<User> members;
|
||||||
|
|
||||||
|
public Group() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<User> getMembers() {
|
||||||
|
return this.members;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMembers(List<User> members) {
|
||||||
|
this.members = members;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Group group = (Group) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, group.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Group(id=" + this.getId() + ", name=" + this.getName() + ", members=" + this.getMembers() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,10 +10,9 @@ import jakarta.persistence.Lob;
|
||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.OneToMany;
|
import jakarta.persistence.OneToMany;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
|
||||||
public class Post {
|
public class Post {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -29,4 +28,63 @@ public class Post {
|
||||||
@JsonBackReference
|
@JsonBackReference
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
private User author;
|
private User author;
|
||||||
|
|
||||||
|
public Post() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContent() {
|
||||||
|
return this.content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Comment> getComments() {
|
||||||
|
return this.comments;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getAuthor() {
|
||||||
|
return this.author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContent(String content) {
|
||||||
|
this.content = content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setComments(List<Comment> comments) {
|
||||||
|
this.comments = comments;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuthor(User author) {
|
||||||
|
this.author = author;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Post post = (Post) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, post.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Post(id=" + this.getId() + ", content=" + this.getContent() + ", comments=" + this.getComments() + ", author="
|
||||||
|
+ this.getAuthor() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,10 +6,9 @@ import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.JoinColumn;
|
import jakarta.persistence.JoinColumn;
|
||||||
import jakarta.persistence.Lob;
|
import jakarta.persistence.Lob;
|
||||||
import jakarta.persistence.OneToOne;
|
import jakarta.persistence.OneToOne;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
|
||||||
public class Profile {
|
public class Profile {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -24,5 +23,72 @@ public class Profile {
|
||||||
@OneToOne(mappedBy = "profile")
|
@OneToOne(mappedBy = "profile")
|
||||||
@JoinColumn(unique = true)
|
@JoinColumn(unique = true)
|
||||||
private User user;
|
private User user;
|
||||||
|
|
||||||
|
public Profile() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getBiography() {
|
||||||
|
return this.biography;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getWebsite() {
|
||||||
|
return this.website;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getProfilePictureUrl() {
|
||||||
|
return this.profilePictureUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getUser() {
|
||||||
|
return this.user;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBiography(String biography) {
|
||||||
|
this.biography = biography;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setWebsite(String website) {
|
||||||
|
this.website = website;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setProfilePictureUrl(String profilePictureUrl) {
|
||||||
|
this.profilePictureUrl = profilePictureUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUser(User user) {
|
||||||
|
this.user = user;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Profile profile = (Profile) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, profile.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Profile(id=" + this.getId() + ", biography=" + this.getBiography() + ", website=" + this.getWebsite()
|
||||||
|
+ ", profilePictureUrl=" + this.getProfilePictureUrl() + ", user=" + this.getUser() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,9 +10,8 @@ import jakarta.persistence.OneToMany;
|
||||||
import jakarta.persistence.OneToOne;
|
import jakarta.persistence.OneToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "simple_user")
|
@Entity(name = "simple_user")
|
||||||
@Table(name = "simple_user")
|
@Table(name = "simple_user")
|
||||||
public class User {
|
public class User {
|
||||||
|
@ -33,4 +32,79 @@ public class User {
|
||||||
|
|
||||||
@ManyToMany(mappedBy = "members", fetch = FetchType.EAGER)
|
@ManyToMany(mappedBy = "members", fetch = FetchType.EAGER)
|
||||||
private List<Group> groups;
|
private List<Group> groups;
|
||||||
|
|
||||||
|
public User() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return this.username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail() {
|
||||||
|
return this.email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Profile getProfile() {
|
||||||
|
return this.profile;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Post> getPosts() {
|
||||||
|
return this.posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Group> getGroups() {
|
||||||
|
return this.groups;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(String email) {
|
||||||
|
this.email = email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setProfile(Profile profile) {
|
||||||
|
this.profile = profile;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPosts(List<Post> posts) {
|
||||||
|
this.posts = posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGroups(List<Group> groups) {
|
||||||
|
this.groups = groups;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
User user = (User) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, user.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "User(id=" + this.getId() + ", username=" + this.getUsername() + ", email=" + this.getEmail() + ", profile="
|
||||||
|
+ this.getProfile() + ", posts=" + this.getPosts() + ", groups=" + this.getGroups() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -6,9 +6,8 @@ import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.ManyToMany;
|
import jakarta.persistence.ManyToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "interest_group")
|
@Entity(name = "interest_group")
|
||||||
@Table(name = "interest_group")
|
@Table(name = "interest_group")
|
||||||
public class Group {
|
public class Group {
|
||||||
|
@ -20,4 +19,54 @@ public class Group {
|
||||||
|
|
||||||
@ManyToMany(fetch = FetchType.EAGER)
|
@ManyToMany(fetch = FetchType.EAGER)
|
||||||
private List<User> members;
|
private List<User> members;
|
||||||
|
|
||||||
|
public Group() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<User> getMembers() {
|
||||||
|
return this.members;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMembers(List<User> members) {
|
||||||
|
this.members = members;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Group group = (Group) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, group.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Group(id=" + this.getId() + ", name=" + this.getName() + ", members=" + this.getMembers() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,10 +5,9 @@ import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.Lob;
|
import jakarta.persistence.Lob;
|
||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
|
||||||
public class Post {
|
public class Post {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -20,4 +19,55 @@ public class Post {
|
||||||
@JsonBackReference
|
@JsonBackReference
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
private User author;
|
private User author;
|
||||||
|
|
||||||
|
public Post() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContent() {
|
||||||
|
return this.content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getAuthor() {
|
||||||
|
return this.author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContent(String content) {
|
||||||
|
this.content = content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuthor(User author) {
|
||||||
|
this.author = author;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Post post = (Post) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, post.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Post(id=" + this.getId() + ", content=" + this.getContent() + ", author=" + this.getAuthor() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,9 +9,7 @@ import jakarta.persistence.OneToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "simple_user")
|
@Entity(name = "simple_user")
|
||||||
@Table(name = "simple_user")
|
@Table(name = "simple_user")
|
||||||
public class User {
|
public class User {
|
||||||
|
@ -25,6 +23,41 @@ public class User {
|
||||||
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author", fetch = FetchType.EAGER)
|
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author", fetch = FetchType.EAGER)
|
||||||
protected List<Post> posts;
|
protected List<Post> posts;
|
||||||
|
|
||||||
|
public User() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return this.username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail() {
|
||||||
|
return this.email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Post> getPosts() {
|
||||||
|
return this.posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(String email) {
|
||||||
|
this.email = email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPosts(List<Post> posts) {
|
||||||
|
this.posts = posts;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) {
|
if (this == o) {
|
||||||
|
@ -43,4 +76,9 @@ public class User {
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return id != null ? id.hashCode() : 0;
|
return id != null ? id.hashCode() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "User(id=" + this.getId() + ", username=" + this.getUsername() + ", email=" + this.getEmail() + ", posts=" + this.getPosts()
|
||||||
|
+ ")";
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -5,10 +5,9 @@ import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.Lob;
|
import jakarta.persistence.Lob;
|
||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
|
||||||
public class Post {
|
public class Post {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -20,4 +19,54 @@ public class Post {
|
||||||
@JsonBackReference
|
@JsonBackReference
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
private User author;
|
private User author;
|
||||||
|
|
||||||
|
public Post() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContent() {
|
||||||
|
return this.content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getAuthor() {
|
||||||
|
return this.author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContent(String content) {
|
||||||
|
this.content = content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuthor(User author) {
|
||||||
|
this.author = author;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Post post = (Post) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, post.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Post(id=" + this.getId() + ", content=" + this.getContent() + ", author=" + this.getAuthor() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,9 +8,8 @@ import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.OneToMany;
|
import jakarta.persistence.OneToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "simple_user")
|
@Entity(name = "simple_user")
|
||||||
@Table(name = "simple_user")
|
@Table(name = "simple_user")
|
||||||
public class User {
|
public class User {
|
||||||
|
@ -23,4 +22,63 @@ public class User {
|
||||||
@JsonManagedReference
|
@JsonManagedReference
|
||||||
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author", fetch = FetchType.EAGER)
|
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author", fetch = FetchType.EAGER)
|
||||||
protected List<Post> posts;
|
protected List<Post> posts;
|
||||||
|
|
||||||
|
public User() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return this.username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail() {
|
||||||
|
return this.email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Post> getPosts() {
|
||||||
|
return this.posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(String email) {
|
||||||
|
this.email = email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPosts(List<Post> posts) {
|
||||||
|
this.posts = posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
User user = (User) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, user.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "User(id=" + this.getId() + ", username=" + this.getUsername() + ", email=" + this.getEmail() + ", posts=" + this.getPosts()
|
||||||
|
+ ")";
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -5,9 +5,7 @@ import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity
|
@Entity
|
||||||
public class Comment {
|
public class Comment {
|
||||||
|
|
||||||
|
@ -23,6 +21,41 @@ public class Comment {
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
private Post post;
|
private Post post;
|
||||||
|
|
||||||
|
public Comment() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getText() {
|
||||||
|
return this.text;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getAuthor() {
|
||||||
|
return this.author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Post getPost() {
|
||||||
|
return this.post;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setText(String text) {
|
||||||
|
this.text = text;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuthor(User author) {
|
||||||
|
this.author = author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPost(Post post) {
|
||||||
|
this.post = post;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) {
|
if (this == o) {
|
||||||
|
@ -41,4 +74,9 @@ public class Comment {
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return id != null ? id.hashCode() : 0;
|
return id != null ? id.hashCode() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Comment(id=" + this.getId() + ", text=" + this.getText() + ", author=" + this.getAuthor() + ", post=" + this.getPost()
|
||||||
|
+ ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,9 +7,7 @@ import jakarta.persistence.ManyToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "interest_group")
|
@Entity(name = "interest_group")
|
||||||
@Table(name = "interest_group")
|
@Table(name = "interest_group")
|
||||||
public class Group {
|
public class Group {
|
||||||
|
@ -22,6 +20,33 @@ public class Group {
|
||||||
@ManyToMany(fetch = FetchType.EAGER)
|
@ManyToMany(fetch = FetchType.EAGER)
|
||||||
private Set<User> members;
|
private Set<User> members;
|
||||||
|
|
||||||
|
public Group() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<User> getMembers() {
|
||||||
|
return this.members;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMembers(Set<User> members) {
|
||||||
|
this.members = members;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) {
|
if (this == o) {
|
||||||
|
@ -40,4 +65,8 @@ public class Group {
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return id != null ? id.hashCode() : 0;
|
return id != null ? id.hashCode() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Group(id=" + this.getId() + ", name=" + this.getName() + ", members=" + this.getMembers() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,10 +11,8 @@ import jakarta.persistence.ManyToOne;
|
||||||
import jakarta.persistence.OneToMany;
|
import jakarta.persistence.OneToMany;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
|
||||||
public class Post {
|
public class Post {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -31,6 +29,41 @@ public class Post {
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
private User author;
|
private User author;
|
||||||
|
|
||||||
|
public Post() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContent() {
|
||||||
|
return this.content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Comment> getComments() {
|
||||||
|
return this.comments;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getAuthor() {
|
||||||
|
return this.author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContent(String content) {
|
||||||
|
this.content = content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setComments(Set<Comment> comments) {
|
||||||
|
this.comments = comments;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuthor(User author) {
|
||||||
|
this.author = author;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) {
|
if (this == o) {
|
||||||
|
@ -49,4 +82,9 @@ public class Post {
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return id != null ? id.hashCode() : 0;
|
return id != null ? id.hashCode() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Post(id=" + this.getId() + ", content=" + this.getContent() + ", comments=" + this.getComments() + ", author="
|
||||||
|
+ this.getAuthor() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,10 +6,9 @@ import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.JoinColumn;
|
import jakarta.persistence.JoinColumn;
|
||||||
import jakarta.persistence.Lob;
|
import jakarta.persistence.Lob;
|
||||||
import jakarta.persistence.OneToOne;
|
import jakarta.persistence.OneToOne;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
|
||||||
public class Profile {
|
public class Profile {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -24,5 +23,72 @@ public class Profile {
|
||||||
@OneToOne(mappedBy = "profile")
|
@OneToOne(mappedBy = "profile")
|
||||||
@JoinColumn(unique = true)
|
@JoinColumn(unique = true)
|
||||||
private User user;
|
private User user;
|
||||||
|
|
||||||
|
public Profile() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getBiography() {
|
||||||
|
return this.biography;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getWebsite() {
|
||||||
|
return this.website;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getProfilePictureUrl() {
|
||||||
|
return this.profilePictureUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getUser() {
|
||||||
|
return this.user;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBiography(String biography) {
|
||||||
|
this.biography = biography;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setWebsite(String website) {
|
||||||
|
this.website = website;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setProfilePictureUrl(String profilePictureUrl) {
|
||||||
|
this.profilePictureUrl = profilePictureUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUser(User user) {
|
||||||
|
this.user = user;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Profile profile = (Profile) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, profile.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Profile(id=" + this.getId() + ", biography=" + this.getBiography() + ", website=" + this.getWebsite()
|
||||||
|
+ ", profilePictureUrl=" + this.getProfilePictureUrl() + ", user=" + this.getUser() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,9 +11,7 @@ import jakarta.persistence.OneToOne;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "simple_user")
|
@Entity(name = "simple_user")
|
||||||
@Table(name = "simple_user")
|
@Table(name = "simple_user")
|
||||||
public class User {
|
public class User {
|
||||||
|
@ -35,6 +33,57 @@ public class User {
|
||||||
@ManyToMany(mappedBy = "members", fetch = FetchType.EAGER)
|
@ManyToMany(mappedBy = "members", fetch = FetchType.EAGER)
|
||||||
private Set<Group> groups;
|
private Set<Group> groups;
|
||||||
|
|
||||||
|
public User() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return this.username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail() {
|
||||||
|
return this.email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Profile getProfile() {
|
||||||
|
return this.profile;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Post> getPosts() {
|
||||||
|
return this.posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Group> getGroups() {
|
||||||
|
return this.groups;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(String email) {
|
||||||
|
this.email = email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setProfile(Profile profile) {
|
||||||
|
this.profile = profile;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPosts(Set<Post> posts) {
|
||||||
|
this.posts = posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGroups(Set<Group> groups) {
|
||||||
|
this.groups = groups;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) {
|
if (this == o) {
|
||||||
|
@ -53,4 +102,9 @@ public class User {
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return id != null ? id.hashCode() : 0;
|
return id != null ? id.hashCode() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "User(id=" + this.getId() + ", username=" + this.getUsername() + ", email=" + this.getEmail() + ", profile="
|
||||||
|
+ this.getProfile() + ", posts=" + this.getPosts() + ", groups=" + this.getGroups() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -4,10 +4,9 @@ import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.ManyToMany;
|
import jakarta.persistence.ManyToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "interest_group")
|
@Entity(name = "interest_group")
|
||||||
@Table(name = "interest_group")
|
@Table(name = "interest_group")
|
||||||
public class Group {
|
public class Group {
|
||||||
|
@ -19,4 +18,54 @@ public class Group {
|
||||||
|
|
||||||
@ManyToMany
|
@ManyToMany
|
||||||
private Set<User> members;
|
private Set<User> members;
|
||||||
|
|
||||||
|
public Group() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<User> getMembers() {
|
||||||
|
return this.members;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMembers(Set<User> members) {
|
||||||
|
this.members = members;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Group group = (Group) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, group.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Group(id=" + this.getId() + ", name=" + this.getName() + ", members=" + this.getMembers() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,10 +6,8 @@ import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.Lob;
|
import jakarta.persistence.Lob;
|
||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
|
||||||
public class Post {
|
public class Post {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -22,6 +20,33 @@ public class Post {
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
private User author;
|
private User author;
|
||||||
|
|
||||||
|
public Post() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContent() {
|
||||||
|
return this.content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getAuthor() {
|
||||||
|
return this.author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContent(String content) {
|
||||||
|
this.content = content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuthor(User author) {
|
||||||
|
this.author = author;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) {
|
if (this == o) {
|
||||||
|
@ -40,4 +65,8 @@ public class Post {
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return id != null ? id.hashCode() : 0;
|
return id != null ? id.hashCode() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Post(id=" + this.getId() + ", content=" + this.getContent() + ", author=" + this.getAuthor() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,9 +8,7 @@ import jakarta.persistence.OneToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "simple_user")
|
@Entity(name = "simple_user")
|
||||||
@Table(name = "simple_user")
|
@Table(name = "simple_user")
|
||||||
public class User {
|
public class User {
|
||||||
|
@ -24,6 +22,41 @@ public class User {
|
||||||
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author")
|
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author")
|
||||||
protected Set<Post> posts;
|
protected Set<Post> posts;
|
||||||
|
|
||||||
|
public User() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return this.username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail() {
|
||||||
|
return this.email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Post> getPosts() {
|
||||||
|
return this.posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(String email) {
|
||||||
|
this.email = email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPosts(Set<Post> posts) {
|
||||||
|
this.posts = posts;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) {
|
if (this == o) {
|
||||||
|
@ -42,4 +75,9 @@ public class User {
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return id != null ? id.hashCode() : 0;
|
return id != null ? id.hashCode() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "User(id=" + this.getId() + ", username=" + this.getUsername() + ", email=" + this.getEmail() + ", posts=" + this.getPosts()
|
||||||
|
+ ")";
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -5,10 +5,9 @@ import jakarta.persistence.FetchType;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.ManyToMany;
|
import jakarta.persistence.ManyToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "interest_group")
|
@Entity(name = "interest_group")
|
||||||
@Table(name = "interest_group")
|
@Table(name = "interest_group")
|
||||||
public class Group {
|
public class Group {
|
||||||
|
@ -20,4 +19,54 @@ public class Group {
|
||||||
|
|
||||||
@ManyToMany(fetch = FetchType.EAGER)
|
@ManyToMany(fetch = FetchType.EAGER)
|
||||||
private Set<User> members;
|
private Set<User> members;
|
||||||
|
|
||||||
|
public Group() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<User> getMembers() {
|
||||||
|
return this.members;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMembers(Set<User> members) {
|
||||||
|
this.members = members;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Group group = (Group) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, group.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Group(id=" + this.getId() + ", name=" + this.getName() + ", members=" + this.getMembers() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,10 +6,8 @@ import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.Lob;
|
import jakarta.persistence.Lob;
|
||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
|
||||||
public class Post {
|
public class Post {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -22,6 +20,33 @@ public class Post {
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
private User author;
|
private User author;
|
||||||
|
|
||||||
|
public Post() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContent() {
|
||||||
|
return this.content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getAuthor() {
|
||||||
|
return this.author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContent(String content) {
|
||||||
|
this.content = content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuthor(User author) {
|
||||||
|
this.author = author;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) {
|
if (this == o) {
|
||||||
|
@ -40,4 +65,8 @@ public class Post {
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return id != null ? id.hashCode() : 0;
|
return id != null ? id.hashCode() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Post(id=" + this.getId() + ", content=" + this.getContent() + ", author=" + this.getAuthor() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,9 +9,7 @@ import jakarta.persistence.OneToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "simple_user")
|
@Entity(name = "simple_user")
|
||||||
@Table(name = "simple_user")
|
@Table(name = "simple_user")
|
||||||
public class User {
|
public class User {
|
||||||
|
@ -25,6 +23,41 @@ public class User {
|
||||||
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author", fetch = FetchType.EAGER)
|
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author", fetch = FetchType.EAGER)
|
||||||
protected Set<Post> posts;
|
protected Set<Post> posts;
|
||||||
|
|
||||||
|
public User() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return this.username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail() {
|
||||||
|
return this.email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Post> getPosts() {
|
||||||
|
return this.posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(String email) {
|
||||||
|
this.email = email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPosts(Set<Post> posts) {
|
||||||
|
this.posts = posts;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) {
|
if (this == o) {
|
||||||
|
@ -43,4 +76,9 @@ public class User {
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return id != null ? id.hashCode() : 0;
|
return id != null ? id.hashCode() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "User(id=" + this.getId() + ", username=" + this.getUsername() + ", email=" + this.getEmail() + ", posts=" + this.getPosts()
|
||||||
|
+ ")";
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -6,10 +6,8 @@ import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.Lob;
|
import jakarta.persistence.Lob;
|
||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
|
||||||
public class Post {
|
public class Post {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -22,6 +20,33 @@ public class Post {
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
private User author;
|
private User author;
|
||||||
|
|
||||||
|
public Post() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContent() {
|
||||||
|
return this.content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getAuthor() {
|
||||||
|
return this.author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContent(String content) {
|
||||||
|
this.content = content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuthor(User author) {
|
||||||
|
this.author = author;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) {
|
if (this == o) {
|
||||||
|
@ -40,4 +65,8 @@ public class Post {
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return id != null ? id.hashCode() : 0;
|
return id != null ? id.hashCode() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Post(id=" + this.getId() + ", content=" + this.getContent() + ", author=" + this.getAuthor() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,10 +7,9 @@ import jakarta.persistence.FetchType;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.OneToMany;
|
import jakarta.persistence.OneToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "simple_user")
|
@Entity(name = "simple_user")
|
||||||
@Table(name = "simple_user")
|
@Table(name = "simple_user")
|
||||||
public class User {
|
public class User {
|
||||||
|
@ -24,4 +23,63 @@ public class User {
|
||||||
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author", fetch = FetchType.EAGER)
|
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author", fetch = FetchType.EAGER)
|
||||||
protected Set<Post> posts;
|
protected Set<Post> posts;
|
||||||
|
|
||||||
|
public User() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return this.username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail() {
|
||||||
|
return this.email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Post> getPosts() {
|
||||||
|
return this.posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(String email) {
|
||||||
|
this.email = email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPosts(Set<Post> posts) {
|
||||||
|
this.posts = posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
User user = (User) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, user.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "User(id=" + this.getId() + ", username=" + this.getUsername() + ", email=" + this.getEmail() + ", posts=" + this.getPosts()
|
||||||
|
+ ")";
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -5,9 +5,8 @@ import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.ManyToMany;
|
import jakarta.persistence.ManyToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "interest_group")
|
@Entity(name = "interest_group")
|
||||||
@Table(name = "interest_group")
|
@Table(name = "interest_group")
|
||||||
public class Group {
|
public class Group {
|
||||||
|
@ -19,4 +18,54 @@ public class Group {
|
||||||
|
|
||||||
@ManyToMany
|
@ManyToMany
|
||||||
private List<User> members;
|
private List<User> members;
|
||||||
|
|
||||||
|
public Group() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<User> getMembers() {
|
||||||
|
return this.members;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMembers(List<User> members) {
|
||||||
|
this.members = members;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Group group = (Group) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, group.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Group(id=" + this.getId() + ", name=" + this.getName() + ", members=" + this.getMembers() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,6 +25,7 @@ public class GroupService {
|
||||||
public List<Group> findAll() {
|
public List<Group> findAll() {
|
||||||
return groupRepository.findAll();
|
return groupRepository.findAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
public int countNumberOfRequestsWithFunction(ToIntFunction<List<Group>> function) {
|
public int countNumberOfRequestsWithFunction(ToIntFunction<List<Group>> function) {
|
||||||
return function.applyAsInt(groupRepository.findAll());
|
return function.applyAsInt(groupRepository.findAll());
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,10 +5,9 @@ import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.Lob;
|
import jakarta.persistence.Lob;
|
||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
|
||||||
public class Post {
|
public class Post {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -20,4 +19,54 @@ public class Post {
|
||||||
@JsonBackReference
|
@JsonBackReference
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
private User author;
|
private User author;
|
||||||
|
|
||||||
|
public Post() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContent() {
|
||||||
|
return this.content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getAuthor() {
|
||||||
|
return this.author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContent(String content) {
|
||||||
|
this.content = content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuthor(User author) {
|
||||||
|
this.author = author;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Post post = (Post) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, post.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "Post(id=" + this.getId() + ", content=" + this.getContent() + ", author=" + this.getAuthor() + ")";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,9 +8,7 @@ import jakarta.persistence.OneToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "simple_user")
|
@Entity(name = "simple_user")
|
||||||
@Table(name = "simple_user")
|
@Table(name = "simple_user")
|
||||||
public class User {
|
public class User {
|
||||||
|
@ -24,6 +22,9 @@ public class User {
|
||||||
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author")
|
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author")
|
||||||
protected List<Post> posts;
|
protected List<Post> posts;
|
||||||
|
|
||||||
|
public User() {
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) {
|
if (this == o) {
|
||||||
|
@ -42,4 +43,41 @@ public class User {
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return id != null ? id.hashCode() : 0;
|
return id != null ? id.hashCode() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return this.username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail() {
|
||||||
|
return this.email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Post> getPosts() {
|
||||||
|
return this.posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(String email) {
|
||||||
|
this.email = email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPosts(List<Post> posts) {
|
||||||
|
this.posts = posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return "User(id=" + this.getId() + ", username=" + this.getUsername() + ", email=" + this.getEmail() + ", posts=" + this.getPosts()
|
||||||
|
+ ")";
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -5,10 +5,9 @@ import jakarta.persistence.Entity;
|
||||||
import jakarta.persistence.Id;
|
import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.Lob;
|
import jakarta.persistence.Lob;
|
||||||
import jakarta.persistence.ManyToOne;
|
import jakarta.persistence.ManyToOne;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Data
|
|
||||||
public class Post {
|
public class Post {
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -20,4 +19,47 @@ public class Post {
|
||||||
@JsonBackReference
|
@JsonBackReference
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
private User author;
|
private User author;
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContent() {
|
||||||
|
return content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContent(String content) {
|
||||||
|
this.content = content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public User getAuthor() {
|
||||||
|
return author;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuthor(User author) {
|
||||||
|
this.author = author;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Post post = (Post) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, post.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,9 +7,8 @@ import jakarta.persistence.Id;
|
||||||
import jakarta.persistence.OneToMany;
|
import jakarta.persistence.OneToMany;
|
||||||
import jakarta.persistence.Table;
|
import jakarta.persistence.Table;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import lombok.Data;
|
import java.util.Objects;
|
||||||
|
|
||||||
@Data
|
|
||||||
@Entity(name = "simple_user")
|
@Entity(name = "simple_user")
|
||||||
@Table(name = "simple_user")
|
@Table(name = "simple_user")
|
||||||
public class User {
|
public class User {
|
||||||
|
@ -21,5 +20,56 @@ public class User {
|
||||||
|
|
||||||
@JsonManagedReference
|
@JsonManagedReference
|
||||||
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author")
|
@OneToMany(cascade = CascadeType.ALL, mappedBy = "author")
|
||||||
protected List<Post> posts;
|
private List<Post> posts;
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail() {
|
||||||
|
return email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(String email) {
|
||||||
|
this.email = email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Post> getPosts() {
|
||||||
|
return posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPosts(List<Post> posts) {
|
||||||
|
this.posts = posts;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (o == null || getClass() != o.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
User user = (User) o;
|
||||||
|
|
||||||
|
return Objects.equals(id, user.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return id != null ? id.hashCode() : 0;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -58,16 +58,16 @@ abstract public class BaseNPlusOneIntegrationTest<T> extends ParametrizationAwar
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void givenCorrectConfigurationWhenStartContextThenRepositoryIsPresent() {
|
void givenCorrectConfigurationWhenStartContextThenRepositoryIsPresent() {
|
||||||
assertThat(getService()).isNotNull();
|
assertThat(getUserService()).isNotNull();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void givenCorrectDatabaseWhenStartThenDatabaseIsNotEmpty() {
|
void givenCorrectDatabaseWhenStartThenDatabaseIsNotEmpty() {
|
||||||
List<?> result = getService().findAll();
|
List<?> result = getUserService().findAll();
|
||||||
assertThat(result).isNotEmpty();
|
assertThat(result).isNotEmpty();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected Service<T> getService() {
|
protected Service<T> getUserService() {
|
||||||
Class<T> parametrization = getParametrizationClass().get(0);
|
Class<T> parametrization = getParametrizationClass().get(0);
|
||||||
return (Service<T>) serviceMap.get(parametrization);
|
return (Service<T>) serviceMap.get(parametrization);
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,14 +31,14 @@ class NPlusOneLazyModerateDomainIntegrationTest extends BaseNPlusOneIntegrationT
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void givenLazyListBasedUser_whenFetchingAllUsers_thenIssueOneRequest() {
|
void givenLazyListBasedUser_whenFetchingAllUsers_thenIssueOneRequest() {
|
||||||
getService().findAll();
|
getUserService().findAll();
|
||||||
assertSelectCount(1);
|
assertSelectCount(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ParameterizedTest
|
@ParameterizedTest
|
||||||
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
||||||
void givenLazyListBasedUser_whenFetchingOneUser_thenIssueOneRequest(Long id) {
|
void givenLazyListBasedUser_whenFetchingOneUser_thenIssueOneRequest(Long id) {
|
||||||
getService().getUserById(id);
|
getUserService().getUserById(id);
|
||||||
assertSelectCount(1);
|
assertSelectCount(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,13 +22,13 @@ class NPlusOneLazySimpleDomainIntegrationTest extends BaseNPlusOneIntegrationTes
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void givenLazyListBasedUser_WhenFetchingAllUsers_ThenIssueOneRequests() {
|
void givenLazyListBasedUser_WhenFetchingAllUsers_ThenIssueOneRequests() {
|
||||||
getService().findAll();
|
getUserService().findAll();
|
||||||
assertSelectCount(1);
|
assertSelectCount(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void givenLazyListBasedUser_WhenFetchingAllUsersCheckingPosts_ThenIssueNPlusOneRequests() {
|
void givenLazyListBasedUser_WhenFetchingAllUsersCheckingPosts_ThenIssueNPlusOneRequests() {
|
||||||
int numberOfRequests = getService().countNumberOfRequestsWithFunction(users -> {
|
int numberOfRequests = getUserService().countNumberOfRequestsWithFunction(users -> {
|
||||||
List<List<Post>> usersWithPosts
|
List<List<Post>> usersWithPosts
|
||||||
= users.stream()
|
= users.stream()
|
||||||
.map(User::getPosts)
|
.map(User::getPosts)
|
||||||
|
@ -42,7 +42,7 @@ class NPlusOneLazySimpleDomainIntegrationTest extends BaseNPlusOneIntegrationTes
|
||||||
@ParameterizedTest
|
@ParameterizedTest
|
||||||
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
||||||
void givenLazyListBasedUser_WhenFetchingOneUser_ThenIssueTwoRequest(Long id) {
|
void givenLazyListBasedUser_WhenFetchingOneUser_ThenIssueTwoRequest(Long id) {
|
||||||
getService().getUserByIdWithPredicate(id, user -> !user.getPosts().isEmpty());
|
getUserService().getUserByIdWithPredicate(id, user -> !user.getPosts().isEmpty());
|
||||||
assertSelectCount(2);
|
assertSelectCount(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -37,7 +37,7 @@ class NPlusOneEagerFullDomainIntegrationTest extends BaseNPlusOneIntegrationTest
|
||||||
@ParameterizedTest
|
@ParameterizedTest
|
||||||
@MethodSource
|
@MethodSource
|
||||||
void givenEagerListBasedUser_WhenFetchingAllUsers_ThenIssueNPlusOneRequests(ToIntFunction<List<User>> function) {
|
void givenEagerListBasedUser_WhenFetchingAllUsers_ThenIssueNPlusOneRequests(ToIntFunction<List<User>> function) {
|
||||||
int numberOfRequests = getService().countNumberOfRequestsWithFunction(function);
|
int numberOfRequests = getUserService().countNumberOfRequestsWithFunction(function);
|
||||||
assertSelectCount(numberOfRequests);
|
assertSelectCount(numberOfRequests);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -58,7 +58,7 @@ class NPlusOneEagerFullDomainIntegrationTest extends BaseNPlusOneIntegrationTest
|
||||||
@ParameterizedTest
|
@ParameterizedTest
|
||||||
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
||||||
void givenEagerListBasedUser_WhenFetchingOneUser_ThenUseDFS(Long id) {
|
void givenEagerListBasedUser_WhenFetchingOneUser_ThenUseDFS(Long id) {
|
||||||
int numberOfRequests = getService().getUserByIdWithFunction(id, this::countNumberOfRequests);
|
int numberOfRequests = getUserService().getUserByIdWithFunction(id, this::countNumberOfRequests);
|
||||||
assertSelectCount(numberOfRequests);
|
assertSelectCount(numberOfRequests);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -34,14 +34,14 @@ class NPlusOneEagerModerateDomainIntegrationTest extends BaseNPlusOneIntegration
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void givenEagerListBasedUser_whenFetchingAllUsers_thenIssueNPlusOneRequests() {
|
void givenEagerListBasedUser_whenFetchingAllUsers_thenIssueNPlusOneRequests() {
|
||||||
List<User> users = getService().findAll();
|
List<User> users = getUserService().findAll();
|
||||||
assertSelectCount(users.size() + 1);
|
assertSelectCount(users.size() + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ParameterizedTest
|
@ParameterizedTest
|
||||||
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
||||||
void givenEagerListBasedUser_whenFetchingOneUser_thenIssueOneRequest(Long id) {
|
void givenEagerListBasedUser_whenFetchingOneUser_thenIssueOneRequest(Long id) {
|
||||||
getService().getUserById(id);
|
getUserService().getUserById(id);
|
||||||
assertSelectCount(1);
|
assertSelectCount(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -26,21 +26,21 @@ class NPlusOneEagerSimpleDomainIntegrationTest extends BaseNPlusOneIntegrationTe
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void givenEagerListBasedUser_WhenFetchingAllUsers_ThenIssueNPlusOneRequests() {
|
void givenEagerListBasedUser_WhenFetchingAllUsers_ThenIssueNPlusOneRequests() {
|
||||||
List<User> users = getService().findAll();
|
List<User> users = getUserService().findAll();
|
||||||
assertSelectCount(users.size() + 1);
|
assertSelectCount(users.size() + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ParameterizedTest
|
@ParameterizedTest
|
||||||
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
||||||
void givenEagerListBasedUser_WhenFetchingOneUser_ThenIssueOneRequest(Long id) {
|
void givenEagerListBasedUser_WhenFetchingOneUser_ThenIssueOneRequest(Long id) {
|
||||||
getService().getUserById(id);
|
getUserService().getUserById(id);
|
||||||
assertSelectCount(1);
|
assertSelectCount(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ParameterizedTest
|
@ParameterizedTest
|
||||||
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
||||||
void givenEagerListBasedUser_whenDeletePost_ThenIssueSingleUpdate(Long id) {
|
void givenEagerListBasedUser_whenDeletePost_ThenIssueSingleUpdate(Long id) {
|
||||||
Optional<User> optionalUser = getService().getUserById(id);
|
Optional<User> optionalUser = getUserService().getUserById(id);
|
||||||
assertSelectCount(1);
|
assertSelectCount(1);
|
||||||
optionalUser.ifPresent(user -> {
|
optionalUser.ifPresent(user -> {
|
||||||
List<Post> posts = user.getPosts();
|
List<Post> posts = user.getPosts();
|
||||||
|
@ -48,10 +48,10 @@ class NPlusOneEagerSimpleDomainIntegrationTest extends BaseNPlusOneIntegrationTe
|
||||||
reset();
|
reset();
|
||||||
if (!posts.isEmpty()) {
|
if (!posts.isEmpty()) {
|
||||||
posts.get(0).setAuthor(null);
|
posts.get(0).setAuthor(null);
|
||||||
getService().save(user);
|
getUserService().save(user);
|
||||||
assertSelectCount(1);
|
assertSelectCount(1);
|
||||||
assertUpdateCount(1);
|
assertUpdateCount(1);
|
||||||
getService().getUserById(id).ifPresent(updatedUser -> {
|
getUserService().getUserById(id).ifPresent(updatedUser -> {
|
||||||
assertThat(updatedUser.getPosts()).hasSize(originalNumberOfPosts - 1);
|
assertThat(updatedUser.getPosts()).hasSize(originalNumberOfPosts - 1);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,7 +33,7 @@ class NPlusOneEagerFullDomainJoinIntegrationTest extends BaseNPlusOneIntegration
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void givenEagerSetBasedUser_WhenFetchingAllUsers_ThenIssueNPlusOneRequests() {
|
void givenEagerSetBasedUser_WhenFetchingAllUsers_ThenIssueNPlusOneRequests() {
|
||||||
List<User> users = getService().findAll();
|
List<User> users = getUserService().findAll();
|
||||||
assertSelectCount(users.size() + 1);
|
assertSelectCount(users.size() + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ class NPlusOneEagerFullDomainJoinIntegrationTest extends BaseNPlusOneIntegration
|
||||||
HashMap<String, Set<Long>> visitedMap = new HashMap<>();
|
HashMap<String, Set<Long>> visitedMap = new HashMap<>();
|
||||||
visitedMap.put(POSTS, new HashSet<>());
|
visitedMap.put(POSTS, new HashSet<>());
|
||||||
visitedMap.put(USERS, new HashSet<>());
|
visitedMap.put(USERS, new HashSet<>());
|
||||||
int numberOfRequests = getService()
|
int numberOfRequests = getUserService()
|
||||||
.getUserByIdWithFunction(id, user -> {
|
.getUserByIdWithFunction(id, user -> {
|
||||||
int result = 1;
|
int result = 1;
|
||||||
visitedMap.get(USERS).add(user.getId());
|
visitedMap.get(USERS).add(user.getId());
|
||||||
|
|
|
@ -33,14 +33,14 @@ class NPlusOneEagerModerateDomainIntegrationTest extends BaseNPlusOneIntegration
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void givenEagerSetBasedUser_whenFetchingAllUsers_thenIssueNPlusOneRequests() {
|
void givenEagerSetBasedUser_whenFetchingAllUsers_thenIssueNPlusOneRequests() {
|
||||||
List<User> users = getService().findAll();
|
List<User> users = getUserService().findAll();
|
||||||
assertSelectCount(users.size() + 1);
|
assertSelectCount(users.size() + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ParameterizedTest
|
@ParameterizedTest
|
||||||
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
||||||
void givenEagerSetBasedUser_whenFetchingOneUser_thenIssueOneRequest(Long id) {
|
void givenEagerSetBasedUser_whenFetchingOneUser_thenIssueOneRequest(Long id) {
|
||||||
getService().getUserById(id);
|
getUserService().getUserById(id);
|
||||||
assertSelectCount(1);
|
assertSelectCount(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -27,21 +27,21 @@ class NPlusOneEagerSimpleDomainIntegrationTest extends BaseNPlusOneIntegrationTe
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void givenEagerSetBasedUser_WhenFetchingAllUsers_ThenIssueNPlusOneRequests() {
|
void givenEagerSetBasedUser_WhenFetchingAllUsers_ThenIssueNPlusOneRequests() {
|
||||||
List<User> users = getService().findAll();
|
List<User> users = getUserService().findAll();
|
||||||
assertSelectCount(users.size() + 1);
|
assertSelectCount(users.size() + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ParameterizedTest
|
@ParameterizedTest
|
||||||
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
||||||
void givenEagerSetBasedUser_WhenFetchingOneUser_ThenIssueOneRequest(Long id) {
|
void givenEagerSetBasedUser_WhenFetchingOneUser_ThenIssueOneRequest(Long id) {
|
||||||
getService().getUserById(id);
|
getUserService().getUserById(id);
|
||||||
assertSelectCount(1);
|
assertSelectCount(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ParameterizedTest
|
@ParameterizedTest
|
||||||
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
@ValueSource(longs = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
|
||||||
void givenEagerListBasedUser_whenDeletePost_ThenIssueSingleUpdate(Long id) {
|
void givenEagerListBasedUser_whenDeletePost_ThenIssueSingleUpdate(Long id) {
|
||||||
Optional<User> optionalUser = getService().getUserById(id);
|
Optional<User> optionalUser = getUserService().getUserById(id);
|
||||||
assertSelectCount(1);
|
assertSelectCount(1);
|
||||||
optionalUser.ifPresent(user -> {
|
optionalUser.ifPresent(user -> {
|
||||||
Set<Post> posts = user.getPosts();
|
Set<Post> posts = user.getPosts();
|
||||||
|
@ -49,10 +49,10 @@ class NPlusOneEagerSimpleDomainIntegrationTest extends BaseNPlusOneIntegrationTe
|
||||||
reset();
|
reset();
|
||||||
if (!posts.isEmpty()) {
|
if (!posts.isEmpty()) {
|
||||||
posts.iterator().next().setAuthor(null);
|
posts.iterator().next().setAuthor(null);
|
||||||
getService().save(user);
|
getUserService().save(user);
|
||||||
assertSelectCount(1);
|
assertSelectCount(1);
|
||||||
assertUpdateCount(1);
|
assertUpdateCount(1);
|
||||||
getService().getUserById(id).ifPresent(updatedUser -> {
|
getUserService().getUserById(id).ifPresent(updatedUser -> {
|
||||||
assertThat(updatedUser.getPosts()).hasSize(originalNumberOfPosts - 1);
|
assertThat(updatedUser.getPosts()).hasSize(originalNumberOfPosts - 1);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue