src/EntityManager/EntityManagerFactory.php
final public function getEntityManager(ConfigInterface $config): EntityManagerInterface
    {
        try {
            $dbParams       = $this->getDbConnectionInfo($config);
            $doctrineConfig = $this->getDoctrineConfig($config);
            $this->addDsmParamsToConfig($doctrineConfig, $config);
            $entityManager = $this->createEntityManager($dbParams, $doctrineConfig);
            $this->addEntityFactories($entityManager);
            $this->setDebuggingInfo($config, $entityManager);

            return $entityManager;
        } catch (\Exception $e) {
            $message = 'Exception in ' . __METHOD__ . ': ' . $e->getMessage();

            throw new DoctrineStaticMetaException($message, $e->getCode(), $e);
        }
    }
final public function getEntityManager(ConfigInterface $config): EntityManagerInterface
    {
        try {
            $dbParams       = $this->getDbConnectionInfo($config);
            $doctrineConfig = $this->getDoctrineConfig($config);
            $this->addDsmParamsToConfig($doctrineConfig, $config);
            $entityManager = $this->createEntityManager($dbParams, $doctrineConfig);
            $this->addEntityFactories($entityManager);
            $this->setDebuggingInfo($config, $entityManager);

            return $entityManager;
        } catch (\Exception $e) {
            $message = 'Exception in ' . __METHOD__ . ': ' . $e->getMessage();

            throw new DoctrineStaticMetaException($message, $e->getCode(), $e);
        }
    }
final public function getEntityManager ( ConfigInterface $ config ) : EntityManagerInterface { try { $ dbParams = $ this -> getDbConnectionInfo ( $ config ) ; $ doctrineConfig = $ this -> getDoctrineConfig ( $ config ) ; $ this -> addDsmParamsToConfig ( $ doctrineConfig , $ config ) ; $ entityManager = $ this -> createEntityManager ( $ dbParams , $ doctrineConfig ) ; $ this -> addEntityFactories ( $ entityManager ) ; $ this -> setDebuggingInfo ( $ config , $ entityManager ) ; return $ entityManager ; } catch ( \ Exception $ e ) { $ message = 'Exception in ' . __METHOD__ . ': ' . $ e -> getMessage ( ) ; throw new DoctrineStaticMetaException ( $ message , $ e -> getCode ( ) , $ e ) ; } }
This is used to create a new instance of the entity manager. Each of the steps involved need to take place,
however you may wish to make modifications to individual ones. There for the method is final, but the child
steps are public and can be overwritten if you extend the class

@param ConfigInterface $config

@return EntityManagerInterface
@throws DoctrineStaticMetaException
This is used to create a new instance of the entity manager . Each of the steps involved need to take place however you may wish to make modifications to individual ones . There for the method is final but the child steps are public and can be overwritten if you extend the class