Class Clock


  • public class Clock
    extends Object
    System-wide clock. This class provides current time. By default is only proxies the usual system current time functions. But it may be explicitly manipulated to artificially shift the time. This of little value for a running system but it is really useful in the tests. Especially tests that test time-based behavior. Using the Clock avoids changing the actual system time (or JVM's perception of time) therefore the tests are easier to use and usual tools still make sense (e.g. log record timestamps are correct).
    Author:
    Radovan Semancik
    • Constructor Detail

      • Clock

        public Clock()
    • Method Detail

      • init

        @PostConstruct
        public void init()
      • get

        public static Clock get()
      • currentTimeMillis

        public long currentTimeMillis()
      • isPast

        public boolean isPast​(long date)
      • isFuture

        public boolean isFuture​(long date)
      • override

        public void override​(long overrideTimestamp)
      • overrideDuration

        public void overrideDuration​(String durationString)
        Extends offset on top of existing offset.
      • overrideDuration

        public void overrideDuration​(Duration duration)
        Extends offset on top of existing offset.
      • overrideDuration

        public void overrideDuration​(Long offsetMillis)
        Extends offset on top of existing offset.
      • overrideOffset

        public void overrideOffset​(Long offsetMillis)
      • resetOverride

        public void resetOverride()