I was hoping to refactor the ProductMap as an extension point so that it could be retrieved from a ProductFactory, but after implementing
FACES-1270 (TCK Detection) and dealing with some TCK compatibility issues, it became evident that the ProductMap would need to be accessed statically during Mojarra startup with the ExternalContextFactory implementation is initialized. So for now, the ProductMap will be refactored to follow the Singleton pattern with getInstance() and setInstance() static methods. Additionally, the BridgeConfig.getProducts() method will be removed. The new way to get Product information will be to call BridgeConfig.getAttributes().get("product-name").