@Override
  @SuppressWarnings("unchecked")
  public EntityManagerFactory createContainerEntityManagerFactory(
      PersistenceUnitInfo info, Map properties) {
    final Map settings = generateSettings(properties);

    // OSGi ClassLoaders must implement BundleReference
    settings.put(
        org.hibernate.jpa.AvailableSettings.SCANNER,
        new OsgiScanner(((BundleReference) info.getClassLoader()).getBundle()));

    osgiClassLoader.addClassLoader(info.getClassLoader());

    return Bootstrap.getEntityManagerFactoryBuilder(info, settings, osgiClassLoader).build();
  }