in javax-persistence/2_0/src/main/java/org/apache/aries/jpa/javax/persistence/EMFBuilderServiceResolver.java [56:72]
public EntityManagerFactory createEntityManagerFactory(String emName, @SuppressWarnings("rawtypes") Map map) {
for (Entry<ServiceReference<Object>, Object> e : tracker.getTracked().entrySet()) {
String serviceUnitName = String.valueOf(e.getKey().getProperty("osgi.unit.name"));
if(serviceUnitName.equals(emName)) {
try {
Object emfBuilder = e.getValue();
Method m = emfBuilder.getClass().getMethod("createEntityManagerFactory", Map.class);
return (EntityManagerFactory) m.invoke(emfBuilder, map);
} catch (Exception ex) {
throw new PersistenceException("Failed to create an EntityManagerFactory for unit " +
emName, ex);
}
}
}
return null;
}