From b9e34c87f2866e28f47e58c4037f8c8d62e0631c Mon Sep 17 00:00:00 2001 From: tbilos Date: Wed, 23 Mar 2022 21:47:36 +0100 Subject: [PATCH 1/3] runnable version of spring boot app --- .../group7/secretservice/entity/Resource.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Resource.java b/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Resource.java index 69071604..a89730bd 100644 --- a/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Resource.java +++ b/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Resource.java @@ -6,6 +6,10 @@ import lombok.Setter; import javax.persistence.*; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; /** * @author Tomáš Biloš */ @@ -23,11 +27,11 @@ public class Resource { @Setter private String name; -// @ManyToOne -// @JoinColumn(name = "mission_id") -// @Getter -// @Setter -// private Mission mission; + @ManyToOne + @JoinColumn(name = "mission_id") + @Getter + @Setter + private Mission mission; public Resource() { } -- GitLab From 28729fad81d7f266dfb0daf426b4430227571522 Mon Sep 17 00:00:00 2001 From: tbilos Date: Thu, 24 Mar 2022 22:08:41 +0100 Subject: [PATCH 2/3] implement Mission entity + Dao --- .../group7/secretservice/dao/MissionDao.java | 7 ++ .../group7/secretservice/entity/Mission.java | 89 +++++++++++++++++++ .../group7/secretservice/entity/Resource.java | 1 + .../SecretServiceAppApplicationTests.java | 1 - 4 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/dao/MissionDao.java create mode 100644 src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Mission.java diff --git a/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/dao/MissionDao.java b/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/dao/MissionDao.java new file mode 100644 index 00000000..9024ae1e --- /dev/null +++ b/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/dao/MissionDao.java @@ -0,0 +1,7 @@ +package cz.fi.muni.pa165.seminar4.group7.secretservice.dao; + +import cz.fi.muni.pa165.seminar4.group7.secretservice.entity.Mission; +import org.springframework.data.repository.CrudRepository; + +public interface MissionDao extends CrudRepository { +} diff --git a/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Mission.java b/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Mission.java new file mode 100644 index 00000000..93b39b3b --- /dev/null +++ b/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Mission.java @@ -0,0 +1,89 @@ +package cz.fi.muni.pa165.seminar4.group7.secretservice.entity; + +import com.sun.istack.NotNull; + +import javax.persistence.*; +import java.sql.Date; +import java.util.List; + +/** + * @author Tomáš Biloš + */ +@Entity +public class Mission { + @Id + @Column(name = "id", nullable = false) + @GeneratedValue(strategy = GenerationType.IDENTITY) + private Long id; + + @NotNull + @Column(nullable = false) + private Date start; + + @NotNull + @Column(nullable = false) + private int duration; + + @NotNull + @Column(nullable = false) + private String objective; + + @OneToMany(mappedBy = "mission") + private List resources; + + // TODO + // @ManyToOne ? + // private Country country; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getStart() { + return start; + } + + public void setStart(Date start) { + this.start = start; + } + + public int getDuration() { + return duration; + } + + public void setDuration(int duration) { + this.duration = duration; + } + + public String getObjective() { + return objective; + } + + public void setObjective(String objective) { + this.objective = objective; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + + Mission mission = (Mission) o; + + if (duration != mission.duration) return false; + if (!start.equals(mission.start)) return false; + return objective.equals(mission.objective); + } + + @Override + public int hashCode() { + int result = start.hashCode(); + result = 31 * result + duration; + result = 31 * result + objective.hashCode(); + return result; + } +} diff --git a/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Resource.java b/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Resource.java index a89730bd..eb5e568d 100644 --- a/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Resource.java +++ b/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Resource.java @@ -4,6 +4,7 @@ import com.sun.istack.NotNull; import lombok.Getter; import lombok.Setter; + import javax.persistence.*; diff --git a/src/test/java/cz/fi/muni/pa165/seminar4/group7/secretservice/SecretServiceAppApplicationTests.java b/src/test/java/cz/fi/muni/pa165/seminar4/group7/secretservice/SecretServiceAppApplicationTests.java index e782f107..6c107314 100644 --- a/src/test/java/cz/fi/muni/pa165/seminar4/group7/secretservice/SecretServiceAppApplicationTests.java +++ b/src/test/java/cz/fi/muni/pa165/seminar4/group7/secretservice/SecretServiceAppApplicationTests.java @@ -19,6 +19,5 @@ class SecretServiceAppApplicationTests { resourceDao.save(new Resource(1L, "Milk")); assertThat(resourceDao.findByName("Milk").getName()).isEqualTo("Milk"); assertThat(resourceDao.findByName("Milk").getId()).isEqualTo(1L); - } } -- GitLab From 724258c07bbe9b4d75bb05bbd61e679b3db21e7e Mon Sep 17 00:00:00 2001 From: tbilos Date: Fri, 25 Mar 2022 12:33:23 +0100 Subject: [PATCH 3/3] add lombok to mission --- .../group7/secretservice/entity/Mission.java | 42 +++++-------------- 1 file changed, 10 insertions(+), 32 deletions(-) diff --git a/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Mission.java b/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Mission.java index 93b39b3b..e36a1e47 100644 --- a/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Mission.java +++ b/src/main/java/cz/fi/muni/pa165/seminar4/group7/secretservice/entity/Mission.java @@ -1,6 +1,8 @@ package cz.fi.muni.pa165.seminar4.group7.secretservice.entity; import com.sun.istack.NotNull; +import lombok.Getter; +import lombok.Setter; import javax.persistence.*; import java.sql.Date; @@ -14,18 +16,26 @@ public class Mission { @Id @Column(name = "id", nullable = false) @GeneratedValue(strategy = GenerationType.IDENTITY) + @Getter + @Setter private Long id; @NotNull @Column(nullable = false) + @Getter + @Setter private Date start; @NotNull @Column(nullable = false) + @Getter + @Setter private int duration; @NotNull @Column(nullable = false) + @Getter + @Setter private String objective; @OneToMany(mappedBy = "mission") @@ -35,38 +45,6 @@ public class Mission { // @ManyToOne ? // private Country country; - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public Date getStart() { - return start; - } - - public void setStart(Date start) { - this.start = start; - } - - public int getDuration() { - return duration; - } - - public void setDuration(int duration) { - this.duration = duration; - } - - public String getObjective() { - return objective; - } - - public void setObjective(String objective) { - this.objective = objective; - } - @Override public boolean equals(Object o) { if (this == o) return true; -- GitLab