$options = getopt('p:h'); if (isset($options['h'])) { print USAGE; exit(0); } require_once realpath(dirname(dirname(dirname(__DIR__)))) . '/dev/tests/static/framework/bootstrap.php'; require_once realpath(dirname(dirname(dirname(__DIR__)))) . '/lib/Zend/Json.php'; $magentoBaseDir = dirname(__DIR__) . '/../../'; if (isset($options['p'])) { $magentoBaseDir = $options['p']; } $utilityFiles = new Utility_Files($magentoBaseDir); $map = array(); $compositeModules = getFilesCombinedArray(dirname(__FILE__) . '/aliases_map', '/^composite_modules_.*\\.php$/'); // PHP code foreach ($utilityFiles->getPhpFiles(true, true, true, false) as $file) { $content = file_get_contents($file); $classes = Legacy_ClassesTest::collectPhpCodeClasses($content); if ($classes) { $factoryNames = array_filter($classes, 'isFactoryName'); foreach ($factoryNames as $factoryName) { list($module, $name) = getModuleName($factoryName, $compositeModules); $patterns = array('::getModel(\'%s\'' => 'Model', '::getSingleton(\'%s\'' => 'Model', '::getResourceModel(\'%s\'' => 'Model_Resource', '::getResourceSingleton(\'%s\'' => 'Model_Resource', 'addBlock(\'%s\'' => 'Block', 'createBlock(\'%s\'' => 'Block', 'getBlockClassName(\'%s\'' => 'Block', 'getBlockSingleton(\'%s\'' => 'Block'); foreach ($patterns as $pattern => $classType) { if (isPatternExist($content, $pattern, $factoryName)) { if (!isset($map[$classType])) { $map[$classType] = array(); } $map[$classType][$factoryName] = getClassName($module, $classType, $name); } }