public <T> T getService(Class<T> serviceClass) {
if(serviceClass == DomainObjectContainer.class) {
return (T) getContainer();
}
final ServicesInjectorSpi servicesInjector = getPersistenceSession().getServicesInjector();
final T service = servicesInjector.lookupService(serviceClass);
if(service == null) {
throw new RuntimeException("Could not find a service of type: " + serviceClass.getName());
}
return service;
}