All Downloads are FREE. Search and download functionalities are using the official Maven repository.

eu.drus.jpa.unit.neo4j.ext.ConfigurationRegistry Maven / Gradle / Ivy

The newest version!
package eu.drus.jpa.unit.neo4j.ext;

import java.util.ServiceLoader;

import eu.drus.jpa.unit.api.JpaUnitException;
import eu.drus.jpa.unit.spi.PersistenceUnitDescriptor;

public class ConfigurationRegistry {

    private static final ServiceLoader CONFIG_FACTORIES = ServiceLoader.load(ConfigurationFactory.class);

    public boolean hasConfiguration(final PersistenceUnitDescriptor descriptor) {
        for (final ConfigurationFactory factory : CONFIG_FACTORIES) {
            if (factory.isSupported(descriptor)) {
                return true;
            }
        }
        return false;
    }

    public Configuration getConfiguration(final PersistenceUnitDescriptor descriptor) {
        for (final ConfigurationFactory factory : CONFIG_FACTORIES) {
            if (factory.isSupported(descriptor)) {
                return factory.createConfiguration(descriptor);
            }
        }
        throw new JpaUnitException("Unsupported JPA provider");
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy