public function getFullClassPaths($className) { $classPaths = array(); if (($pos = strpos($className, INNER_PHP_CLASS_SEPARATOR)) !== false) { if (GWTPHPContext::getInstance()->getGwtCompatibilityVersion() < GWTPHPContext::GWT_VERSION_1_5_0) { $className = substr($className, 0, $pos); } else { // since 1.5 $className = JavaSignatureUtil::innecJavaClassNameToPHPClassName($className); } } $classNameToPath = str_replace('.', DIRECTORY_SEPARATOR, $className) . parent::getFilePostfix(); foreach (parent::getClassPaths() as $rootPath) { $classPaths[] = $rootPath . DIRECTORY_SEPARATOR . $classNameToPath; } // $r = parent::getRootPath().'/'; // $d = str_replace('.', DIRECTORY_SEPARATOR ,$className); // $p = parent::getFilePostfix(); // $cmd = $r.$d.$p; return $classPaths; //return $this->rootPath.str_replace('.', DIRECTORY_SEPARATOR ,$className).parent::getFilePostfix(); }
/** * * @param string $className * @return MappedClass * @throws ClassMapNotFoundException * */ private function findMappedClass($className, $cachable = true) { $this->logger->debug("Find mapped class: " . $className); $classMap = $this->getClassMapLoader()->loadClassMap($className); if (null !== $classMap && is_array($classMap)) { $searchedClassName = JavaSignatureUtil::innecJavaClassNameToPHPClassName($className); if (isset($classMap['className']) && $classMap['className'] == $className) { return $this->classMapToMappedClass($classMap, $cachable); } else { foreach ($classMap as $innerClassMap) { if (isset($innerClassMap['className']) && $innerClassMap['className'] == $className) { return $this->classMapToMappedClass($innerClassMap, $cachable); } } } } // if ($classMap['className'] == $className) { }