Add wrapper service broker to allow for easy MEF consumption #75717
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We want to allow partners that run in our process to have easy access to the
IServiceBroker
so they can access services from devkit. Previously we provided access via an IVTOnServiceBrokerInitialized
method. However there are a number of other assemblies that would also like access to the service broker instance, and we'd have to add IVTs for each one.Unfortunately it is not straightforward to just mef export our IServiceBroker instance as it is only created after the mef composition is created.
To make this easier we create our own wrapper of
IServiceBroker
that we export via mef. The wrapper implementation waits for the brokered service to be available before delegating to the real instance.@etvorun tested with xaml to confirm it can be consumed.