Class TimeConstants

java.lang.Object
name.jurgenei.gradle.antlr.constants.TimeConstants

public final class TimeConstants extends Object
Time unit conversion constants to avoid magic numbers. Centralizes all time-related constants and conversion utilities.
  • Field Details

    • NANOS_PER_SECOND

      public static final long NANOS_PER_SECOND
      Nanoseconds per second
      See Also:
    • NANOS_PER_MILLI

      public static final long NANOS_PER_MILLI
      Nanoseconds per millisecond
      See Also:
    • SECONDS_PER_MINUTE

      public static final long SECONDS_PER_MINUTE
      Seconds per minute
      See Also:
    • SECONDS_PER_HOUR

      public static final long SECONDS_PER_HOUR
      Seconds per hour
      See Also:
    • MINUTES_PER_HOUR

      public static final long MINUTES_PER_HOUR
      Minutes per hour
      See Also:
  • Method Details

    • nanosToSeconds

      public static long nanosToSeconds(long nanos)
      Converts nanoseconds to seconds, rounding to nearest whole second.
      Parameters:
      nanos - duration in nanoseconds
      Returns:
      duration in seconds (rounded)
    • nanosToMillis

      public static double nanosToMillis(long nanos)
      Converts nanoseconds to milliseconds.
      Parameters:
      nanos - duration in nanoseconds
      Returns:
      duration in milliseconds (as double for precision)
    • toHourMinuteSecond

      public static long[] toHourMinuteSecond(long totalSeconds)
      Converts total seconds to HH:MM:SS format components. Returns array: [hours, minutes, seconds]
      Parameters:
      totalSeconds - total duration in seconds
      Returns:
      array of [hours, minutes, seconds]