Method getDatabaseMigrationsPath() that is currently in interface BlogEntryProvider should probably be moved to a separate contract (interface HasDatabaseMigrationsPath perhaps?) to be used optionally in entry provider implementations.
The service provider using them to register migrations would then instead pull out each entry provider from every blog in the registry, and filter out those that don't implement the new interface. Then collecting the migration paths.
Method
getDatabaseMigrationsPath()
that is currently in interfaceBlogEntryProvider
should probably be moved to a separate contract (interface HasDatabaseMigrationsPath
perhaps?) to be used optionally in entry provider implementations.The service provider using them to register migrations would then instead pull out each entry provider from every blog in the registry, and filter out those that don't implement the new interface. Then collecting the migration paths.