diff --git a/play-pac4j_2.13/pom.xml b/play-pac4j_2.13/pom.xml index bea93854..1fb84661 100644 --- a/play-pac4j_2.13/pom.xml +++ b/play-pac4j_2.13/pom.xml @@ -5,7 +5,7 @@ org.pac4j play-pac4j-parent - 12.0.0-PLAY2.9-SNAPSHOT + 12.0.0-PLAY3.0-SNAPSHOT play-pac4j_2.13 @@ -15,13 +15,13 @@ - com.typesafe.play + org.playframework play_${scala.version} ${play.version} provided - com.typesafe.play + org.playframework play-cache_${scala.version} ${play.version} provided @@ -34,7 +34,7 @@ - com.typesafe.play + org.playframework play-test_${scala.version} ${play.version} test diff --git a/play-pac4j_2.13/src/main/java/org/pac4j/play/ScalaCompatibility.java b/play-pac4j_2.13/src/main/java/org/pac4j/play/ScalaCompatibility.java deleted file mode 100644 index bdbe17a6..00000000 --- a/play-pac4j_2.13/src/main/java/org/pac4j/play/ScalaCompatibility.java +++ /dev/null @@ -1,27 +0,0 @@ -package org.pac4j.play; - -import play.api.mvc.AnyContentAsFormUrlEncoded; -import scala.collection.immutable.Seq; -import scala.jdk.CollectionConverters; - -import java.util.HashMap; -import java.util.Map; - -/** - * @author Jerome LELEU - * @since 9.0.0 - */ -class ScalaCompatibility { - - static Map parseBody(final AnyContentAsFormUrlEncoded body) { - final Map p = new HashMap<>(); - final scala.collection.immutable.Map> scalaParameters = body.asFormUrlEncoded().get(); - for (final String key : CollectionConverters.SetHasAsJava(scalaParameters.keySet()).asJava()) { - final Seq v = scalaParameters.get(key).get(); - final String[] values = new String[v.size()]; - v.copyToArray(values); - p.put(key, values); - } - return p; - } -} diff --git a/play-pac4j_2.13/src/main/scala/org/pac4j/play/scala/ScalaCompat.scala b/play-pac4j_2.13/src/main/scala/org/pac4j/play/scala/ScalaCompat.scala deleted file mode 100644 index 45f08333..00000000 --- a/play-pac4j_2.13/src/main/scala/org/pac4j/play/scala/ScalaCompat.scala +++ /dev/null @@ -1,10 +0,0 @@ -package org.pac4j.play.scala - -/** - * @since 12.0.0 - */ -object ScalaCompat { - - val Converters = _root_.scala.jdk.CollectionConverters - -} diff --git a/play-pac4j_3/pom.xml b/play-pac4j_3/pom.xml index 0abaacd6..4f26b336 100644 --- a/play-pac4j_3/pom.xml +++ b/play-pac4j_3/pom.xml @@ -5,7 +5,7 @@ org.pac4j play-pac4j-parent - 12.0.0-PLAY2.9-SNAPSHOT + 12.0.0-PLAY3.0-SNAPSHOT play-pac4j_3 @@ -15,13 +15,13 @@ - com.typesafe.play + org.playframework play_${scala.version} ${play.version} provided - com.typesafe.play + org.playframework play-cache_${scala.version} ${play.version} provided @@ -34,7 +34,7 @@ - com.typesafe.play + org.playframework play-test_${scala.version} ${play.version} test diff --git a/play-pac4j_3/src/main/scala/org/pac4j/play/scala/ScalaCompat.scala b/play-pac4j_3/src/main/scala/org/pac4j/play/scala/ScalaCompat.scala deleted file mode 100644 index 45f08333..00000000 --- a/play-pac4j_3/src/main/scala/org/pac4j/play/scala/ScalaCompat.scala +++ /dev/null @@ -1,10 +0,0 @@ -package org.pac4j.play.scala - -/** - * @since 12.0.0 - */ -object ScalaCompat { - - val Converters = _root_.scala.jdk.CollectionConverters - -} diff --git a/pom.xml b/pom.xml index cb46646c..ba122dd9 100644 --- a/pom.xml +++ b/pom.xml @@ -12,7 +12,7 @@ play-pac4j-parent pom pac4j parent for Play - 12.0.0-PLAY2.9-SNAPSHOT + 12.0.0-PLAY3.0-SNAPSHOT https://github.com/pac4j/play-pac4j @@ -38,16 +38,6 @@ - - typesafe - typesafe-releases - https://repo.typesafe.com/typesafe/releases - - - Akka Snapshot Repository - Akka Snapshot Repository - https://repo.akka.io/snapshots/ - sonatype-nexus-snapshots Sonatype Nexus Snapshots @@ -63,9 +53,9 @@ 6.0.0-RC10-SNAPSHOT - 2.9.0 + 3.0.0 17 - 7.0.0 + 6.0.0 1.12.0 2.10.9.2 3.2.17 diff --git a/play-pac4j_3/src/main/java/org/pac4j/play/ScalaCompatibility.java b/shared/src/main/java/org/pac4j/play/ScalaCompatibility.java similarity index 100% rename from play-pac4j_3/src/main/java/org/pac4j/play/ScalaCompatibility.java rename to shared/src/main/java/org/pac4j/play/ScalaCompatibility.java diff --git a/shared/src/main/scala/org/pac4j/play/filters/SecurityFilter.scala b/shared/src/main/scala/org/pac4j/play/filters/SecurityFilter.scala index 06ba62d0..45386bec 100644 --- a/shared/src/main/scala/org/pac4j/play/filters/SecurityFilter.scala +++ b/shared/src/main/scala/org/pac4j/play/filters/SecurityFilter.scala @@ -1,6 +1,6 @@ package org.pac4j.play.filters -import akka.stream.Materializer +import org.apache.pekko.stream.Materializer import org.pac4j.core.adapter.FrameworkAdapter import org.pac4j.core.config.Config import org.pac4j.core.util.CommonHelper @@ -14,7 +14,7 @@ import play.api.{Configuration, Logger} import play.mvc import javax.inject.{Inject, Singleton} -import scala.compat.java8.FutureConverters.CompletionStageOps +import scala.jdk.FutureConverters._ import scala.concurrent.{ExecutionContext, Future} import scala.util.Failure @@ -107,7 +107,7 @@ class SecurityFilter @Inject()(configuration: Configuration, config: Config) val futureResult: Future[Result] = securityAction .call(parameters, rule.clients, rule.authorizers, rule.matchers) - .toScala + .asScala .flatMap[Result](calculateResult) futureResult.andThen { case Failure(ex) => log.error("Exception during authentication procedure", ex) } diff --git a/shared/src/main/scala/org/pac4j/play/scala/Pac4jScalaTemplateHelper.scala b/shared/src/main/scala/org/pac4j/play/scala/Pac4jScalaTemplateHelper.scala index 6ae936cc..42309959 100644 --- a/shared/src/main/scala/org/pac4j/play/scala/Pac4jScalaTemplateHelper.scala +++ b/shared/src/main/scala/org/pac4j/play/scala/Pac4jScalaTemplateHelper.scala @@ -9,7 +9,7 @@ import org.pac4j.core.profile.{ProfileManager, UserProfile} import org.pac4j.play.context.PlayFrameworkParameters import play.api.mvc.RequestHeader -import ScalaCompat.Converters._ +import scala.jdk.CollectionConverters._ /** * This is a helper which can be used to access the current user profile from a twirl template. diff --git a/shared/src/main/scala/org/pac4j/play/scala/Security.scala b/shared/src/main/scala/org/pac4j/play/scala/Security.scala index eb5a7ba0..f7017013 100644 --- a/shared/src/main/scala/org/pac4j/play/scala/Security.scala +++ b/shared/src/main/scala/org/pac4j/play/scala/Security.scala @@ -38,8 +38,8 @@ trait Security[P<:UserProfile] extends BaseController { case class SecureAction[P <: UserProfile, ContentType, R[X]>:AuthenticatedRequest[P, X]<:Request[X]]( clients: String, authorizers: String, matchers: String, parser: BodyParser[ContentType], config: Config )(implicit implicitExecutionContext: ExecutionContext) extends ActionBuilder[R, ContentType] { - import ScalaCompat.Converters._ - import scala.compat.java8.FutureConverters._ + import scala.jdk.CollectionConverters._ + import scala.jdk.FutureConverters._ import scala.concurrent.Future import org.pac4j.play.scala.SecureAction._ @@ -70,7 +70,7 @@ case class SecureAction[P <: UserProfile, ContentType, R[X]>:AuthenticatedReques def invokeBlock[A](request: Request[A], block: R[A] => Future[Result]): Future[Result] = { val secureAction = new org.pac4j.play.java.SecureAction(config) val parameters = new PlayFrameworkParameters(request) - secureAction.call(parameters, clients, authorizers, matchers).toScala.flatMap[play.api.mvc.Result] { + secureAction.call(parameters, clients, authorizers, matchers).asScala.flatMap[play.api.mvc.Result] { case holder: PlayWebContextResultHolder => val webContext = holder.getPlayWebContext val sessionStore = config.getSessionStoreFactory.newSessionStore(parameters) diff --git a/shared/src/test/java/org/pac4j/play/filters/MockInMemoryAsyncCacheApi.scala b/shared/src/test/java/org/pac4j/play/filters/MockInMemoryAsyncCacheApi.scala index dc8af3e3..f2340e77 100644 --- a/shared/src/test/java/org/pac4j/play/filters/MockInMemoryAsyncCacheApi.scala +++ b/shared/src/test/java/org/pac4j/play/filters/MockInMemoryAsyncCacheApi.scala @@ -1,6 +1,6 @@ package org.pac4j.play.filters -import akka.Done +import org.apache.pekko.Done import play.api import scala.collection.mutable diff --git a/shared/src/test/java/org/pac4j/play/filters/SecurityFilterTests.scala b/shared/src/test/java/org/pac4j/play/filters/SecurityFilterTests.scala index a6b738aa..dfdb2ddc 100644 --- a/shared/src/test/java/org/pac4j/play/filters/SecurityFilterTests.scala +++ b/shared/src/test/java/org/pac4j/play/filters/SecurityFilterTests.scala @@ -1,7 +1,7 @@ package org.pac4j.play.filters -import akka.actor.ActorSystem -import akka.stream.{ActorMaterializer, Materializer} +import org.apache.pekko.actor.ActorSystem +import org.apache.pekko.stream.{ActorMaterializer, Materializer} import com.typesafe.config.ConfigFactory import org.junit.Test import org.junit.runner.RunWith