/** * @return BeanFactory */ public static function singleton($bCreateNew = true, $createArgvs = null, $sClass = null) { $aSingleton = parent::singleton(false, null, __CLASS__); if (!$aSingleton) { $aSingleton = new self(); // mvc $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\controller\\Controller", "controller"); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\controller\\WebpageFrame", "frame"); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\view\\View", 'view'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\view\\FormView", 'form'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\model\\db\\Model", 'model'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\model\\db\\orm\\Prototype", 'prototype'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\model\\db\\orm\\Association", 'association'); // jecat widgets $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\view\\widget\\Text", 'text'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\view\\widget\\Select", 'select'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\view\\widget\\SelectList", 'list'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\view\\widget\\CheckBtn", 'checkbox'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\view\\widget\\File", 'file'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\view\\widget\\Group", 'group'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\view\\widget\\RadioGroup", 'radios'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\view\\widget\\paginator\\Paginator", 'paginator'); $aSingleton->registerBeanClass("org\\jecat\\framework\\mvc\\view\\widget\\menu\\Menu", 'menu'); // verifyers $aSingleton->registerBeanClass("org\\jecat\\framework\\verifier\\Email", 'email'); $aSingleton->registerBeanClass("org\\jecat\\framework\\verifier\\Length", 'length'); $aSingleton->registerBeanClass("org\\jecat\\framework\\verifier\\Number", 'number'); $aSingleton->registerBeanClass("org\\jecat\\framework\\verifier\\Same", 'same'); $aSingleton->registerBeanClass("org\\jecat\\framework\\verifier\\FileExt", 'extname'); $aSingleton->registerBeanClass("org\\jecat\\framework\\verifier\\FileSize", 'filesize'); $aSingleton->registerBeanClass("org\\jecat\\framework\\verifier\\ImageArea", 'imagearea'); $aSingleton->registerBeanClass("org\\jecat\\framework\\verifier\\ImageSize", 'imagesize'); $aSingleton->registerBeanClass("org\\jecat\\framework\\verifier\\NotEmpty", 'notempty'); $aSingleton->registerBeanClass("org\\jecat\\framework\\verifier\\Version", 'version'); $aSingleton->registerBeanClass("org\\jecat\\framework\\verifier\\Callback", 'callback'); // auth $aSingleton->registerBeanClass("org\\jecat\\framework\\auth\\Authorizer", 'authorizer'); $aSingleton->registerBeanClass("org\\jecat\\framework\\auth\\LoginedPermission", 'perm.logined'); $aSingleton->registerBeanClass("org\\jecat\\framework\\auth\\CallbackPermission", 'perm.callback'); $aSingleton->registerBeanClass("org\\jecat\\framework\\auth\\GroupPermission", 'perm.group'); // aop $aSingleton->registerBeanClass("org\\jecat\\framework\\lang\\aop\\Aspect", 'aspect'); self::setSingleton($aSingleton, __CLASS__); } return $aSingleton; }