optionally pass plugin conf path to persistence plugins, #19822
This commit is contained in:
parent
5b5cf4fc7b
commit
57e59c8496
9 changed files with 126 additions and 36 deletions
|
|
@ -82,11 +82,18 @@ class PersistenceQuery(system: ExtendedActorSystem) extends Extension {
|
|||
def instantiate(args: collection.immutable.Seq[(Class[_], AnyRef)]) =
|
||||
system.dynamicAccess.createInstanceFor[ReadJournalProvider](pluginClass, args)
|
||||
|
||||
instantiate((classOf[ExtendedActorSystem], system) :: (classOf[Config], pluginConfig) :: Nil)
|
||||
instantiate((classOf[ExtendedActorSystem], system) :: (classOf[Config], pluginConfig) ::
|
||||
(classOf[String], configPath) :: Nil)
|
||||
.recoverWith {
|
||||
case x: NoSuchMethodException ⇒ instantiate(
|
||||
(classOf[ExtendedActorSystem], system) :: (classOf[Config], pluginConfig) :: Nil)
|
||||
}
|
||||
.recoverWith { case x: NoSuchMethodException ⇒ instantiate((classOf[ExtendedActorSystem], system) :: Nil) }
|
||||
.recoverWith { case x: NoSuchMethodException ⇒ instantiate(Nil) }
|
||||
.recoverWith {
|
||||
case ex: Exception ⇒ Failure.apply(new IllegalArgumentException(s"Unable to create read journal plugin instance for path [$configPath], class [$pluginClassName]!", ex))
|
||||
case ex: Exception ⇒ Failure.apply(
|
||||
new IllegalArgumentException("Unable to create read journal plugin instance for path " +
|
||||
s"[$configPath], class [$pluginClassName]!", ex))
|
||||
}.get
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue