/** * Generates namespace name for given descriptor * * @param DescriptorInterface $descriptor Descriptor * * @return string */ private function _createNamespaceName(DescriptorInterface $descriptor) { $namespace = array(); $containing = $descriptor->getContaining(); while (!is_null($containing)) { $namespace[] = self::createTypeName($containing->getName()); $containing = $containing->getContaining(); } $package = $descriptor->getFile()->getPackage(); if (!empty($package)) { $namespace[] = $this->createPackageName($package); } $namespace = array_reverse($namespace); $name = implode($this->getNamespaceSeparator(), $namespace); return $name; }
/** * Generates class name for given descriptor * * @param DescriptorInterface $descriptor Descriptor * * @return string */ private function _createClassName(DescriptorInterface $descriptor) { $namespace = array(); $containing = $descriptor->getContaining(); while (!is_null($containing)) { $namespace[] = self::createTypeName($containing->getName()); $containing = $containing->getContaining(); } $package = $descriptor->getFile()->getPackage(); if (!empty($package)) { $namespace[] = self::createPackageName($package); } $namespace = array_reverse($namespace); $prefix = implode(self::NAMESPACE_SEPARATOR, $namespace); $name = self::createTypeName($descriptor->getName()); if (!empty($prefix)) { $name = $prefix . self::NAMESPACE_SEPARATOR . $name; } return $name; }