Posting.java (1686B)
1 package xyz.kebigon.housesearch.domain; 2 3 import lombok.Data; 4 5 @Data 6 public class Posting 7 { 8 /** 9 * URL 10 */ 11 private final String url; 12 13 /** 14 * Price (in yens) 15 */ 16 private final Long price; 17 18 /** 19 * Age (in years) 20 */ 21 private final Integer age; 22 23 /** 24 * Land surface (in square meters) 25 */ 26 private final Double landSurface; 27 28 /** 29 * House surface (in square meters) 30 */ 31 private final Double houseSurface; 32 33 /** 34 * Time to go to the closest station (in minutes) 35 */ 36 private final Integer walkTimeToStation; 37 38 /** 39 * Closest station 40 */ 41 private final String station; 42 43 /** 44 * Fastest route in the ones compared by spring expression 45 */ 46 private Route fastestRoute; 47 48 /** 49 * Cheapest route in the ones compared by spring expression 50 */ 51 private Route cheapestRoute; 52 53 /** 54 * Easiest route in the ones compared by spring expression 55 */ 56 private Route easiestRoute; 57 58 public void updateRoutes(Route route) 59 { 60 if (fastestRoute == null || route.getTime() < fastestRoute.getTime() || (route.getTime() == fastestRoute.getTime() 61 && (route.getFare() < fastestRoute.getFare() || route.getTransfer() < fastestRoute.getTransfer()))) 62 fastestRoute = route; 63 if (cheapestRoute == null || route.getFare() < cheapestRoute.getFare() || (route.getFare() == cheapestRoute.getFare() 64 && (route.getTime() < cheapestRoute.getTime() || route.getTransfer() < cheapestRoute.getTransfer()))) 65 cheapestRoute = route; 66 if (easiestRoute == null || route.getTransfer() < easiestRoute.getTransfer() || (route.getTransfer() == easiestRoute.getTransfer() 67 && (route.getTime() < easiestRoute.getTime() || route.getFare() < easiestRoute.getFare()))) 68 easiestRoute = route; 69 } 70 }