fileManager = $fileManager; } /** * @return PluginApi */ public function getPluginsApi(){ if(is_null($this->pluginsApi)){ $this->pluginsApi = new PluginApi($this->getFileManager()); } return $this->pluginsApi; } /** * @return WizardApi */ public function getWizardApi(){ if(is_null($this->wizardApi)){ $this->wizardApi = new WizardApi($this->getPluginsApi()); } return $this->wizardApi; } /** * @return PluginsHandler */ public function getPluginsHandler(){ if(is_null($this->pluginsHandler)){ $this->pluginsHandler = new PluginsHandler($this->getPluginsApi(), $this->getFileManager()); } return $this->pluginsHandler; } /** * @return WizardHandler */ public function getWizardHandler(){ if(is_null($this->wizardHandler)){ $this->wizardHandler = new WizardHandler($this->getWizardApi(), $this->getFileManager()); } return $this->wizardHandler; } /** * @return ToolbarHandler */ public function getToolbarHandler(){ if(is_null($this->toolbarHandler)){ $this->toolbarHandler = new ToolbarHandler($this->getPluginsApi(), $this->getWizardApi()); } return $this->toolbarHandler; } public function getPremiumHandler(){ if(is_null($this->premiumHandler)){ $this->premiumHandler = new PremiumHandler($this->getPluginsApi(), $this->fileManager); } return $this->premiumHandler; } /** * @return AdminNotifier */ public function getNotifier(){ if(is_null($this->notifier)){ $this->notifier = new AdminNotifier(); } return $this->notifier; } /** * @return FileManager */ public function getFileManager(){ return $this->fileManager; } }