summaryrefslogtreecommitdiff
path: root/src/main/java/com/mavlushechka/a1qa/models
diff options
context:
space:
mode:
authorMavlushechka <mavlushechka@gmail.com>2022-10-07 23:46:46 +0500
committerMavlushechka <mavlushechka@gmail.com>2022-10-07 23:46:46 +0500
commitf8501d374dbd39a66078bad11384ea241848acc6 (patch)
tree41deb41375982e3db1d4071117dcf22377145ab8 /src/main/java/com/mavlushechka/a1qa/models
parent4495c73482a9fb3bdb87a75816974602e833278e (diff)
Solve 1st test case
Diffstat (limited to 'src/main/java/com/mavlushechka/a1qa/models')
-rw-r--r--src/main/java/com/mavlushechka/a1qa/models/Address.java30
-rw-r--r--src/main/java/com/mavlushechka/a1qa/models/Attachment.java10
-rw-r--r--src/main/java/com/mavlushechka/a1qa/models/Comment.java4
-rw-r--r--src/main/java/com/mavlushechka/a1qa/models/Company.java26
-rw-r--r--src/main/java/com/mavlushechka/a1qa/models/Geo.java24
-rw-r--r--src/main/java/com/mavlushechka/a1qa/models/Liker.java22
-rw-r--r--src/main/java/com/mavlushechka/a1qa/models/Post.java39
-rw-r--r--src/main/java/com/mavlushechka/a1qa/models/User.java66
8 files changed, 68 insertions, 153 deletions
diff --git a/src/main/java/com/mavlushechka/a1qa/models/Address.java b/src/main/java/com/mavlushechka/a1qa/models/Address.java
deleted file mode 100644
index ca2da32..0000000
--- a/src/main/java/com/mavlushechka/a1qa/models/Address.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.mavlushechka.a1qa.models;
-
-import java.util.Objects;
-
-public class Address {
-
- public final String street;
- public final String suite;
- public final String city;
- public final String zipcode;
- public final Geo geo;
-
-
- public Address(String street, String suite, String city, String zipcode, Geo geo) {
- this.street = street;
- this.suite = suite;
- this.city = city;
- this.zipcode = zipcode;
- this.geo = geo;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) return true;
- if (o == null || getClass() != o.getClass()) return false;
- Address address = (Address) o;
- return Objects.equals(street, address.street) && Objects.equals(suite, address.suite) && Objects.equals(city, address.city) && Objects.equals(zipcode, address.zipcode) && Objects.equals(geo, address.geo);
- }
-
-}
diff --git a/src/main/java/com/mavlushechka/a1qa/models/Attachment.java b/src/main/java/com/mavlushechka/a1qa/models/Attachment.java
new file mode 100644
index 0000000..a05ee71
--- /dev/null
+++ b/src/main/java/com/mavlushechka/a1qa/models/Attachment.java
@@ -0,0 +1,10 @@
+package com.mavlushechka.a1qa.models;
+
+public record Attachment(com.mavlushechka.a1qa.constants.Attachment attachment, int ownerId, int mediaId) {
+
+ @Override
+ public String toString() {
+ return attachment.name().toLowerCase() + ownerId + "_" + mediaId;
+ }
+
+}
diff --git a/src/main/java/com/mavlushechka/a1qa/models/Comment.java b/src/main/java/com/mavlushechka/a1qa/models/Comment.java
new file mode 100644
index 0000000..b8de1e0
--- /dev/null
+++ b/src/main/java/com/mavlushechka/a1qa/models/Comment.java
@@ -0,0 +1,4 @@
+package com.mavlushechka.a1qa.models;
+
+public record Comment(int id, User user, Post post, String message) {
+}
diff --git a/src/main/java/com/mavlushechka/a1qa/models/Company.java b/src/main/java/com/mavlushechka/a1qa/models/Company.java
deleted file mode 100644
index 3a1a448..0000000
--- a/src/main/java/com/mavlushechka/a1qa/models/Company.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.mavlushechka.a1qa.models;
-
-import java.util.Objects;
-
-public class Company {
-
- public final String name;
- public final String catchPhrase;
- public final String bs;
-
-
- public Company(String name, String catchPhrase, String bs) {
- this.name = name;
- this.catchPhrase = catchPhrase;
- this.bs = bs;
- }
-
- @Override
- public boolean equals(Object object) {
- if (this == object) return true;
- if (object == null || getClass() != object.getClass()) return false;
- Company company = (Company) object;
- return Objects.equals(name, company.name) && Objects.equals(catchPhrase, company.catchPhrase) && Objects.equals(bs, company.bs);
- }
-
-}
diff --git a/src/main/java/com/mavlushechka/a1qa/models/Geo.java b/src/main/java/com/mavlushechka/a1qa/models/Geo.java
deleted file mode 100644
index 4a514da..0000000
--- a/src/main/java/com/mavlushechka/a1qa/models/Geo.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.mavlushechka.a1qa.models;
-
-import java.util.Objects;
-
-public class Geo {
-
- public final String lat;
- public final String lng;
-
-
- public Geo(String lat, String lng) {
- this.lat = lat;
- this.lng = lng;
- }
-
- @Override
- public boolean equals(Object object) {
- if (this == object) return true;
- if (object == null || getClass() != object.getClass()) return false;
- Geo geo = (Geo) object;
- return Objects.equals(lat, geo.lat) && Objects.equals(lng, geo.lng);
- }
-
-}
diff --git a/src/main/java/com/mavlushechka/a1qa/models/Liker.java b/src/main/java/com/mavlushechka/a1qa/models/Liker.java
new file mode 100644
index 0000000..045852f
--- /dev/null
+++ b/src/main/java/com/mavlushechka/a1qa/models/Liker.java
@@ -0,0 +1,22 @@
+package com.mavlushechka.a1qa.models;
+
+public class Liker {
+
+ private final int uid;
+ private final int copied;
+
+
+ public Liker(int uid, int copied) {
+ this.uid = uid;
+ this.copied = copied;
+ }
+
+ public int getUid() {
+ return uid;
+ }
+
+ public int getCopied() {
+ return copied;
+ }
+
+}
diff --git a/src/main/java/com/mavlushechka/a1qa/models/Post.java b/src/main/java/com/mavlushechka/a1qa/models/Post.java
index c936a71..9cf8474 100644
--- a/src/main/java/com/mavlushechka/a1qa/models/Post.java
+++ b/src/main/java/com/mavlushechka/a1qa/models/Post.java
@@ -1,41 +1,4 @@
package com.mavlushechka.a1qa.models;
-import java.util.Objects;
-
-public class Post implements Comparable<Post> {
-
- public final String id;
- public final String title;
- public final String body;
- public final String userId;
-
-
- public Post(String id, String title, String body, String userId) {
- this.id = id;
- this.title = title;
- this.body = body;
- this.userId = userId;
- }
-
- @Override
- public int compareTo(Post post) {
- int thisId = Integer.parseInt(id);
- int otherId = Integer.parseInt(post.id);
-
- return Integer.compare(thisId, otherId);
- }
-
- @Override
- public boolean equals(Object object) {
- if (this == object) return true;
- if (object == null || getClass() != object.getClass()) return false;
- Post post = (Post) object;
- return Objects.equals(id, post.id) && Objects.equals(title, post.title) && Objects.equals(body, post.body) && Objects.equals(userId, post.userId);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(id, title, body, userId);
- }
-
+public record Post(int id, User owner, String message, Attachment attachment) {
}
diff --git a/src/main/java/com/mavlushechka/a1qa/models/User.java b/src/main/java/com/mavlushechka/a1qa/models/User.java
index ac13c82..c9bb3ff 100644
--- a/src/main/java/com/mavlushechka/a1qa/models/User.java
+++ b/src/main/java/com/mavlushechka/a1qa/models/User.java
@@ -1,50 +1,46 @@
package com.mavlushechka.a1qa.models;
-import java.util.Objects;
+import com.google.gson.annotations.SerializedName;
public class User {
- public final String id;
- public final String name;
- public final String username;
- public final String email;
- public final Address address;
- public final String phone;
- public final String website;
- public final Company company;
+ private final int id;
+ @SerializedName("first_name")
+ private final String firstName;
+ @SerializedName("last_name")
+ private final String lastName;
+ @SerializedName("can_access_closed")
+ private final boolean canAccessClosed;
+ @SerializedName("is_closed")
+ private final boolean isClosed;
- public User(String id, String name, String username, String email, Address address, String phone, String website, Company company) {
+ public User(int id, String firstName, String lastName, boolean canAccessClosed, boolean isClosed) {
this.id = id;
- this.name = name;
- this.username = username;
- this.email = email;
- this.address = address;
- this.phone = phone;
- this.website = website;
- this.company = company;
+ this.firstName = firstName;
+ this.lastName = lastName;
+ this.canAccessClosed = canAccessClosed;
+ this.isClosed = isClosed;
}
- @Override
- public boolean equals(Object object) {
- if (this == object) return true;
- if (object == null || getClass() != object.getClass()) return false;
- User user = (User) object;
- return Objects.equals(id, user.id) && Objects.equals(name, user.name) && Objects.equals(username, user.username) && Objects.equals(email, user.email) && Objects.equals(address, user.address) && Objects.equals(phone, user.phone) && Objects.equals(website, user.website) && Objects.equals(company, user.company);
+ public int getId() {
+ return id;
}
- @Override
- public String toString() {
- return "User{" +
- "id='" + id + '\'' +
- ", name='" + name + '\'' +
- ", username='" + username + '\'' +
- ", email='" + email + '\'' +
- ", address=" + address +
- ", phone='" + phone + '\'' +
- ", website='" + website + '\'' +
- ", company=" + company +
- '}';
+ public String getFirstName() {
+ return firstName;
+ }
+
+ public String getLastName() {
+ return lastName;
+ }
+
+ public boolean isCanAccessClosed() {
+ return canAccessClosed;
+ }
+
+ public boolean isClosed() {
+ return isClosed;
}
}