Time¶
UCloud provides a Time
object which should be used for all actions which require a timestamp. The timestamps used in
UCloud are always returned as time expressed as milliseconds since the time 00:00:00 UTC on January 1, 1970.
Example: Retrieving the current time
val timestamp = Time.now()
object Time : TimeProvider
¶
Properties:
var provider: TimeProvider = SystemTimeProvider
Changing the provider
allows you to mock the time. This is extremely useful for testing time-releated code. You
should never change the provider
in UCloud production code.
Member functions:
fun TimeProvider.now(): Long
Returns the current time expressed as milliseconds since the time 00:00:00 UTC on January 1, 1970. See also System.currentTimeMillis.
object SystemTimeProvider : TimeProvider
¶
Provides the default time provider. This delegates to System.currentTimeMillis()
.
object StaticTimeProvider : TimeProvider
¶
Provides a TimeProvider
which has a static value which can be changed by the user.
Properties:
var time: Long = 0L
The time
property will be returned every time some code calls StaticTimeProvider.now()
. No synchronization is done
on this property.