You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pekko.apache.org by he...@apache.org on 2025/09/19 15:34:34 UTC
(pekko) branch main updated: chore: Use Scala Option Converter (#2203)
This is an automated email from the ASF dual-hosted git repository.
hepin pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pekko.git
The following commit(s) were added to refs/heads/main by this push:
new 04f5fcd1b7 chore: Use Scala Option Converter (#2203)
04f5fcd1b7 is described below
commit 04f5fcd1b794940dd5f2ca2bdd80ef43c904ef24
Author: PJ Fanning <pj...@users.noreply.github.com>
AuthorDate: Fri Sep 19 16:34:29 2025 +0100
chore: Use Scala Option Converter (#2203)
* chore: Use Scala Option Converter
---------
Co-authored-by: He-Pin <he...@gmail.com>
---
CONTRIBUTING.md | 2 +-
.../actor/testkit/typed/CapturedLogEvent.scala | 2 +-
.../pekko/actor/testkit/typed/LoggingEvent.scala | 2 +-
.../pekko/util/JavaConverterScala3InlineTest.java | 8 +-
.../org/apache/pekko/util/Scala212CompatTest.scala | 76 -------------------
.../actor/typed/delivery/ProducerController.scala | 2 +-
.../delivery/WorkPullingProducerController.scala | 2 +-
.../javaapi-option.excludes | 12 +++
.../org/apache/pekko/util/OptionConverters.scala | 85 ----------------------
.../org/apache/pekko/util/OptionConverters.scala | 79 --------------------
.../org/apache/pekko/actor/AbstractActor.scala | 4 +-
.../main/scala/org/apache/pekko/actor/Actor.scala | 2 +-
.../scala/org/apache/pekko/actor/ActorSystem.scala | 2 +-
.../scala/org/apache/pekko/actor/Address.scala | 3 +-
.../apache/pekko/actor/CoordinatedShutdown.scala | 2 +-
.../pekko/actor/setup/ActorSystemSetup.scala | 2 +-
.../scala/org/apache/pekko/pattern/Patterns.scala | 4 +-
.../delivery/ShardingProducerController.scala | 2 +-
.../typed/internal/ClusterShardingImpl.scala | 2 +-
.../typed/internal/ShardedDaemonProcessImpl.scala | 2 +-
.../sharding/typed/javadsl/ClusterSharding.scala | 2 +-
.../coordination/lease/internal/LeaseAdapter.scala | 2 +-
.../apache/pekko/discovery/ServiceDiscovery.scala | 2 +-
.../pekko/cluster/ddata/ReplicatedData.scala | 2 +-
.../pekko/persistence/query/EventEnvelope.scala | 2 +-
.../persistence/query/typed/EventEnvelope.scala | 4 +-
.../javadsl/EventSourcedBehaviorTestKit.scala | 2 +-
.../PersistenceTestKitDurableStateStore.scala | 2 +-
.../typed/internal/EventSourcedBehaviorImpl.scala | 2 +-
.../typed/javadsl/EventSourcedBehavior.scala | 2 +-
.../typed/javadsl/PersistentFSMMigration.scala | 2 +-
.../persistence/snapshot/japi/SnapshotStore.scala | 2 +-
.../state/javadsl/DurableStateStore.scala | 2 +-
.../state/scaladsl/DurableStateStore.scala | 2 +-
.../jackson/JacksonObjectMapperProvider.scala | 3 +-
.../scala/org/apache/pekko/stream/Attributes.scala | 2 +-
.../org/apache/pekko/stream/javadsl/Flow.scala | 4 +-
.../pekko/stream/javadsl/FlowWithContext.scala | 2 +-
.../org/apache/pekko/stream/javadsl/Queue.scala | 2 +-
.../apache/pekko/stream/javadsl/RetryFlow.scala | 2 +-
.../org/apache/pekko/stream/javadsl/Sink.scala | 2 +-
.../org/apache/pekko/stream/javadsl/Source.scala | 4 +-
.../pekko/stream/javadsl/SourceWithContext.scala | 2 +-
.../org/apache/pekko/stream/javadsl/SubFlow.scala | 4 +-
.../apache/pekko/stream/javadsl/SubSource.scala | 4 +-
.../org/apache/pekko/stream/javadsl/Tcp.scala | 2 +-
.../org/apache/pekko/stream/scaladsl/Queue.scala | 2 +-
47 files changed, 67 insertions(+), 293 deletions(-)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 6b93cd8d2c..e92557365d 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -531,7 +531,7 @@ Scala has proven the most viable way to do it, as long as you keep the following
1. Use `org.apache.pekko.util.FutureConverters` to translate `Future`s to `CompletionStage`s (or vice versa).
-1. Use `org.apache.pekko.util.OptionConverters` to translate `Option`s to Java `Optional`s (or vice versa).
+1. Use `scala.jdk.javaapi.OptionConverters` to translate `Option`s to Java `Optional`s (or vice versa).
1. Use `org.apache.pekko.util.FunctionConverters` to translate Scala Functions to Java Functions (or vice versa).
diff --git a/actor-testkit-typed/src/main/scala/org/apache/pekko/actor/testkit/typed/CapturedLogEvent.scala b/actor-testkit-typed/src/main/scala/org/apache/pekko/actor/testkit/typed/CapturedLogEvent.scala
index 6ee53a7709..13c06cac00 100644
--- a/actor-testkit-typed/src/main/scala/org/apache/pekko/actor/testkit/typed/CapturedLogEvent.scala
+++ b/actor-testkit-typed/src/main/scala/org/apache/pekko/actor/testkit/typed/CapturedLogEvent.scala
@@ -20,7 +20,7 @@ import org.slf4j.event.Level
import org.apache.pekko
import pekko.annotation.InternalApi
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import pekko.util.OptionVal
/**
diff --git a/actor-testkit-typed/src/main/scala/org/apache/pekko/actor/testkit/typed/LoggingEvent.scala b/actor-testkit-typed/src/main/scala/org/apache/pekko/actor/testkit/typed/LoggingEvent.scala
index 1e540d8125..cb893fdb91 100644
--- a/actor-testkit-typed/src/main/scala/org/apache/pekko/actor/testkit/typed/LoggingEvent.scala
+++ b/actor-testkit-typed/src/main/scala/org/apache/pekko/actor/testkit/typed/LoggingEvent.scala
@@ -20,7 +20,7 @@ import org.slf4j.event.Level
import org.apache.pekko
import pekko.util.ccompat.JavaConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
object LoggingEvent {
diff --git a/actor-tests/src/test/java/org/apache/pekko/util/JavaConverterScala3InlineTest.java b/actor-tests/src/test/java/org/apache/pekko/util/JavaConverterScala3InlineTest.java
index 5af2cd6a6a..cb55eb61a7 100644
--- a/actor-tests/src/test/java/org/apache/pekko/util/JavaConverterScala3InlineTest.java
+++ b/actor-tests/src/test/java/org/apache/pekko/util/JavaConverterScala3InlineTest.java
@@ -22,13 +22,13 @@ import java.util.*;
import java.util.concurrent.CompletableFuture;
import scala.Option;
import scala.concurrent.Future;
+import scala.jdk.javaapi.OptionConverters;
/**
* These tests are here to ensure that methods from {@link org.apache.pekko.util.FutureConverters},
- * {@link org.apache.pekko.util.JavaDurationConverters} and {@link
- * org.apache.pekko.util.OptionConverters} for use within Java can be compiled from with Java
- * sources. This is because methods marked with the Scala 3 inline keyword cannot be called from
- * within Java (see https://github.com/lampepfl/dotty/issues/19346)
+ * {@link org.apache.pekko.util.JavaDurationConverters} for use within Java can be compiled from
+ * with Java sources. This is because methods marked with the Scala 3 inline keyword cannot be
+ * called from within Java (see https://github.com/lampepfl/dotty/issues/19346)
*/
public class JavaConverterScala3InlineTest {
public void compileTest() {
diff --git a/actor-tests/src/test/scala/org/apache/pekko/util/Scala212CompatTest.scala b/actor-tests/src/test/scala/org/apache/pekko/util/Scala212CompatTest.scala
deleted file mode 100644
index 2380197b22..0000000000
--- a/actor-tests/src/test/scala/org/apache/pekko/util/Scala212CompatTest.scala
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.pekko.util
-
-import org.apache.pekko
-import pekko.util.OptionConverters._
-
-import java.util._
-import scala.annotation.nowarn
-
-/**
- * These tests are here to ensure that methods from [[org.apache.pekko.util.FutureConverters]], [[org.apache.pekko.util.OptionConverters]]
- * and [[org.apache.pekko.util.FunctionConverters]] that used within Pekko ecosystem but not Pekko core properly cross compile on Scala 2.12
- * and Scala 2.13+.
- *
- * Remove this once Scala 2.12 support is dropped since all methods are in Scala 2.13+ stdlib
- */
-
-@nowarn("msg=deprecated")
-object Scala212CompatTest {
-
- // .toJavaPrimitive tests
- val javaDoubleOptional: java.util.Optional[Double] = java.util.Optional.of(1.0)
- val scalaDoubleOption: Option[Double] = Some(1.0)
- val doubleOptionalToJavaPrimitive: OptionalDouble = javaDoubleOptional.toJavaPrimitive
- val doubleOptionToJavaPrimitive: OptionalDouble = scalaDoubleOption.toJavaPrimitive
-
- val javaIntOptional: java.util.Optional[Int] = java.util.Optional.of(1)
- val scalaIntOption: Option[Int] = Some(1)
- val intOptionalToJavaPrimitive: OptionalInt = javaIntOptional.toJavaPrimitive
- val intOptionToJavaPrimitive: OptionalInt = scalaIntOption.toJavaPrimitive
-
- val javaLongOptional: java.util.Optional[Long] = java.util.Optional.of(1L)
- val scalaLongOption: Option[Long] = Some(1L)
- val longOptionalToJavaPrimitive: OptionalLong = javaLongOptional.toJavaPrimitive
- val longOptionToJavaPrimitive: OptionalLong = scalaLongOption.toJavaPrimitive
-
- // from java optional primitive
- val javaOptionalDouble: java.util.OptionalDouble = java.util.OptionalDouble.of(1.0)
- val optionalDoubleToScala: Option[Double] = javaOptionalDouble.toScala
- val optionalDoubleToJavaGeneric: Optional[Double] = javaOptionalDouble.toJavaGeneric
-
- val javaOptionalInt: java.util.OptionalInt = java.util.OptionalInt.of(1)
- val optionalIntToScala: Option[Int] = javaOptionalInt.toScala
- val optionalIntToJavaGeneric: Optional[Int] = javaOptionalInt.toJavaGeneric
-
- val javaOptionalLong: java.util.OptionalLong = java.util.OptionalLong.of(1L)
- val optionalLongToScala: Option[Long] = javaOptionalLong.toScala
- val optionalLongToJavaGeneric: Optional[Long] = javaOptionalLong.toJavaGeneric
-
- // OptionConverters toScala and toJava
- OptionConverters.toJava(OptionConverters.toScala(java.util.Optional.of("")))
- OptionConverters.toJava(OptionConverters.toScala(java.util.OptionalDouble.of(1.0)))
- OptionConverters.toJava(OptionConverters.toScala(java.util.OptionalInt.of(1)))
- OptionConverters.toJava(OptionConverters.toScala(java.util.OptionalLong.of(1L)))
-
- // Iterable.single
- val queue = scala.collection.immutable.Queue.empty[ByteString]
- queue.enqueue(Iterable.single(ByteString.empty))
-
-}
diff --git a/actor-typed/src/main/scala/org/apache/pekko/actor/typed/delivery/ProducerController.scala b/actor-typed/src/main/scala/org/apache/pekko/actor/typed/delivery/ProducerController.scala
index 65e525d0a1..c4e9fe867c 100644
--- a/actor-typed/src/main/scala/org/apache/pekko/actor/typed/delivery/ProducerController.scala
+++ b/actor-typed/src/main/scala/org/apache/pekko/actor/typed/delivery/ProducerController.scala
@@ -33,7 +33,7 @@ import pekko.annotation.InternalApi
import pekko.util.Helpers.toRootLowerCase
import pekko.util.Helpers.Requiring
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* Point-to-point reliable delivery between a single producer actor sending messages and a single consumer
diff --git a/actor-typed/src/main/scala/org/apache/pekko/actor/typed/delivery/WorkPullingProducerController.scala b/actor-typed/src/main/scala/org/apache/pekko/actor/typed/delivery/WorkPullingProducerController.scala
index bbe094f3c2..ceea8229d1 100644
--- a/actor-typed/src/main/scala/org/apache/pekko/actor/typed/delivery/WorkPullingProducerController.scala
+++ b/actor-typed/src/main/scala/org/apache/pekko/actor/typed/delivery/WorkPullingProducerController.scala
@@ -30,7 +30,7 @@ import pekko.actor.typed.receptionist.ServiceKey
import pekko.actor.typed.scaladsl.Behaviors
import pekko.annotation.ApiMayChange
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* Work pulling is a pattern where several worker actors pull tasks in their own pace from
diff --git a/actor/src/main/mima-filters/2.0.x.backwards.excludes/javaapi-option.excludes b/actor/src/main/mima-filters/2.0.x.backwards.excludes/javaapi-option.excludes
index df185d36ca..3b9eaf3aed 100644
--- a/actor/src/main/mima-filters/2.0.x.backwards.excludes/javaapi-option.excludes
+++ b/actor/src/main/mima-filters/2.0.x.backwards.excludes/javaapi-option.excludes
@@ -21,3 +21,15 @@ ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.japi.Option$")
ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.japi.Option$None$")
ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.japi.Option$Some")
ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.japi.Option$Some$")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters$")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters$RichOption")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters$RichOption$")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters$RichOptional")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters$RichOptional$")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters$RichOptionalDouble")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters$RichOptionalDouble$")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters$RichOptionalInt")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters$RichOptionalInt$")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters$RichOptionalLong")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.util.OptionConverters$RichOptionalLong$")
diff --git a/actor/src/main/scala-2.13/org/apache/pekko/util/OptionConverters.scala b/actor/src/main/scala-2.13/org/apache/pekko/util/OptionConverters.scala
deleted file mode 100644
index 97eab8a0da..0000000000
--- a/actor/src/main/scala-2.13/org/apache/pekko/util/OptionConverters.scala
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.pekko.util
-
-import org.apache.pekko.annotation.InternalStableApi
-
-import java.util._
-import scala.jdk.OptionShape
-
-/**
- * INTERNAL API
- *
- * Remove this once Scala 2.12 support is dropped since all methods are in Scala 2.13+ stdlib
- */
-@InternalStableApi
-private[pekko] object OptionConverters {
-
- @inline final def toScala[A](o: Optional[A]): Option[A] = scala.jdk.javaapi.OptionConverters.toScala(o)
-
- @inline def toScala(o: OptionalDouble): Option[java.lang.Double] = scala.jdk.javaapi.OptionConverters.toScala(o)
-
- @inline def toScala(o: OptionalInt): Option[java.lang.Integer] = scala.jdk.javaapi.OptionConverters.toScala(o)
-
- @inline def toScala(o: OptionalLong): Option[java.lang.Long] = scala.jdk.javaapi.OptionConverters.toScala(o)
-
- @inline final def toJava[A](o: Option[A]): Optional[A] = scala.jdk.javaapi.OptionConverters.toJava(o)
-
- implicit final class RichOptional[A](private val o: java.util.Optional[A]) extends AnyVal {
- @inline def toScala: Option[A] = scala.jdk.OptionConverters.RichOptional(o).toScala
-
- @inline def toJavaPrimitive[O](implicit shape: OptionShape[A, O]): O =
- scala.jdk.OptionConverters.RichOptional(o).toJavaPrimitive
- }
-
- implicit final class RichOption[A](private val o: Option[A]) extends AnyVal {
- @inline def toJava: Optional[A] = scala.jdk.OptionConverters.RichOption(o).toJava
-
- @inline def toJavaPrimitive[O](implicit shape: OptionShape[A, O]): O =
- scala.jdk.OptionConverters.RichOption(o).toJavaPrimitive
- }
-
- implicit class RichOptionalDouble(private val o: OptionalDouble) extends AnyVal {
-
- /** Convert a Java `OptionalDouble` to a Scala `Option` */
- @inline def toScala: Option[Double] = scala.jdk.OptionConverters.RichOptionalDouble(o).toScala
-
- /** Convert a Java `OptionalDouble` to a generic Java `Optional` */
- @inline def toJavaGeneric: Optional[Double] = scala.jdk.OptionConverters.RichOptionalDouble(o).toJavaGeneric
- }
-
- /** Provides conversions from `OptionalInt` to Scala `Option` and the generic `Optional` */
- implicit class RichOptionalInt(private val o: OptionalInt) extends AnyVal {
-
- /** Convert a Java `OptionalInt` to a Scala `Option` */
- @inline def toScala: Option[Int] = scala.jdk.OptionConverters.RichOptionalInt(o).toScala
-
- /** Convert a Java `OptionalInt` to a generic Java `Optional` */
- @inline def toJavaGeneric: Optional[Int] = scala.jdk.OptionConverters.RichOptionalInt(o).toJavaGeneric
- }
-
- /** Provides conversions from `OptionalLong` to Scala `Option` and the generic `Optional` */
- implicit class RichOptionalLong(private val o: OptionalLong) extends AnyVal {
-
- /** Convert a Java `OptionalLong` to a Scala `Option` */
- @inline def toScala: Option[Long] = scala.jdk.OptionConverters.RichOptionalLong(o).toScala
-
- /** Convert a Java `OptionalLong` to a generic Java `Optional` */
- @inline def toJavaGeneric: Optional[Long] = scala.jdk.OptionConverters.RichOptionalLong(o).toJavaGeneric
- }
-}
diff --git a/actor/src/main/scala-3/org/apache/pekko/util/OptionConverters.scala b/actor/src/main/scala-3/org/apache/pekko/util/OptionConverters.scala
deleted file mode 100644
index eb977d2518..0000000000
--- a/actor/src/main/scala-3/org/apache/pekko/util/OptionConverters.scala
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * license agreements; and to You under the Apache License, version 2.0:
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * This file is part of the Apache Pekko project, derived from Akka.
- */
-
-package org.apache.pekko.util
-
-import org.apache.pekko.annotation.InternalStableApi
-
-import java.util._
-import scala.jdk.OptionShape
-
-/**
- * INTERNAL API
- *
- * Remove this once Scala 2.12 support is dropped since all methods are in Scala 2.13+ stdlib.
- */
-@InternalStableApi
-private[pekko] object OptionConverters {
-
- // Ideally these methods should have the Scala 3 inline keyword but then Java sources are
- // unable to call these methods, see https://github.com/lampepfl/dotty/issues/19346
- final def toScala[A](o: Optional[A]): Option[A] = scala.jdk.javaapi.OptionConverters.toScala(o)
-
- def toScala(o: OptionalDouble): Option[java.lang.Double] = scala.jdk.javaapi.OptionConverters.toScala(o)
-
- def toScala(o: OptionalInt): Option[java.lang.Integer] = scala.jdk.javaapi.OptionConverters.toScala(o)
-
- def toScala(o: OptionalLong): Option[java.lang.Long] = scala.jdk.javaapi.OptionConverters.toScala(o)
-
- final def toJava[A](o: Option[A]): Optional[A] = scala.jdk.javaapi.OptionConverters.toJava(o)
-
- implicit final class RichOptional[A](private val o: java.util.Optional[A]) extends AnyVal {
- inline def toScala: Option[A] = scala.jdk.OptionConverters.RichOptional(o).toScala
-
- inline def toJavaPrimitive[O](implicit shape: OptionShape[A, O]): O =
- scala.jdk.OptionConverters.RichOptional(o).toJavaPrimitive
- }
-
- implicit final class RichOption[A](private val o: Option[A]) extends AnyVal {
- inline def toJava: Optional[A] = scala.jdk.OptionConverters.RichOption(o).toJava
-
- inline def toJavaPrimitive[O](implicit shape: OptionShape[A, O]): O =
- scala.jdk.OptionConverters.RichOption(o).toJavaPrimitive
- }
-
- implicit class RichOptionalDouble(private val o: OptionalDouble) extends AnyVal {
-
- /** Convert a Java `OptionalDouble` to a Scala `Option` */
- inline def toScala: Option[Double] = scala.jdk.OptionConverters.RichOptionalDouble(o).toScala
-
- /** Convert a Java `OptionalDouble` to a generic Java `Optional` */
- inline def toJavaGeneric: Optional[Double] = scala.jdk.OptionConverters.RichOptionalDouble(o).toJavaGeneric
- }
-
- /** Provides conversions from `OptionalInt` to Scala `Option` and the generic `Optional` */
- implicit class RichOptionalInt(private val o: OptionalInt) extends AnyVal {
-
- /** Convert a Java `OptionalInt` to a Scala `Option` */
- inline def toScala: Option[Int] = scala.jdk.OptionConverters.RichOptionalInt(o).toScala
-
- /** Convert a Java `OptionalInt` to a generic Java `Optional` */
- inline def toJavaGeneric: Optional[Int] = scala.jdk.OptionConverters.RichOptionalInt(o).toJavaGeneric
- }
-
- /** Provides conversions from `OptionalLong` to Scala `Option` and the generic `Optional` */
- implicit class RichOptionalLong(private val o: OptionalLong) extends AnyVal {
-
- /** Convert a Java `OptionalLong` to a Scala `Option` */
- inline def toScala: Option[Long] = scala.jdk.OptionConverters.RichOptionalLong(o).toScala
-
- /** Convert a Java `OptionalLong` to a generic Java `Optional` */
- inline def toJavaGeneric: Optional[Long] = scala.jdk.OptionConverters.RichOptionalLong(o).toJavaGeneric
- }
-}
diff --git a/actor/src/main/scala/org/apache/pekko/actor/AbstractActor.scala b/actor/src/main/scala/org/apache/pekko/actor/AbstractActor.scala
index 000e387acb..c586ff55a3 100644
--- a/actor/src/main/scala/org/apache/pekko/actor/AbstractActor.scala
+++ b/actor/src/main/scala/org/apache/pekko/actor/AbstractActor.scala
@@ -283,7 +283,7 @@ abstract class AbstractActor extends Actor {
@throws(classOf[Exception])
@nowarn("msg=deprecated")
override def preRestart(reason: Throwable, message: Option[Any]): Unit = {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
preRestart(reason, message.toJava)
}
@@ -295,7 +295,7 @@ abstract class AbstractActor extends Actor {
*/
@throws(classOf[Exception])
def preRestart(reason: Throwable, message: Optional[Any]): Unit = {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
super.preRestart(reason, message.toScala)
}
diff --git a/actor/src/main/scala/org/apache/pekko/actor/Actor.scala b/actor/src/main/scala/org/apache/pekko/actor/Actor.scala
index b23ea9a0fc..bf5ffcf713 100644
--- a/actor/src/main/scala/org/apache/pekko/actor/Actor.scala
+++ b/actor/src/main/scala/org/apache/pekko/actor/Actor.scala
@@ -100,7 +100,7 @@ final case class ActorIdentity(correlationId: Any, ref: Option[ActorRef]) {
* not defined if no actor matched the request.
*/
def getActorRef: Optional[ActorRef] = {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
ref.toJava
}
}
diff --git a/actor/src/main/scala/org/apache/pekko/actor/ActorSystem.scala b/actor/src/main/scala/org/apache/pekko/actor/ActorSystem.scala
index 7a3d68e9a5..71f6fe8611 100644
--- a/actor/src/main/scala/org/apache/pekko/actor/ActorSystem.scala
+++ b/actor/src/main/scala/org/apache/pekko/actor/ActorSystem.scala
@@ -41,7 +41,7 @@ import pekko.japi.Util.immutableSeq
import pekko.serialization.SerializationExtension
import pekko.util._
import pekko.util.FutureConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import pekko.util.Helpers.toRootLowerCase
import pekko.util.ccompat.JavaConverters._
diff --git a/actor/src/main/scala/org/apache/pekko/actor/Address.scala b/actor/src/main/scala/org/apache/pekko/actor/Address.scala
index 29db0cfb49..c38c44c3a1 100644
--- a/actor/src/main/scala/org/apache/pekko/actor/Address.scala
+++ b/actor/src/main/scala/org/apache/pekko/actor/Address.scala
@@ -12,6 +12,7 @@
*/
package org.apache.pekko.actor
+
import java.net.MalformedURLException
import java.net.URI
import java.net.URISyntaxException
@@ -22,7 +23,7 @@ import scala.collection.immutable
import org.apache.pekko
import pekko.annotation.InternalApi
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* The address specifies the physical location under which an Actor can be
diff --git a/actor/src/main/scala/org/apache/pekko/actor/CoordinatedShutdown.scala b/actor/src/main/scala/org/apache/pekko/actor/CoordinatedShutdown.scala
index d1db9000bf..706db96b19 100644
--- a/actor/src/main/scala/org/apache/pekko/actor/CoordinatedShutdown.scala
+++ b/actor/src/main/scala/org/apache/pekko/actor/CoordinatedShutdown.scala
@@ -34,7 +34,7 @@ import pekko.Done
import pekko.annotation.InternalApi
import pekko.event.Logging
import pekko.pattern.after
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import pekko.util.OptionVal
import pekko.util.FutureConverters._
diff --git a/actor/src/main/scala/org/apache/pekko/actor/setup/ActorSystemSetup.scala b/actor/src/main/scala/org/apache/pekko/actor/setup/ActorSystemSetup.scala
index db01928379..c3ac3ffbcb 100644
--- a/actor/src/main/scala/org/apache/pekko/actor/setup/ActorSystemSetup.scala
+++ b/actor/src/main/scala/org/apache/pekko/actor/setup/ActorSystemSetup.scala
@@ -20,7 +20,7 @@ import scala.reflect.ClassTag
import org.apache.pekko
import pekko.annotation.InternalApi
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* Marker supertype for a setup part that can be put inside [[pekko.actor.setup.ActorSystemSetup]], if a specific concrete setup
diff --git a/actor/src/main/scala/org/apache/pekko/pattern/Patterns.scala b/actor/src/main/scala/org/apache/pekko/pattern/Patterns.scala
index 95a88c7910..3c884c9a1f 100644
--- a/actor/src/main/scala/org/apache/pekko/pattern/Patterns.scala
+++ b/actor/src/main/scala/org/apache/pekko/pattern/Patterns.scala
@@ -816,7 +816,7 @@ object Patterns {
delayFunction: IntFunction[Optional[java.time.Duration]],
scheduler: Scheduler,
context: ExecutionContext): CompletionStage[T] = {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
require(attempt != null, "Parameter attempt should not be null.")
scalaRetry(
() => attempt.call().asScala,
@@ -857,7 +857,7 @@ object Patterns {
delayFunction: IntFunction[Optional[java.time.Duration]],
scheduler: Scheduler,
context: ExecutionContext): CompletionStage[T] = {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
require(attempt != null, "Parameter attempt should not be null.")
scalaRetry(
() => attempt.call().asScala,
diff --git a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/delivery/ShardingProducerController.scala b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/delivery/ShardingProducerController.scala
index d0e22becd2..7ea27bc2b6 100644
--- a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/delivery/ShardingProducerController.scala
+++ b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/delivery/ShardingProducerController.scala
@@ -33,7 +33,7 @@ import pekko.annotation.ApiMayChange
import pekko.cluster.sharding.typed.ShardingEnvelope
import pekko.cluster.sharding.typed.delivery.internal.ShardingProducerControllerImpl
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* Reliable delivery between a producer actor sending messages to sharded consumer
diff --git a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/internal/ClusterShardingImpl.scala b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/internal/ClusterShardingImpl.scala
index 6ae172ec00..043562c169 100644
--- a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/internal/ClusterShardingImpl.scala
+++ b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/internal/ClusterShardingImpl.scala
@@ -147,7 +147,7 @@ import pekko.util.JavaDurationConverters._
// javadsl impl
override def init[M, E](entity: javadsl.Entity[M, E]): ActorRef[E] = {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
init(
new scaladsl.Entity(
createBehavior = (ctx: EntityContext[M]) =>
diff --git a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/internal/ShardedDaemonProcessImpl.scala b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/internal/ShardedDaemonProcessImpl.scala
index 9107e1eede..28081cae29 100644
--- a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/internal/ShardedDaemonProcessImpl.scala
+++ b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/internal/ShardedDaemonProcessImpl.scala
@@ -40,7 +40,7 @@ import pekko.cluster.sharding.typed.scaladsl.StartEntity
import pekko.cluster.typed.Cluster
import pekko.cluster.typed.SelfUp
import pekko.cluster.typed.Subscribe
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import pekko.util.PrettyDuration
/**
diff --git a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/javadsl/ClusterSharding.scala b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/javadsl/ClusterSharding.scala
index 450a075e58..e0b0343864 100644
--- a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/javadsl/ClusterSharding.scala
+++ b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/javadsl/ClusterSharding.scala
@@ -32,7 +32,7 @@ import pekko.cluster.sharding.ShardCoordinator.ShardAllocationStrategy
import pekko.cluster.sharding.typed.internal.EntityTypeKeyImpl
import pekko.japi.function.{ Function => JFunction }
import pekko.pattern.StatusReply
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
@FunctionalInterface
trait EntityFactory[M] {
diff --git a/coordination/src/main/scala/org/apache/pekko/coordination/lease/internal/LeaseAdapter.scala b/coordination/src/main/scala/org/apache/pekko/coordination/lease/internal/LeaseAdapter.scala
index a7af9fc676..e3276fb3e8 100644
--- a/coordination/src/main/scala/org/apache/pekko/coordination/lease/internal/LeaseAdapter.scala
+++ b/coordination/src/main/scala/org/apache/pekko/coordination/lease/internal/LeaseAdapter.scala
@@ -26,7 +26,7 @@ import pekko.coordination.lease.LeaseSettings
import pekko.coordination.lease.javadsl.{ Lease => JavaLease }
import pekko.coordination.lease.scaladsl.{ Lease => ScalaLease }
import pekko.util.FutureConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* INTERNAL API
diff --git a/discovery/src/main/scala/org/apache/pekko/discovery/ServiceDiscovery.scala b/discovery/src/main/scala/org/apache/pekko/discovery/ServiceDiscovery.scala
index aa9b0961d0..8a3abfd8a8 100644
--- a/discovery/src/main/scala/org/apache/pekko/discovery/ServiceDiscovery.scala
+++ b/discovery/src/main/scala/org/apache/pekko/discovery/ServiceDiscovery.scala
@@ -25,7 +25,7 @@ import scala.concurrent.duration.FiniteDuration
import org.apache.pekko
import pekko.actor.{ DeadLetterSuppression, NoSerializationVerificationNeeded }
import pekko.util.HashCode
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
object ServiceDiscovery {
diff --git a/distributed-data/src/main/scala/org/apache/pekko/cluster/ddata/ReplicatedData.scala b/distributed-data/src/main/scala/org/apache/pekko/cluster/ddata/ReplicatedData.scala
index cbfb9f8e1c..bfe2f92900 100644
--- a/distributed-data/src/main/scala/org/apache/pekko/cluster/ddata/ReplicatedData.scala
+++ b/distributed-data/src/main/scala/org/apache/pekko/cluster/ddata/ReplicatedData.scala
@@ -17,7 +17,7 @@ import java.util.Optional
import org.apache.pekko
import pekko.cluster.UniqueAddress
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* Interface for implementing a state based convergent
diff --git a/persistence-query/src/main/scala/org/apache/pekko/persistence/query/EventEnvelope.scala b/persistence-query/src/main/scala/org/apache/pekko/persistence/query/EventEnvelope.scala
index 4218744884..2a91f29e71 100644
--- a/persistence-query/src/main/scala/org/apache/pekko/persistence/query/EventEnvelope.scala
+++ b/persistence-query/src/main/scala/org/apache/pekko/persistence/query/EventEnvelope.scala
@@ -64,7 +64,7 @@ final class EventEnvelope(
* Java API
*/
def getEventMetaData(): Optional[Any] = {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
eventMetadata.toJava
}
diff --git a/persistence-query/src/main/scala/org/apache/pekko/persistence/query/typed/EventEnvelope.scala b/persistence-query/src/main/scala/org/apache/pekko/persistence/query/typed/EventEnvelope.scala
index d7556ac30f..ab45eb2b21 100644
--- a/persistence-query/src/main/scala/org/apache/pekko/persistence/query/typed/EventEnvelope.scala
+++ b/persistence-query/src/main/scala/org/apache/pekko/persistence/query/typed/EventEnvelope.scala
@@ -93,7 +93,7 @@ final class EventEnvelope[Event](
* Java API
*/
def getOptionalEvent(): Optional[Event] = {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
eventOption.toJava
}
@@ -101,7 +101,7 @@ final class EventEnvelope[Event](
* Java API
*/
def getEventMetaData(): Optional[AnyRef] = {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
eventMetadata.map(_.asInstanceOf[AnyRef]).toJava
}
diff --git a/persistence-testkit/src/main/scala/org/apache/pekko/persistence/testkit/javadsl/EventSourcedBehaviorTestKit.scala b/persistence-testkit/src/main/scala/org/apache/pekko/persistence/testkit/javadsl/EventSourcedBehaviorTestKit.scala
index e42d3b68d7..40d6d48d18 100644
--- a/persistence-testkit/src/main/scala/org/apache/pekko/persistence/testkit/javadsl/EventSourcedBehaviorTestKit.scala
+++ b/persistence-testkit/src/main/scala/org/apache/pekko/persistence/testkit/javadsl/EventSourcedBehaviorTestKit.scala
@@ -226,7 +226,7 @@ final class EventSourcedBehaviorTestKit[Command, Event, State](
private val _persistenceTestKit = new PersistenceTestKit(delegate.persistenceTestKit)
private val _snapshotTestKit = {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
delegate.snapshotTestKit.map(new SnapshotTestKit(_)).toJava
}
diff --git a/persistence-testkit/src/main/scala/org/apache/pekko/persistence/testkit/state/javadsl/PersistenceTestKitDurableStateStore.scala b/persistence-testkit/src/main/scala/org/apache/pekko/persistence/testkit/state/javadsl/PersistenceTestKitDurableStateStore.scala
index ea95141fc6..c6c350bde1 100644
--- a/persistence-testkit/src/main/scala/org/apache/pekko/persistence/testkit/state/javadsl/PersistenceTestKitDurableStateStore.scala
+++ b/persistence-testkit/src/main/scala/org/apache/pekko/persistence/testkit/state/javadsl/PersistenceTestKitDurableStateStore.scala
@@ -27,7 +27,7 @@ import pekko.persistence.state.javadsl.GetObjectResult
import pekko.persistence.testkit.state.scaladsl.{ PersistenceTestKitDurableStateStore => SStore }
import pekko.stream.javadsl.Source
import pekko.util.FutureConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
object PersistenceTestKitDurableStateStore {
val Identifier = pekko.persistence.testkit.state.scaladsl.PersistenceTestKitDurableStateStore.Identifier
diff --git a/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/internal/EventSourcedBehaviorImpl.scala b/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/internal/EventSourcedBehaviorImpl.scala
index 938fe5187b..9433e16357 100644
--- a/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/internal/EventSourcedBehaviorImpl.scala
+++ b/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/internal/EventSourcedBehaviorImpl.scala
@@ -387,7 +387,7 @@ private[pekko] final case class PublishedEventImpl(
replicatedMetaData: Option[ReplicatedPublishedEventMetaData])
extends PublishedEvent
with InternalProtocol {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
def tags: Set[String] = payload match {
case t: Tagged => t.tags
diff --git a/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/javadsl/EventSourcedBehavior.scala b/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/javadsl/EventSourcedBehavior.scala
index d342589d98..0dcb374a55 100644
--- a/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/javadsl/EventSourcedBehavior.scala
+++ b/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/javadsl/EventSourcedBehavior.scala
@@ -27,7 +27,7 @@ import pekko.annotation.InternalApi
import pekko.persistence.typed._
import pekko.persistence.typed.EventAdapter
import pekko.persistence.typed.internal._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import pekko.util.unused
abstract class EventSourcedBehavior[Command, Event, State] private[pekko] (
diff --git a/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/javadsl/PersistentFSMMigration.scala b/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/javadsl/PersistentFSMMigration.scala
index ddc23cef96..01d45ef790 100644
--- a/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/javadsl/PersistentFSMMigration.scala
+++ b/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/javadsl/PersistentFSMMigration.scala
@@ -20,7 +20,7 @@ import org.apache.pekko
import pekko.japi.function.Function3
import pekko.persistence.typed.SnapshotAdapter
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* Helper functions for migration from PersistentFSM to Persistence Typed
diff --git a/persistence/src/main/scala/org/apache/pekko/persistence/snapshot/japi/SnapshotStore.scala b/persistence/src/main/scala/org/apache/pekko/persistence/snapshot/japi/SnapshotStore.scala
index 7ff382d8c3..c243006ebf 100644
--- a/persistence/src/main/scala/org/apache/pekko/persistence/snapshot/japi/SnapshotStore.scala
+++ b/persistence/src/main/scala/org/apache/pekko/persistence/snapshot/japi/SnapshotStore.scala
@@ -30,7 +30,7 @@ abstract class SnapshotStore extends SSnapshotStore with SnapshotStorePlugin {
override final def loadAsync(
persistenceId: String,
criteria: SnapshotSelectionCriteria): Future[Option[SelectedSnapshot]] = {
- import pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
doLoadAsync(persistenceId, criteria).asScala.map(_.toScala)(ExecutionContext.parasitic)
}
diff --git a/persistence/src/main/scala/org/apache/pekko/persistence/state/javadsl/DurableStateStore.scala b/persistence/src/main/scala/org/apache/pekko/persistence/state/javadsl/DurableStateStore.scala
index 08853f8335..662dcfc128 100644
--- a/persistence/src/main/scala/org/apache/pekko/persistence/state/javadsl/DurableStateStore.scala
+++ b/persistence/src/main/scala/org/apache/pekko/persistence/state/javadsl/DurableStateStore.scala
@@ -18,7 +18,7 @@ import java.util.concurrent.CompletionStage
import org.apache.pekko
import pekko.persistence.state.scaladsl.{ GetObjectResult => SGetObjectResult }
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* API for reading durable state objects with payload `A`.
diff --git a/persistence/src/main/scala/org/apache/pekko/persistence/state/scaladsl/DurableStateStore.scala b/persistence/src/main/scala/org/apache/pekko/persistence/state/scaladsl/DurableStateStore.scala
index 66de616542..7a2710bcca 100644
--- a/persistence/src/main/scala/org/apache/pekko/persistence/state/scaladsl/DurableStateStore.scala
+++ b/persistence/src/main/scala/org/apache/pekko/persistence/state/scaladsl/DurableStateStore.scala
@@ -17,7 +17,7 @@ import scala.concurrent.Future
import org.apache.pekko
import pekko.persistence.state.javadsl.{ GetObjectResult => JGetObjectResult }
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* API for reading durable state objects with payload `A`.
diff --git a/serialization-jackson/src/main/scala/org/apache/pekko/serialization/jackson/JacksonObjectMapperProvider.scala b/serialization-jackson/src/main/scala/org/apache/pekko/serialization/jackson/JacksonObjectMapperProvider.scala
index a371dce881..62e3635451 100644
--- a/serialization-jackson/src/main/scala/org/apache/pekko/serialization/jackson/JacksonObjectMapperProvider.scala
+++ b/serialization-jackson/src/main/scala/org/apache/pekko/serialization/jackson/JacksonObjectMapperProvider.scala
@@ -18,6 +18,7 @@ import java.util.concurrent.ConcurrentHashMap
import scala.annotation.nowarn
import scala.collection.immutable
import scala.util.{ Failure, Success }
+
import com.fasterxml.jackson.annotation.{ JsonAutoDetect, JsonCreator, PropertyAccessor }
import com.fasterxml.jackson.core.{
JsonFactory,
@@ -56,7 +57,7 @@ import pekko.actor.setup.Setup
import pekko.annotation.InternalStableApi
import pekko.event.{ Logging, LoggingAdapter }
import pekko.util.unused
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
object JacksonObjectMapperProvider extends ExtensionId[JacksonObjectMapperProvider] with ExtensionIdProvider {
override def get(system: ActorSystem): JacksonObjectMapperProvider = super.get(system)
diff --git a/stream/src/main/scala/org/apache/pekko/stream/Attributes.scala b/stream/src/main/scala/org/apache/pekko/stream/Attributes.scala
index 5b4751bcf6..06fa311fe0 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/Attributes.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/Attributes.scala
@@ -32,7 +32,7 @@ import pekko.stream.impl.TraversalBuilder
import pekko.util.{ ByteString, OptionVal }
import pekko.util.JavaDurationConverters._
import pekko.util.LineNumbers
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* Holds attributes which can be used to alter [[pekko.stream.scaladsl.Flow]] / [[pekko.stream.javadsl.Flow]]
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Flow.scala b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Flow.scala
index 43b5461459..af413eb0b5 100755
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Flow.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Flow.scala
@@ -37,7 +37,7 @@ import pekko.stream.impl.fusing.{ StatefulMapConcat, ZipWithIndexJava }
import pekko.util.ConstantFun
import pekko.util.FutureConverters._
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import pekko.util.Timeout
import pekko.util.unused
import org.reactivestreams.Processor
@@ -4342,7 +4342,7 @@ final class Flow[In, Out, Mat](delegate: scaladsl.Flow[In, Out, Mat]) extends Gr
harvest: function.Function[Agg, Emit],
emitOnTimer: Optional[Pair[function.Predicate[Agg], java.time.Duration]])
: javadsl.Flow[In, Emit, Mat] = {
- import org.apache.pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
asScala
.aggregateWithBoundary(() => allocate.create())(
aggregate = (agg, out) => aggregate.apply(agg, out).toScala,
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/FlowWithContext.scala b/stream/src/main/scala/org/apache/pekko/stream/javadsl/FlowWithContext.scala
index 998e303391..2e9f996b43 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/FlowWithContext.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/FlowWithContext.scala
@@ -26,7 +26,7 @@ import pekko.stream._
import pekko.util.ConstantFun
import pekko.util.FutureConverters._
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import pekko.util.ccompat.JavaConverters._
object FlowWithContext {
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Queue.scala b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Queue.scala
index d8c433cf7b..da36a1701c 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Queue.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Queue.scala
@@ -23,7 +23,7 @@ import pekko.Done
import scala.concurrent.ExecutionContext
import pekko.stream.QueueOfferResult
import pekko.util.FutureConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* This trait allows to have a queue as a data source for some stream.
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/RetryFlow.scala b/stream/src/main/scala/org/apache/pekko/stream/javadsl/RetryFlow.scala
index e49d023ffd..78f4731ef5 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/RetryFlow.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/RetryFlow.scala
@@ -20,7 +20,7 @@ import pekko.annotation.ApiMayChange
import pekko.japi.Pair
import pekko.stream.scaladsl
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
object RetryFlow {
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Sink.scala b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Sink.scala
index bc5e1306ac..fb6e5dbe3b 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Sink.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Sink.scala
@@ -32,7 +32,7 @@ import pekko.stream.impl.LinearTraversalBuilder
import pekko.stream.scaladsl.SinkToCompletionStage
import pekko.util.ConstantFun.scalaAnyToUnit
import pekko.util.FutureConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import org.reactivestreams.{ Publisher, Subscriber }
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Source.scala b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Source.scala
index db56847b21..9d778dd5cb 100755
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Source.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Source.scala
@@ -36,7 +36,7 @@ import pekko.stream.impl.fusing.{ ArraySource, StatefulMapConcat, ZipWithIndexJa
import pekko.util.{ unused, _ }
import pekko.util.FutureConverters._
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import pekko.util.ccompat.JavaConverters._
import org.reactivestreams.{ Publisher, Subscriber }
@@ -4782,7 +4782,7 @@ final class Source[Out, Mat](delegate: scaladsl.Source[Out, Mat]) extends Graph[
aggregate: function.Function2[Agg, Out, Pair[Agg, Boolean]],
harvest: function.Function[Agg, Emit],
emitOnTimer: Optional[Pair[function.Predicate[Agg], java.time.Duration]]): javadsl.Source[Emit, Mat] = {
- import org.apache.pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
asScala
.aggregateWithBoundary(() => allocate.create())(
aggregate = (agg, out) => aggregate.apply(agg, out).toScala,
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/SourceWithContext.scala b/stream/src/main/scala/org/apache/pekko/stream/javadsl/SourceWithContext.scala
index 53d1449883..0b860d5050 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/SourceWithContext.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/SourceWithContext.scala
@@ -28,7 +28,7 @@ import pekko.stream._
import pekko.util.ConstantFun
import pekko.util.FutureConverters._
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import pekko.util.ccompat.JavaConverters._
object SourceWithContext {
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/SubFlow.scala b/stream/src/main/scala/org/apache/pekko/stream/javadsl/SubFlow.scala
index f55a58caa3..8b7b94e494 100755
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/SubFlow.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/SubFlow.scala
@@ -30,7 +30,7 @@ import pekko.stream.impl.fusing.{ StatefulMapConcat, ZipWithIndexJava }
import pekko.util.ConstantFun
import pekko.util.FutureConverters._
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import pekko.util.ccompat.JavaConverters._
object SubFlow {
@@ -2824,7 +2824,7 @@ final class SubFlow[In, Out, Mat](
harvest: function.Function[Agg, Emit],
emitOnTimer: Optional[Pair[function.Predicate[Agg], java.time.Duration]])
: javadsl.SubFlow[In, Emit, Mat] = {
- import org.apache.pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
new SubFlow(
asScala.aggregateWithBoundary(() => allocate.create())(
aggregate = (agg, out) => aggregate.apply(agg, out).toScala,
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/SubSource.scala b/stream/src/main/scala/org/apache/pekko/stream/javadsl/SubSource.scala
index d09c74fdf1..567cb0d9ae 100755
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/SubSource.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/SubSource.scala
@@ -30,7 +30,7 @@ import pekko.stream.impl.fusing.{ StatefulMapConcat, ZipWithIndexJava }
import pekko.util.ConstantFun
import pekko.util.FutureConverters._
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
import pekko.util.ccompat.JavaConverters._
/**
@@ -2798,7 +2798,7 @@ final class SubSource[Out, Mat](
harvest: function.Function[Agg, Emit],
emitOnTimer: Optional[Pair[function.Predicate[Agg], java.time.Duration]])
: javadsl.SubSource[Emit, Mat] = {
- import org.apache.pekko.util.OptionConverters._
+ import scala.jdk.OptionConverters._
new SubSource(
asScala.aggregateWithBoundary(() => allocate.create())(
aggregate = (agg, out) => aggregate.apply(agg, out).toScala,
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Tcp.scala b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Tcp.scala
index 53b618bcae..3848adc3d3 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Tcp.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Tcp.scala
@@ -41,7 +41,7 @@ import pekko.stream.scaladsl
import pekko.util.ByteString
import pekko.util.FutureConverters._
import pekko.util.JavaDurationConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
object Tcp extends ExtensionId[Tcp] with ExtensionIdProvider {
diff --git a/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Queue.scala b/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Queue.scala
index ebdeda7db4..e1746ce438 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Queue.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Queue.scala
@@ -24,7 +24,7 @@ import pekko.annotation.InternalApi
import scala.concurrent.ExecutionContext
import pekko.stream.QueueOfferResult
import pekko.util.FutureConverters._
-import pekko.util.OptionConverters._
+import scala.jdk.OptionConverters._
/**
* This trait allows to have a queue as a data source for some stream.
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pekko.apache.org
For additional commands, e-mail: commits-help@pekko.apache.org