ApplicationDefinition::class, Environment::class => Environment::class, Security::class => Security::class, EntityManagerInterface::class => EntityManagerInterface::class, UrlGeneratorInterface::class => UrlGeneratorInterface::class, SessionInterface::class => SessionInterface::class, PaginatorInterface::class => PaginatorInterface::class, RequestStack::class => RequestStack::class, EventDispatcherInterface::class => EventDispatcherInterface::class, LoggerInterface::class => LoggerInterface::class, ParameterBagInterface::class => ParameterBagInterface::class, TranslatorInterface::class => TranslatorInterface::class, PdfGenerator::class => PdfGenerator::class, TranslatorAdmin::class => TranslatorAdmin::class, FilterManager::class => FilterManager::class, FlashBagTranslator::class => FlashBagTranslator::class, MailjetTransport::class => MailjetTransport::class, AdminUrlGenerator::class => AdminUrlGenerator::class, SettingSolver::class => SettingSolver::class, ComponentContainer::class => ComponentContainer::class, EntityRepository::class => EntityRepository::class, FileComponent::class => FileComponent::class, ] ); } public function addFlashTranslator( string $type, $translationKeyName, $translationEntityName = null, $translationParam = array() ): void { if ($translationEntityName === null && method_exists($this, 'getTranslationEntityName')) { $translationEntityName = $this->getTranslationEntityName(); } $this->get(FlashBagTranslator::class)->add( $type, $translationKeyName, $translationEntityName, $translationParam ); } public function isInstanceOf(string $interfaceName): bool { return in_array($interfaceName, class_implements($this->getEntityFqcn())); } public function generateEaUrl( string $controller = null, string $action = null, int $entityId = null, array $extraParam = array() ): string { $adminUrlGenerator = $this->get(AdminUrlGenerator::class); if ($controller) { $adminUrlGenerator->setController($controller); } if ($action) { $adminUrlGenerator->setAction($action); } if ($entityId) { $adminUrlGenerator->setEntityId($entityId); } if ($extraParam) { foreach ($extraParam as $key => $value) { $adminUrlGenerator->set($key, $value); } } return $adminUrlGenerator->generateUrl(); } public function getReferer(Request $request): ?string { return $request->headers->get('referer'); } public function getTemplating(): Environment { return $this->get(Environment::class); } public function getApplicationDefinition(): ApplicationDefinition { return $this->get(ApplicationDefinition::class); } public function getEntityManager(): EntityManagerInterface { return $this->get(EntityManagerInterface::class); } public function getRouter(): UrlGeneratorInterface { return $this->get(UrlGeneratorInterface::class); } public function getSession(): SessionInterface { return $this->get(SessionInterface::class); } public function getSecurity(): Security { return $this->get(Security::class); } public function getPaginator(): PaginatorInterface { return $this->get(PaginatorInterface::class); } public function getRequestStack(): RequestStack { return $this->get(RequestStack::class); } public function getEventDispatcher(): EventDispatcherInterface { return $this->get(EventDispatcherInterface::class); } public function getParameterBag(): ParameterBagInterface { return $this->get(ParameterBagInterface::class); } public function getTranslator(): TranslatorInterface { return $this->get(TranslatorInterface::class); } public function getPdfGenerator(): PdfGenerator { return $this->get(PdfGenerator::class); } public function getTranslatorAdmin(): TranslatorAdmin { return $this->get(TranslatorAdmin::class); } public function getLogger(): LoggerInterface { return $this->get(LoggerInterface::class); } public function getMailjetTransport(): MailjetTransport { return $this->get(MailjetTransport::class); } public function getAdminUrlGenerator(): AdminUrlGenerator { return $this->get(AdminUrlGenerator::class); } public function getSettingSolver(): SettingSolver { return $this->get(SettingSolver::class); } public function getSettingValue($entity, $settingName) { return $this->getSettingSolver()->getSettingValue($entity, $settingName); } public function getComponentContainer(): ComponentContainer { return $this->get(ComponentContainer::class); } public function getFileContainer(): FileContainer { return $this->get(FileContainer::class); } public function getNewsletterContainer(): NewsletterContainer { return $this->get(NewsletterContainer::class); } public function getReminderContainer(): ReminderContainer { return $this->get(ReminderContainer::class); } public function getNewsContainer(): NewsContainer { return $this->get(NewsContainer::class); } public function getPageContainer(): PageContainer { return $this->get(PageContainer::class); } public function getSiteContainer(): SiteContainer { return $this->get(SiteContainer::class); } public function getTicketContainer(): TicketContainer { return $this->get(TicketContainer::class); } public function getTicketMessageContainer(): TicketMessageContainer { return $this->get(TicketMessageContainer::class); } public function getGroupUserContainer(): GroupUserContainer { return $this->get(GroupUserContainer::class); } public function getUserContainer(): UserContainer { return $this->get(UserContainer::class); } public function getSiteSettingContainer(): SiteSettingContainer { return $this->get(SiteSettingContainer::class); } public function setNoMemoryAndTimeLimit(): void { ini_set('memory_limit', '-1'); set_time_limit(0); } }