Class TimeWindowedCustomer

  • All Implemented Interfaces:
    Standstill

    public class TimeWindowedCustomer
    extends Customer
    • Constructor Detail

      • TimeWindowedCustomer

        public TimeWindowedCustomer()
      • TimeWindowedCustomer

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

      • 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