All Implemented Interfaces:
LocationAware

public class TimeWindowedCustomer extends Customer
  • Constructor Details

    • TimeWindowedCustomer

      public TimeWindowedCustomer()
    • TimeWindowedCustomer

      public TimeWindowedCustomer(long id, Location location, int demand, long readyTime, long dueTime, long serviceDuration)
  • Method Details

    • getReadyTime

      public long getReadyTime()
      Returns:
      a positive number, the time multiplied by 1000 to avoid floating point arithmetic rounding errors
    • setReadyTime

      public void setReadyTime(long readyTime)
    • getDueTime

      public long getDueTime()
      Returns:
      a positive number, the time multiplied by 1000 to avoid floating point arithmetic rounding errors
    • setDueTime

      public void setDueTime(long dueTime)
    • getServiceDuration

      public long getServiceDuration()
      Returns:
      a positive number, the time multiplied by 1000 to avoid floating point arithmetic rounding errors
    • setServiceDuration

      public void setServiceDuration(long serviceDuration)
    • getArrivalTime

      public Long getArrivalTime()
      Returns:
      a positive number, the time multiplied by 1000 to avoid floating point arithmetic rounding errors
    • setArrivalTime

      public void setArrivalTime(Long arrivalTime)
    • getDepartureTime

      public Long getDepartureTime()
      Returns:
      a positive number, the time multiplied by 1000 to avoid floating point arithmetic rounding errors
    • isArrivalBeforeReadyTime

      public boolean isArrivalBeforeReadyTime()
    • isArrivalAfterDueTime

      public boolean isArrivalAfterDueTime()
    • getTimeWindowGapTo

      public long getTimeWindowGapTo(TimeWindowedCustomer other)
      Returns:
      a positive number, the time multiplied by 1000 to avoid floating point arithmetic rounding errors