registerServiceProvider(new ComponentDispatcherFactory('\\XYZ\\Component\\Depot')); $container->registerServiceProvider(new MVCFactory('\\XYZ\\Component\\Depot')); $container->set( ComponentInterface::class, function (Container $container) { $component = new DepotComponent($container->get(ComponentDispatcherFactoryInterface::class)); $component->setMVCFactory($container->get(MVCFactoryInterface::class)); return $component; } ); } };