implements Serializable {
+ @Serial
private static final long serialVersionUID = 0L;
private static final InstantConverter INSTANCE = new InstantConverter();
@@ -70,6 +72,7 @@ protected Instant doBackward(Timestamp value) {
return result;
}
+ @Serial
private Object readResolve() {
return INSTANCE;
}
diff --git a/time/src/main/java/io/spine/time/Temporal.java b/time/src/main/java/io/spine/time/Temporal.java
index a29eb5271..34e83c619 100644
--- a/time/src/main/java/io/spine/time/Temporal.java
+++ b/time/src/main/java/io/spine/time/Temporal.java
@@ -42,15 +42,14 @@
*
* The name of this interface is inspired by the {@link java.time.temporal.Temporal}.
*
- *
Provides a {@linkplain #compareTo(Temporal) default implementation} for comparison of two
- * points in time. It is not supposed that concrete {@code Temporal}s would override this comparison
- * mechanism.
+ *
Provides a {@linkplain #compareTo(Temporal) default implementation} for
+ * comparison of two points in time. It is not supposed that concrete
+ * {@code Temporal}s would override this comparison mechanism.
*
* @param
* the type of itself
* @apiNote This interface is mainly (though not exclusively) designed to be implemented in
- * messages
- * marked with the {@code (is)} option. See {@link TemporalMessage}.
+ * messages marked with the {@code (is)} option. See {@link TemporalMessage}.
*/
@SuppressWarnings("ClassWithTooManyMethods") // because of convenience overloads.
public interface Temporal> extends Comparable {
@@ -86,8 +85,19 @@ default Timestamp toTimestamp() {
* Packs this point in time into an {@link Any}.
*
* @return itself packed as {@code Any}
+ * @deprecated Please use {@link #packed()} instead.
*/
- Any toAny();
+ @Deprecated
+ default Any toAny() {
+ return packed();
+ }
+
+ /**
+ * Packs this point in time into an {@link Any}.
+ *
+ * @return itself packed as {@code Any}
+ */
+ Any packed();
/**
* Compares this point in time to the given one.
diff --git a/time/src/main/java/io/spine/time/TemporalMessage.java b/time/src/main/java/io/spine/time/TemporalMessage.java
index bd5317688..b00372149 100644
--- a/time/src/main/java/io/spine/time/TemporalMessage.java
+++ b/time/src/main/java/io/spine/time/TemporalMessage.java
@@ -61,7 +61,7 @@ public interface TemporalMessage> extends Temporal<
* @return this message as an {@code Any}
*/
@Override
- default Any toAny() {
+ default Any packed() {
var any = AnyPacker.pack(this);
return any;
}
diff --git a/time/src/main/java/io/spine/time/TimestampTemporal.java b/time/src/main/java/io/spine/time/TimestampTemporal.java
index c14c20206..86351f112 100644
--- a/time/src/main/java/io/spine/time/TimestampTemporal.java
+++ b/time/src/main/java/io/spine/time/TimestampTemporal.java
@@ -74,7 +74,7 @@ public Timestamp toTimestamp() {
}
@Override
- public Any toAny() {
+ public Any packed() {
return AnyPacker.pack(value);
}
}
diff --git a/time/src/main/java/io/spine/time/validate/WhenConstraint.java b/time/src/main/java/io/spine/time/validate/WhenConstraint.java
index b3f6be625..420672fa4 100644
--- a/time/src/main/java/io/spine/time/validate/WhenConstraint.java
+++ b/time/src/main/java/io/spine/time/validate/WhenConstraint.java
@@ -125,7 +125,7 @@ private ConstraintViolation newTimeViolation(FieldValue fieldValue, Temporal>
var violation = ConstraintViolation.newBuilder()
.setMessage(msg)
.setFieldPath(fieldPath)
- .setFieldValue(value.toAny())
+ .setFieldValue(value.packed())
.build();
return violation;
}
diff --git a/time/src/main/kotlin/io/spine/time/DurationExts.kt b/time/src/main/kotlin/io/spine/time/DurationExts.kt
index 70618dd21..87a69eda0 100644
--- a/time/src/main/kotlin/io/spine/time/DurationExts.kt
+++ b/time/src/main/kotlin/io/spine/time/DurationExts.kt
@@ -45,7 +45,6 @@ import io.spine.protobuf.Durations2
import io.spine.protobuf.Durations2.add
import io.spine.protobuf.Durations2.isPositiveOrZero
import io.spine.protobuf.Durations2.isZero
-import io.spine.protobuf.Durations2.toJavaTime
/**
* Compares this duration with the passed one.
@@ -159,10 +158,6 @@ public fun Duration.toMicros(): Long = toMicros(this)
*/
public fun Duration.toNanos(): Long = toNanos(this)
-/**
- * Converts this duration to Java Time instance.
- */
-public fun Duration.toJavaTime(): java.time.Duration = toJavaTime(this)
/**
* Adds the passed duration to this one.
diff --git a/time/src/main/kotlin/io/spine/time/JavaTimeExts.kt b/time/src/main/kotlin/io/spine/time/JavaTimeExts.kt
index fff8dfe4f..cbf256993 100644
--- a/time/src/main/kotlin/io/spine/time/JavaTimeExts.kt
+++ b/time/src/main/kotlin/io/spine/time/JavaTimeExts.kt
@@ -31,6 +31,10 @@ package io.spine.time
import com.google.protobuf.Timestamp
import java.time.Instant
+// This file contains only essential extension functions for converting Java Time types
+// to our API. These functions are needed for features of this module.
+// For other conversion functions, please see the `java-time` module.
+
/**
* Converts this instant to [Timestamp].
*/
diff --git a/time/src/main/kotlin/io/spine/time/TimestampExts.kt b/time/src/main/kotlin/io/spine/time/TimestampExts.kt
index 7da6c7276..55d00fd25 100644
--- a/time/src/main/kotlin/io/spine/time/TimestampExts.kt
+++ b/time/src/main/kotlin/io/spine/time/TimestampExts.kt
@@ -148,7 +148,3 @@ public operator fun Timestamp.minus(other: Timestamp): Duration = between(this,
*/
public operator fun Timestamp.minus(length: Duration): Timestamp = subtract(this, length)
-/**
- * Converts this timestamp to `Instant`.
- */
-public fun Timestamp.toInstant(): Instant = InstantConverter.reversed().convert(this)!!
diff --git a/time/src/test/java/io/spine/time/TemporalMessageTest.java b/time/src/test/java/io/spine/time/TemporalMessageTest.java
index 247177a06..4d4cb2485 100644
--- a/time/src/test/java/io/spine/time/TemporalMessageTest.java
+++ b/time/src/test/java/io/spine/time/TemporalMessageTest.java
@@ -75,7 +75,7 @@ void toTimestamp() {
@DisplayName("pack self to Any")
void toAny() {
var temporal = create();
- var any = temporal.toAny();
+ var any = temporal.packed();
var assertAny = assertThat(any);
assertAny.isNotNull();
assertAny.isNotEqualToDefaultInstance();
diff --git a/time/src/test/java/io/spine/time/TimestampTemporalTest.java b/time/src/test/java/io/spine/time/TimestampTemporalTest.java
index 8e85855e8..ab00d7f7b 100644
--- a/time/src/test/java/io/spine/time/TimestampTemporalTest.java
+++ b/time/src/test/java/io/spine/time/TimestampTemporalTest.java
@@ -67,7 +67,7 @@ void fromTimestamp() {
void convertToAny() {
var timestamp = currentTime();
var temporal = Temporals.from(timestamp);
- assertEquals(pack(timestamp), temporal.toAny());
+ assertEquals(pack(timestamp), temporal.packed());
}
private static TimestampTemporal now() {
diff --git a/time/src/test/java/io/spine/time/given/InstantTemporal.java b/time/src/test/java/io/spine/time/given/InstantTemporal.java
index 857b1a50e..a40b9c2da 100644
--- a/time/src/test/java/io/spine/time/given/InstantTemporal.java
+++ b/time/src/test/java/io/spine/time/given/InstantTemporal.java
@@ -51,7 +51,7 @@ public Instant toInstant() {
}
@Override
- public Any toAny() {
+ public Any packed() {
return AnyPacker.pack(toTimestamp());
}
}
diff --git a/time/src/test/kotlin/io/spine/time/DurationExtsSpec.kt b/time/src/test/kotlin/io/spine/time/DurationExtsSpec.kt
index a0c5c6b13..164eabaf8 100644
--- a/time/src/test/kotlin/io/spine/time/DurationExtsSpec.kt
+++ b/time/src/test/kotlin/io/spine/time/DurationExtsSpec.kt
@@ -140,10 +140,6 @@ internal class DurationExtsSpec {
duration.toNanos() shouldBe toNanos(duration)
}
- @Test
- fun toJavaTime() {
- duration.toJavaTime() shouldBe toJavaTime(duration)
- }
}
@Nested
diff --git a/time/src/test/kotlin/io/spine/time/TimestampExtsSpec.kt b/time/src/test/kotlin/io/spine/time/TimestampExtsSpec.kt
index a34285f4f..e57addaad 100644
--- a/time/src/test/kotlin/io/spine/time/TimestampExtsSpec.kt
+++ b/time/src/test/kotlin/io/spine/time/TimestampExtsSpec.kt
@@ -78,10 +78,6 @@ internal class TimestampExtsSpec {
past.toNanos() shouldBe toNanos(past)
}
- @Test
- fun instant() {
- past.toInstant() shouldBe past().toInstant()
- }
}
@Nested
diff --git a/version.gradle.kts b/version.gradle.kts
index 1a3b4da6a..51639e7e7 100644
--- a/version.gradle.kts
+++ b/version.gradle.kts
@@ -29,4 +29,4 @@
*
* For dependencies on Spine modules please see [io.spine.dependency.local.Spine].
*/
-val versionToPublish by extra("2.0.0-SNAPSHOT.204")
+val versionToPublish by extra("2.0.0-SNAPSHOT.210")