Currently, the BootStrap Provider (BSP) for a Source is specified within the config of the Source that uses it.
This relationship dates from before Source and BSP could be mixed, and allowed for the containing Source to pass config settings to the BSP easily.
But there are some issues. One is logged here:
#105
Also, BSPs are not registered before use and so an unregistered BSP can be passed to a Source, which will work, but the BSP is not added correctly to the Component Graph etc.
BSPs should be elevated to top level components and referenced by Sources in the same way Identity Providers are.
Some questions immediately spring to mind that need to be resolved:
- when multiple Sources share the same BSP, are they sharing the same instance or do they get their own instance (i.e. is a BSP a singleton or not)
- where it makes sense, can a Source still pass its config onto the Source instead of duplicating the config
Currently, the BootStrap Provider (BSP) for a Source is specified within the config of the Source that uses it.
This relationship dates from before Source and BSP could be mixed, and allowed for the containing Source to pass config settings to the BSP easily.
But there are some issues. One is logged here:
#105
Also, BSPs are not registered before use and so an unregistered BSP can be passed to a Source, which will work, but the BSP is not added correctly to the Component Graph etc.
BSPs should be elevated to top level components and referenced by Sources in the same way Identity Providers are.
Some questions immediately spring to mind that need to be resolved: