}
$subClasses = array();
try {
    KalturaTypeReflector::setClassInheritMapPath(KAutoloader::buildPath(kConf::get("cache_root_path"), "api_v3", "KalturaClassInheritMap.cache"));
    if (!KalturaTypeReflector::hasClassInheritMapCache()) {
        $config = new Zend_Config_Ini("../../config/testme.ini");
        $indexConfig = $config->get('testme');
        $include = $indexConfig->get("include");
        $exclude = $indexConfig->get("exclude");
        $excludePaths = $indexConfig->get("excludepaths");
        $additional = $indexConfig->get("additional");
        $clientGenerator = new DummyForDocsClientGenerator();
        $clientGenerator->setIncludeOrExcludeList($include, $exclude, $excludePaths);
        $clientGenerator->setAdditionalList($additional);
        $clientGenerator->load();
        $objects = $clientGenerator->getTypes();
        KalturaTypeReflector::setClassMap(array_keys($objects));
    }
    $subClassesNames = KalturaTypeReflector::getSubClasses($type);
    foreach ($subClassesNames as $subClassName) {
        $subClass = new KalturaPropertyInfo($subClassName);
        $subClasses[] = $subClass->toArray();
    }
} catch (Exception $ex) {
    KalturaLog::ERR("<------- api_v3 testme [{$type}]\n" . $ex->__toString() . " " . " -------");
}
//echo "<pre>";
//echo print_r($actionInfo);
echo json_encode($subClasses);
$bench_end = microtime(true);
KalturaLog::INFO("<------- api_v3 testme type [{$type}][" . ($bench_end - $bench_start) . "] -------");
Ejemplo n.º 2
0
    if (!KalturaTypeReflector::hasClassInheritMapCache()) {
        $config = new Zend_Config_Ini("../../config/testme.ini", null, array('allowModifications' => true));
        $config = KalturaPluginManager::mergeConfigs($config, 'testme', false);
        $indexConfig = $config->get('testmedoc');
        $include = $indexConfig->get("include");
        $exclude = $indexConfig->get("exclude");
        $excludePaths = $indexConfig->get("excludepaths");
        $additional = $indexConfig->get("additional");
        $clientGenerator = new DummyForDocsClientGenerator();
        $clientGenerator->setIncludeOrExcludeList($include, $exclude, $excludePaths);
        $clientGenerator->setAdditionalList($additional);
        $clientGenerator->load();
        $objects = $clientGenerator->getTypes();
        KalturaTypeReflector::setClassMap(array_keys($objects));
    }
    $directChildren = array();
    foreach (KalturaTypeReflector::getSubClasses($object) as $subClass) {
        if (get_parent_class($subClass) != $object) {
            continue;
        }
        $directChildren[] = "<a href=\"?object={$subClass}\">{$subClass}</a>";
    }
    sort($directChildren);
    if (count($directChildren) != 0) {
        echo "<tr><td colspan=\"3\">";
        echo "Sub classes: ";
        echo implode(", ", $directChildren);
        echo '</td></tr>';
    }
}
echo "</table>";