package net.pterodactylus.rhynodge.filters.webpages.savoy;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
import java.time.LocalDateTime;
-import java.util.Comparator;
+import java.util.Objects;
/**
* Information about a performance and a link to buy a ticket.
*/
public class Performance {
+ @JsonProperty
private final LocalDateTime time;
+
+ @JsonProperty
+ private final String type;
+
+ @JsonProperty
private final String link;
- public static final Comparator<Performance> byTime = (leftPerformance, rightPerformance) -> leftPerformance.getTime().compareTo(rightPerformance.getTime());
+ public Performance() {
+ this(null, null, null);
+ }
- public Performance(LocalDateTime time, String link) {
+ public Performance(LocalDateTime time, String type, String link) {
this.time = time;
+ this.type = type;
this.link = link;
}
return time;
}
+ public String getType() {
+ return type;
+ }
+
public String getLink() {
return link;
}
+ @Override
+ public int hashCode() {
+ return Objects.hash(time, type, link);
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ Performance that = (Performance) o;
+ return Objects.equals(time, that.time) && Objects.equals(type, that.type) && Objects.equals(link, that.link);
+ }
+
}