Description
Currently, when we load components in Parser.java, for the child nodes of root, we parse blueprint elements and custom elements based on the order specified in the blueprint definition XML. It is possible when we are parsing the custom element that contains a global configuration for the other blueprint components before the other blueprint components are parsed (and registered in component definition registry).
Proposed is a change to ensure we always finish parsing blueprint components first and ensure they are registered in the component definition registry before we start to pass custom elements. This way, if we support bundle wide transaction, we can easily apply it to all the blueprint components that has been registered in the component definition registry.