From 04f5fcd1b794940dd5f2ca2bdd80ef43c904ef24 Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Fri, 19 Sep 2025 16:34:29 +0100 Subject: [PATCH] chore: Use Scala Option Converter (#2203) * chore: Use Scala Option Converter --------- Co-authored-by: He-Pin --- CONTRIBUTING.md | 2 +- .../testkit/typed/CapturedLogEvent.scala | 2 +- .../actor/testkit/typed/LoggingEvent.scala | 2 +- .../util/JavaConverterScala3InlineTest.java | 8 +- .../pekko/util/Scala212CompatTest.scala | 76 ----------------- .../typed/delivery/ProducerController.scala | 2 +- .../WorkPullingProducerController.scala | 2 +- .../javaapi-option.excludes | 12 +++ .../apache/pekko/util/OptionConverters.scala | 85 ------------------- .../apache/pekko/util/OptionConverters.scala | 79 ----------------- .../apache/pekko/actor/AbstractActor.scala | 4 +- .../scala/org/apache/pekko/actor/Actor.scala | 2 +- .../org/apache/pekko/actor/ActorSystem.scala | 2 +- .../org/apache/pekko/actor/Address.scala | 3 +- .../pekko/actor/CoordinatedShutdown.scala | 2 +- .../pekko/actor/setup/ActorSystemSetup.scala | 2 +- .../org/apache/pekko/pattern/Patterns.scala | 4 +- .../delivery/ShardingProducerController.scala | 2 +- .../typed/internal/ClusterShardingImpl.scala | 2 +- .../internal/ShardedDaemonProcessImpl.scala | 2 +- .../typed/javadsl/ClusterSharding.scala | 2 +- .../lease/internal/LeaseAdapter.scala | 2 +- .../pekko/discovery/ServiceDiscovery.scala | 2 +- .../pekko/cluster/ddata/ReplicatedData.scala | 2 +- .../persistence/query/EventEnvelope.scala | 2 +- .../query/typed/EventEnvelope.scala | 4 +- .../javadsl/EventSourcedBehaviorTestKit.scala | 2 +- .../PersistenceTestKitDurableStateStore.scala | 2 +- .../internal/EventSourcedBehaviorImpl.scala | 2 +- .../typed/javadsl/EventSourcedBehavior.scala | 2 +- .../javadsl/PersistentFSMMigration.scala | 2 +- .../snapshot/japi/SnapshotStore.scala | 2 +- .../state/javadsl/DurableStateStore.scala | 2 +- .../state/scaladsl/DurableStateStore.scala | 2 +- .../jackson/JacksonObjectMapperProvider.scala | 3 +- .../org/apache/pekko/stream/Attributes.scala | 2 +- .../apache/pekko/stream/javadsl/Flow.scala | 4 +- .../stream/javadsl/FlowWithContext.scala | 2 +- .../apache/pekko/stream/javadsl/Queue.scala | 2 +- .../pekko/stream/javadsl/RetryFlow.scala | 2 +- .../apache/pekko/stream/javadsl/Sink.scala | 2 +- .../apache/pekko/stream/javadsl/Source.scala | 4 +- .../stream/javadsl/SourceWithContext.scala | 2 +- .../apache/pekko/stream/javadsl/SubFlow.scala | 4 +- .../pekko/stream/javadsl/SubSource.scala | 4 +- .../org/apache/pekko/stream/javadsl/Tcp.scala | 2 +- .../apache/pekko/stream/scaladsl/Queue.scala | 2 +- 47 files changed, 67 insertions(+), 293 deletions(-) delete mode 100644 actor-tests/src/test/scala/org/apache/pekko/util/Scala212CompatTest.scala delete mode 100644 actor/src/main/scala-2.13/org/apache/pekko/util/OptionConverters.scala delete mode 100644 actor/src/main/scala-3/org/apache/pekko/util/OptionConverters.scala 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.