public function load($key, array $options, DefinitionRegistry $registry)
 {
     $definition = new Definition($options['entity'], $this->doctrine->getManagerForClass($options['entity']));
     $definition->setTemplates($this->getTemplateDefinition($options['templates']));
     $definition->setObjectRetriever($options['object_retriever']);
     $definition->setController($options['controller']);
     $definition->setFlags(['create' => $options['create'], 'update' => $options['update'], 'delete' => $options['delete']]);
     $definition->setIndex($this->getIndexDefinition($key, $options));
     $definition->setForm($this->getFormDefinition($options['form'], $options['form_options_provider']));
     $definition->setName($key);
     if (null === $options['title']) {
         $definition->setEntityTitle(ucfirst(str_replace(['-', '_', '.'], ' ', $key)));
     } else {
         $definition->setEntityTitle($options['title']);
     }
     $definition->setExtras($options['extras']);
     $registry->addDefinition($definition, $key);
 }