/** * Create an instance of the product. * * @param environment environment * @param serviceConfiguration configuration specific to the factory product * @param objects objects that service might depend on * @return product instance */ default E create(Environment environment, Configuration serviceConfiguration, ActiveOrigins objects) { return create(environment, serviceConfiguration); } }
/** * Create an instance of the product. * * @param environment environment * @param serviceConfiguration configuration specific to the factory product * @param objects objects that service might depend on * @return product instance */ default E create(Environment environment, Configuration serviceConfiguration, ActiveOrigins objects) { return create(environment, serviceConfiguration); } }
private static <T> T loadSpiExtension(SpiExtension factoryConfig, Environment environment, Class<T> serviceSuperclass) { ServiceFactory factory = newServiceFactory(factoryConfig); JsonNodeConfig config = new JsonNodeConfig(factoryConfig.config()); return serviceSuperclass.cast(factory.create(environment, config)); }
private static <T> T loadServiceFactory(ServiceFactoryConfig serviceFactoryConfig, Environment environment, Class<T> serviceSuperclass) { ServiceFactory factory = newInstance(serviceFactoryConfig.factory(), ServiceFactory.class); JsonNodeConfig config = serviceFactoryConfig.config(); return serviceSuperclass.cast(factory.create(environment, config)); } }