/**
  * Class responsible for instantiating a DiStrictAbstractServiceFactory
  *
  * @param ContainerInterface $container
  * @param string $name
  * @param null|array $options
  * @return DiStrictAbstractServiceFactory
  */
 public function __invoke(ContainerInterface $container, $name, array $options = null)
 {
     $diAbstractFactory = new DiStrictAbstractServiceFactory($container->get('Di'), DiStrictAbstractServiceFactory::USE_SL_BEFORE_DI);
     $config = $container->get('config');
     if (isset($config['di']['allowed_controllers'])) {
         $diAbstractFactory->setAllowedServiceNames($config['di']['allowed_controllers']);
     }
     return $diAbstractFactory;
 }
 /**
  * Class responsible for instantiating a DiServiceInitializer
  *
  * @param ContainerInterface $container
  * @param string $name
  * @param null|array $options
  * @return DiServiceInitializer
  */
 public function __invoke(ContainerInterface $container, $name, array $options = null)
 {
     return new DiServiceInitializer($container->get('Di'), $container);
 }