Untitled
unknown
plain_text
5 months ago
3.1 kB
3
Indexable
import java.time.LocalTime; import java.util.ArrayList; import java.util.List; import java.util.Objects; public class FoodResource { private String name; private String address; private String type; private String operatingHours; private boolean isAvailable; private List<String> availableFoods = new ArrayList<String>(); // Constructor public FoodResource(String name, String address, String type, String operatingHours, boolean isAvailable, List<String> availableFoods) { this.name = name; this.address = address; this.type = type; this.operatingHours = operatingHours; this.isAvailable = isAvailable; this.availableFoods = availableFoods; } // Getters public String getName() { return name; } public String getAddress() { return address; } public String getType() { return type; } public String getOperatingHours() { return operatingHours; } public boolean isAvailable() { return isAvailable; } public List<String> getAvailableFoods() { return availableFoods; } // Setters public void setName(String name) { this.name = name; } public void setAddress(String address) { this.address = address; } public void setType(String type) { this.type = type; } public void setOperatingHours(String operatingHours) { this.operatingHours = operatingHours; } public void setAvailable(boolean available) { isAvailable = available; } public void setAvaliableFoods(List<String> avaliableFoods) { this.availableFoods = availableFoods; } // toString Method @Override public String toString() { return name + " (" + type + ") - " + (isAvailable ? "Open" : "Closed") + "\nAddress: " + address + "\nHours: " + operatingHours; } // equals Method @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; FoodResource that = (FoodResource) o; return isAvailable == that.isAvailable && Objects.equals(name, that.name) && Objects.equals(address, that.address) && Objects.equals(type, that.type) && Objects.equals(operatingHours, that.operatingHours); } // hashCode Method @Override public int hashCode() { return Objects.hash(name, address, type, operatingHours, isAvailable); } public boolean isOpen() { String[] hours = operatingHours.split("-"); LocalTime openTime = LocalTime.parse(hours[0]); LocalTime closeTime = LocalTime.parse(hours[1]); LocalTime currentTime = LocalTime.now(); return currentTime.isAfter(openTime) && currentTime.isBefore(closeTime); } }
Editor is loading...
Leave a Comment