in core/src/main/scala/org/apache/pekko/persistence/r2dbc/ConnectionFactoryProvider.scala [102:115]
private def createConnectionFactoryOptionsCustomizer(
settings: ConnectionFactorySettings): ConnectionFactoryOptionsCustomizer = {
settings.connectionFactoryOptionsCustomizer match {
case None => NoopCustomizer
case Some(fqcn) =>
val args = List(classOf[ActorSystem[_]] -> system)
system.dynamicAccess.createInstanceFor[ConnectionFactoryOptionsCustomizer](fqcn, args) match {
case Success(customizer) => customizer
case Failure(cause) =>
throw new IllegalArgumentException(s"Failed to create ConnectionFactoryOptionsCustomizer for class $fqcn",
cause)
}
}
}