Class SchedulerClock
java.lang.Object
java.time.Clock
com.couchbase.client.core.scheduler.SchedulerClock
- All Implemented Interfaces:
InstantSource
Clock adapter around
Scheduler
. That adoption gives better integration with
Java 8 DateTime API.
This feature may be useful for testing purpose, especially for integration with
VirtualTimeScheduler
. For example:
VirtualTimeScheduler scheduler = VirtualTimeScheduler.create();
SchedulerClock clock = SchedulerClock.of(scheduler);
ZonedDateTime beforeAdvance = ZonedDateTime.now(clock);
scheduler.advanceTimeBy(Duration.ofSeconds(1));
ZonedDateTime afterAdvance = ZonedDateTime.now(clock);
Assert.assertTrue(beforeAdvance.isBefore(afterAdvance));
- Since:
- 3.1.4
- Author:
- Oleh Dokuka, Peter Royal
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Return wrapped Scheduler instancegetZone()
int
hashCode()
instant()
Gets the current instant of the clock.long
millis()
static SchedulerClock
static SchedulerClock
toString()
withScheduler
(Scheduler scheduler) Builder method that returns new instance ofSchedulerClock
which is constructed from oldZoneId
and passedScheduler
instanceMethods inherited from class java.time.Clock
fixed, offset, system, systemDefaultZone, systemUTC, tick, tickMillis, tickMinutes, tickSeconds
-
Method Details
-
getZone
-
withZone
- Specified by:
withZone
in interfaceInstantSource
- Specified by:
withZone
in classClock
-
getScheduler
Return wrapped Scheduler instance- Returns:
Scheduler
instance
-
withScheduler
Builder method that returns new instance ofSchedulerClock
which is constructed from oldZoneId
and passedScheduler
instance- Returns:
SchedulerClock
instance
-
millis
public long millis()- Specified by:
millis
in interfaceInstantSource
- Overrides:
millis
in classClock
-
instant
Gets the current instant of the clock.This returns an instant representing the current instant as defined by the clock.
Note: If scheduler does not support time in nanoseconds the returned
Instant
will be limited by milliseconds- Specified by:
instant
in interfaceInstantSource
- Specified by:
instant
in classClock
- Returns:
- the current instant from this clock, not null
-
equals
-
hashCode
public int hashCode() -
toString
-
of
- Parameters:
scheduler
-Scheduler
instance- Returns:
- new
SchedulerClock
-
of
- Parameters:
scheduler
-Scheduler
instance- Returns:
- new
SchedulerClock
-