* @git Joomla Component Builder * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace VDM\Joomla\Componentbuilder\Compiler\Service; use Joomla\DI\Container; use Joomla\DI\ServiceProviderInterface; use VDM\Joomla\Componentbuilder\Server\Model\Load as ServerLoad; use VDM\Joomla\Componentbuilder\Compiler\Model\Joomlaplugins; use VDM\Joomla\Componentbuilder\Compiler\Model\Joomlamodules; use VDM\Joomla\Componentbuilder\Compiler\Model\Historycomponent; use VDM\Joomla\Componentbuilder\Compiler\Model\Customadminviews; use VDM\Joomla\Componentbuilder\Compiler\Model\Ajaxcustomview; use VDM\Joomla\Componentbuilder\Compiler\Model\Javascriptcustomview; use VDM\Joomla\Componentbuilder\Compiler\Model\Csscustomview; use VDM\Joomla\Componentbuilder\Compiler\Model\Phpcustomview; use VDM\Joomla\Componentbuilder\Compiler\Model\Dynamicget; use VDM\Joomla\Componentbuilder\Compiler\Model\Libraries; use VDM\Joomla\Componentbuilder\Compiler\Model\Siteviews; use VDM\Joomla\Componentbuilder\Compiler\Model\Permissions; use VDM\Joomla\Componentbuilder\Compiler\Model\Historyadminview; use VDM\Joomla\Componentbuilder\Compiler\Model\Mysqlsettings; use VDM\Joomla\Componentbuilder\Compiler\Model\Sql; use VDM\Joomla\Componentbuilder\Compiler\Model\Customalias; use VDM\Joomla\Componentbuilder\Compiler\Model\Ajaxadmin; use VDM\Joomla\Componentbuilder\Compiler\Model\Customimportscripts; use VDM\Joomla\Componentbuilder\Compiler\Model\Custombuttons; use VDM\Joomla\Componentbuilder\Compiler\Model\Loader; use VDM\Joomla\Componentbuilder\Compiler\Model\Phpadminview; use VDM\Joomla\Componentbuilder\Compiler\Model\Cssadminview; use VDM\Joomla\Componentbuilder\Compiler\Model\Javascriptadminview; use VDM\Joomla\Componentbuilder\Compiler\Model\Linkedviews; use VDM\Joomla\Componentbuilder\Compiler\Model\Relations; use VDM\Joomla\Componentbuilder\Compiler\Model\Conditions; use VDM\Joomla\Componentbuilder\Compiler\Model\Fields; use VDM\Joomla\Componentbuilder\Compiler\Model\Updatesql; use VDM\Joomla\Componentbuilder\Compiler\Model\Tabs; use VDM\Joomla\Componentbuilder\Compiler\Model\Customtabs; use VDM\Joomla\Componentbuilder\Compiler\Model\Adminviews; use VDM\Joomla\Componentbuilder\Compiler\Model\Sqltweaking; use VDM\Joomla\Componentbuilder\Compiler\Model\Sqldump; use VDM\Joomla\Componentbuilder\Compiler\Model\Whmcs; use VDM\Joomla\Componentbuilder\Compiler\Model\Filesfolders; use VDM\Joomla\Componentbuilder\Compiler\Model\Modifieddate; use VDM\Joomla\Componentbuilder\Compiler\Model\Createdate; use VDM\Joomla\Componentbuilder\Compiler\Model\Updateserver; /** * Model Service Provider * * @since 3.2.0 */ class Model implements ServiceProviderInterface { /** * Registers the service provider with a DI container. * * @param Container $container The DI container. * * @return void * @since 3.2.0 */ public function register(Container $container) { $container->alias(Joomlaplugins::class, 'Model.Joomlaplugins') ->share('Model.Joomlaplugins', [$this, 'getModelJoomlaplugins'], true); $container->alias(Joomlamodules::class, 'Model.Joomlamodules') ->share('Model.Joomlamodules', [$this, 'getModelJoomlamodules'], true); $container->alias(Historycomponent::class, 'Model.Historycomponent') ->share('Model.Historycomponent', [$this, 'getModelHistorycomponent'], true); $container->alias(Customadminviews::class, 'Model.Customadminviews') ->share('Model.Customadminviews', [$this, 'getModelCustomadminviews'], true); $container->alias(Ajaxcustomview::class, 'Model.Ajaxcustomview') ->share('Model.Ajaxcustomview', [$this, 'getModelAjaxcustomview'], true); $container->alias(Javascriptcustomview::class, 'Model.Javascriptcustomview') ->share('Model.Javascriptcustomview', [$this, 'getModelJavascriptcustomview'], true); $container->alias(Csscustomview::class, 'Model.Csscustomview') ->share('Model.Csscustomview', [$this, 'getModelCsscustomview'], true); $container->alias(Phpcustomview::class, 'Model.Phpcustomview') ->share('Model.Phpcustomview', [$this, 'getModelPhpcustomview'], true); $container->alias(Dynamicget::class, 'Model.Dynamicget') ->share('Model.Dynamicget', [$this, 'getModelDynamicget'], true); $container->alias(Libraries::class, 'Model.Libraries') ->share('Model.Libraries', [$this, 'getModelLibraries'], true); $container->alias(Siteviews::class, 'Model.Siteviews') ->share('Model.Siteviews', [$this, 'getModelSiteviews'], true); $container->alias(Permissions::class, 'Model.Permissions') ->share('Model.Permissions', [$this, 'getModelPermissions'], true); $container->alias(Historyadminview::class, 'Model.Historyadminview') ->share('Model.Historyadminview', [$this, 'getModelHistoryadminview'], true); $container->alias(Mysqlsettings::class, 'Model.Mysqlsettings') ->share('Model.Mysqlsettings', [$this, 'getModelMysqlsettings'], true); $container->alias(Sql::class, 'Model.Sql') ->share('Model.Sql', [$this, 'getModelSql'], true); $container->alias(Customalias::class, 'Model.Customalias') ->share('Model.Customalias', [$this, 'getModelCustomalias'], true); $container->alias(Ajaxadmin::class, 'Model.Ajaxadmin') ->share('Model.Ajaxadmin', [$this, 'getModelAjaxadmin'], true); $container->alias(Customimportscripts::class, 'Model.Customimportscripts') ->share('Model.Customimportscripts', [$this, 'getModelCustomimportscripts'], true); $container->alias(Custombuttons::class, 'Model.Custombuttons') ->share('Model.Custombuttons', [$this, 'getModelCustombuttons'], true); $container->alias(Loader::class, 'Model.Loader') ->share('Model.Loader', [$this, 'getModelLoader'], true); $container->alias(Phpadminview::class, 'Model.Phpadminview') ->share('Model.Phpadminview', [$this, 'getModelPhpadminview'], true); $container->alias(Cssadminview::class, 'Model.Cssadminview') ->share('Model.Cssadminview', [$this, 'getModelCssadminview'], true); $container->alias(Javascriptadminview::class, 'Model.Javascriptadminview') ->share('Model.Javascriptadminview', [$this, 'getModelJavascriptadminview'], true); $container->alias(Linkedviews::class, 'Model.Linkedviews') ->share('Model.Linkedviews', [$this, 'getModelLinkedviews'], true); $container->alias(Relations::class, 'Model.Relations') ->share('Model.Relations', [$this, 'getModelRelations'], true); $container->alias(Conditions::class, 'Model.Conditions') ->share('Model.Conditions', [$this, 'getModelConditions'], true); $container->alias(Fields::class, 'Model.Fields') ->share('Model.Fields', [$this, 'getModelFields'], true); $container->alias(Updatesql::class, 'Model.Updatesql') ->share('Model.Updatesql', [$this, 'getModelUpdatesql'], true); $container->alias(Tabs::class, 'Model.Tabs') ->share('Model.Tabs', [$this, 'getModelTabs'], true); $container->alias(Customtabs::class, 'Model.Customtabs') ->share('Model.Customtabs', [$this, 'getModelCustomtabs'], true); $container->alias(Adminviews::class, 'Model.Adminviews') ->share('Model.Adminviews', [$this, 'getModelAdminviews'], true); $container->alias(Sqltweaking::class, 'Model.Sqltweaking') ->share('Model.Sqltweaking', [$this, 'getModelSqltweaking'], true); $container->alias(Sqldump::class, 'Model.Sqldump') ->share('Model.Sqldump', [$this, 'getModelSqldump'], true); $container->alias(Whmcs::class, 'Model.Whmcs') ->share('Model.Whmcs', [$this, 'getModelWhmcs'], true); $container->alias(Modifieddate::class, 'Model.Modifieddate') ->share('Model.Modifieddate', [$this, 'getModifieddate'], true); $container->alias(Createdate::class, 'Model.Createdate') ->share('Model.Createdate', [$this, 'getCreatedate'], true); $container->alias(Updateserver::class, 'Model.Updateserver') ->share('Model.Updateserver', [$this, 'getUpdateserver'], true); $container->alias(Filesfolders::class, 'Model.Filesfolders') ->share('Model.Filesfolders', [$this, 'getModelFilesfolders'], true); $container->alias(ServerLoad::class, 'Model.Server.Load') ->share('Model.Server.Load', [$this, 'getServerLoad'], true); } /** * Get the Joomla plugins Model * * @param Container $container The DI container. * * @return Joomlaplugins * @since 3.2.0 */ public function getModelJoomlaplugins(Container $container): Joomlaplugins { return new Joomlaplugins( $container->get('Joomlaplugin.Data') ); } /** * Get the Joomla modules Model * * @param Container $container The DI container. * * @return Joomlamodules * @since 3.2.0 */ public function getModelJoomlamodules(Container $container): Joomlamodules { return new Joomlamodules( $container->get('Joomlamodule.Data') ); } /** * Get the history component Model * * @param Container $container The DI container. * * @return Historycomponent * @since 3.2.0 */ public function getModelHistorycomponent(Container $container): Historycomponent { return new Historycomponent( $container->get('Config'), $container->get('History'), $container->get('Model.Updatesql') ); } /** * Get the custom admin views Model * * @param Container $container The DI container. * * @return Customadminviews * @since 3.2.0 */ public function getModelCustomadminviews(Container $container): Customadminviews { return new Customadminviews( $container->get('Customview.Data'), $container->get('Config') ); } /** * Get the ajax custom view Model * * @param Container $container The DI container. * * @return Ajaxcustomview * @since 3.2.0 */ public function getModelAjaxcustomview(Container $container): Ajaxcustomview { return new Ajaxcustomview( $container->get('Config'), $container->get('Customcode.Dispenser') ); } /** * Get the javascript custom view Model * * @param Container $container The DI container. * * @return Javascriptcustomview * @since 3.2.0 */ public function getModelJavascriptcustomview(Container $container): Javascriptcustomview { return new Javascriptcustomview( $container->get('Customcode'), $container->get('Customcode.Gui') ); } /** * Get the css custom view Model * * @param Container $container The DI container. * * @return Csscustomview * @since 3.2.0 */ public function getModelCsscustomview(Container $container): Csscustomview { return new Csscustomview( $container->get('Customcode') ); } /** * Get the php custom view Model * * @param Container $container The DI container. * * @return Phpcustomview * @since 3.2.0 */ public function getModelPhpcustomview(Container $container): Phpcustomview { return new Phpcustomview( $container->get('Customcode'), $container->get('Customcode.Gui'), $container->get('Model.Loader'), $container->get('Templatelayout.Data') ); } /** * Get the dynamic get Model * * @param Container $container The DI container. * * @return Dynamicget * @since 3.2.0 */ public function getModelDynamicget(Container $container): Dynamicget { return new Dynamicget( $container->get('Config'), $container->get('Registry'), $container->get('Customcode'), $container->get('Customcode.Gui'), $container->get('Placeholder'), $container->get('Dynamicget.Selection') ); } /** * Get the libraries Model * * @param Container $container The DI container. * * @return Libraries * @since 3.2.0 */ public function getModelLibraries(Container $container): Libraries { return new Libraries( $container->get('Config'), $container->get('Registry'), $container->get('Library.Data') ); } /** * Get the site views Model * * @param Container $container The DI container. * * @return Siteviews * @since 3.2.0 */ public function getModelSiteviews(Container $container): Siteviews { return new Siteviews( $container->get('Customview.Data'), $container->get('Config') ); } /** * Get the permissions Model * * @param Container $container The DI container. * * @return Permissions * @since 3.2.0 */ public function getModelPermissions(Container $container): Permissions { return new Permissions(); } /** * Get the admin view history Model * * @param Container $container The DI container. * * @return Historyadminview * @since 3.2.0 */ public function getModelHistoryadminview(Container $container): Historyadminview { return new Historyadminview( $container->get('Config'), $container->get('History'), $container->get('Model.Updatesql') ); } /** * Get the MySQL settings Model * * @param Container $container The DI container. * * @return Mysqlsettings * @since 3.2.0 */ public function getModelMysqlsettings(Container $container): Mysqlsettings { return new Mysqlsettings( $container->get('Config'), $container->get('Registry') ); } /** * Get the Sql Model * * @param Container $container The DI container. * * @return Sql * @since 3.2.0 */ public function getModelSql(Container $container): Sql { return new Sql( $container->get('Customcode.Dispenser'), $container->get('Model.Sqldump') ); } /** * Get the custom alias Model * * @param Container $container The DI container. * * @return Customalias * @since 3.2.0 */ public function getModelCustomalias(Container $container): Customalias { return new Customalias( $container->get('Registry'), $container->get('Field.Name') ); } /** * Get the Admin Ajax Model * * @param Container $container The DI container. * * @return Ajaxadmin * @since 3.2.0 */ public function getModelAjaxadmin(Container $container): Ajaxadmin { return new Ajaxadmin( $container->get('Config'), $container->get('Registry'), $container->get('Customcode.Dispenser') ); } /** * Get the custom import scripts Model * * @param Container $container The DI container. * * @return Customimportscripts * @since 3.2.0 */ public function getModelCustomimportscripts(Container $container): Customimportscripts { return new Customimportscripts( $container->get('Customcode.Dispenser') ); } /** * Get the custom import scripts Model * * @param Container $container The DI container. * * @return Custombuttons * @since 3.2.0 */ public function getModelCustombuttons(Container $container): Custombuttons { return new Custombuttons( $container->get('Customcode'), $container->get('Customcode.Gui'), $container->get('Templatelayout.Data') ); } /** * Get the Model Auto Loader * * @param Container $container The DI container. * * @return Loader * @since 3.2.0 */ public function getModelLoader(Container $container): Loader { return new Loader( $container->get('Config'), $container->get('Registry') ); } /** * Get the php admin view Model * * @param Container $container The DI container. * * @return Phpadminview * @since 3.2.0 */ public function getModelPhpadminview(Container $container): Phpadminview { return new Phpadminview( $container->get('Customcode.Dispenser'), $container->get('Templatelayout.Data') ); } /** * Get the Css Adminview Model * * @param Container $container The DI container. * * @return Cssadminview * @since 3.2.0 */ public function getModelCssadminview(Container $container): Cssadminview { return new Cssadminview( $container->get('Customcode.Dispenser') ); } /** * Get the Javascript Adminview Model * * @param Container $container The DI container. * * @return Javascriptadminview * @since 3.2.0 */ public function getModelJavascriptadminview(Container $container): Javascriptadminview { return new Javascriptadminview( $container->get('Customcode.Dispenser') ); } /** * Get the linked views Model * * @param Container $container The DI container. * * @return Linkedviews * @since 3.2.0 */ public function getModelLinkedviews(Container $container): Linkedviews { return new Linkedviews( $container->get('Registry') ); } /** * Get the relations Model * * @param Container $container The DI container. * * @return Relations * @since 3.2.0 */ public function getModelRelations(Container $container): Relations { return new Relations( $container->get('Config'), $container->get('Registry'), $container->get('Language'), $container->get('Customcode') ); } /** * Get the conditions Model * * @param Container $container The DI container. * * @return Conditions * @since 3.2.0 */ public function getModelConditions(Container $container): Conditions { return new Conditions( $container->get('Field.Type.Name'), $container->get('Field.Name') ); } /** * Get the fields Model * * @param Container $container The DI container. * * @return Fields * @since 3.2.0 */ public function getModelFields(Container $container): Fields { return new Fields( $container->get('Config'), $container->get('Registry'), $container->get('History'), $container->get('Customcode'), $container->get('Field'), $container->get('Field.Name'), $container->get('Model.Updatesql') ); } /** * Get the update sql Model * * @param Container $container The DI container. * * @return Updatesql * @since 3.2.0 */ public function getModelUpdatesql(Container $container): Updatesql { return new Updatesql( $container->get('Registry') ); } /** * Get the tabs Model * * @param Container $container The DI container. * * @return Updatesql * @since 3.2.0 */ public function getModelTabs(Container $container): Tabs { return new Tabs(); } /** * Get the custom tabs Model * * @param Container $container The DI container. * * @return Customtabs * @since 3.2.0 */ public function getModelCustomtabs(Container $container): Customtabs { return new Customtabs( $container->get('Config'), $container->get('Registry'), $container->get('Language'), $container->get('Placeholder'), $container->get('Customcode') ); } /** * Get the admin views Model * * @param Container $container The DI container. * * @return Adminviews * @since 3.2.0 */ public function getModelAdminviews(Container $container): Adminviews { return new Adminviews( $container->get('Adminview.Data'), $container->get('Registry'), $container->get('Config') ); } /** * Get the SQL tweaking Model * * @param Container $container The DI container. * * @return Sqltweaking * @since 3.2.0 */ public function getModelSqltweaking(Container $container): Sqltweaking { return new Sqltweaking( $container->get('Registry') ); } /** * Get the SQL dump Model * * @param Container $container The DI container. * * @return Sqldump * @since 3.2.0 */ public function getModelSqldump(Container $container): Sqldump { return new Sqldump( $container->get('Registry') ); } /** * Get the whmcs Model * * @param Container $container The DI container. * * @return Whmcs * @since 3.2.0 */ public function getModelWhmcs(Container $container): Whmcs { return new Whmcs(); } /** * Get the modified date Model * * @param Container $container The DI container. * * @return Modifieddate * @since 3.2.0 */ public function getModifieddate(Container $container): Modifieddate { return new Modifieddate(); } /** * Get the create date Model * * @param Container $container The DI container. * * @return Createdate * @since 3.2.0 */ public function getCreatedate(Container $container): Createdate { return new Createdate(); } /** * Get the update server Model * * @param Container $container The DI container. * * @return Updateserver * @since 3.2.0 */ public function getUpdateserver(Container $container): Updateserver { return new Updateserver( $container->get('Registry') ); } /** * Get the files folders Model * * @param Container $container The DI container. * * @return Filesfolders * @since 3.2.0 */ public function getModelFilesfolders(Container $container): Filesfolders { return new Filesfolders(); } /** * Get the Server Model Server Loader class * * @param Container $container The DI container. * * @return ServerLoad * @since 3.2.0 */ public function getServerLoad(Container $container): ServerLoad { return new ServerLoad( $container->get('Crypt'), $container->get('Table') ); } }