Back to MVCFactory class

Method register

public void
register
(\Joomla\DI\Container $container)
Registers the service provider with a DI container.
Parameters
  • \Joomla\DI\Container $container The DI container.
Returns
  • void
Since
  • 4.0.0
Class: MVCFactory
Project: Joomla

Method register - Source code

/**
 * Registers the service provider with a DI container.
 *
 * @param   Container  $container  The DI container.
 *
 * @return  void
 *
 * @since   4.0.0
 */
public function register(Container $container)
{
    $container->set(MVCFactoryInterface::class, function (Container $container) {
        if (\Joomla\CMS\Factory::getApplication()->isClient('api')) {
            $factory = new ApiMVCFactory($this->namespace);
        } else {
            $factory = new \Joomla\CMS\MVC\Factory\MVCFactory($this->namespace);
        }
        $factory->setFormFactory($container->get(FormFactoryInterface::class));
        $factory->setDispatcher($container->get(DispatcherInterface::class));
        return $factory;
    });
}