protected function registerFieldTypes(Jarves $jarves, ContainerInterface $container)
{
foreach ($jarves->getConfigs() as $bundleConfig) {
if ($bundleConfig->getFieldTypes()) {
foreach ($bundleConfig->getFieldTypes() as $fieldType) {
if ($fieldType->isUserInterfaceOnly()) {
continue;
}
if (!$fieldType->getService()) {
throw new \RuntimeException(sprintf('For field type %s:%s is no service defined. If it does not handle model related persisting, ' . 'you should add interface-only="true"', $bundleConfig->getName(), $fieldType->getId()));
}
if (!$container->has($fieldType->getService())) {
throw new \RuntimeException(sprintf('Service `%s` for field type %s:%s does not exist', $fieldType->getService(), $bundleConfig->getName(), $fieldType->getId()));
}
$jarves->getFieldTypes()->addType($fieldType->getId(), $fieldType->getService());
}
}
}
}