protected function generatePhpcrSerializer(OutputInterface $output, BundleMetadata $bundleMetadata) { $names = $bundleMetadata->getPhpcrMetadata()->getDocumentNames(); if (is_array($names) && count($names) > 0) { $output->writeln(' - Generating PHPCR serializer files'); foreach ($names as $name) { $destFile = sprintf('%s/Document.%s.xml', $bundleMetadata->getPhpcrMetadata()->getExtendedSerializerDirectory(), $name); $this->writeSerializerFile($output, $bundleMetadata, $this->documentSerializerTemplate, $destFile, $name); } } }
/** * @param OutputInterface $output * @param BundleMetadata $bundleMetadata */ public function generateDocumentRepositoryFiles(OutputInterface $output, BundleMetadata $bundleMetadata) { $output->writeln(' - Generating Document repository files'); $names = $bundleMetadata->getPhpcrMetadata()->getDocumentNames(); foreach ($names as $name) { $dest_file = sprintf('%s/%sRepository.php', $bundleMetadata->getPhpcrMetadata()->getExtendedDocumentDirectory(), $name); $src_file = sprintf('%s/Base%sRepository.php', $bundleMetadata->getPhpcrMetadata()->getDocumentDirectory(), $name); if (!is_file($src_file)) { $output->writeln(sprintf(' ! <info>%sRepository</info>', $name)); continue; } if (is_file($dest_file)) { $output->writeln(sprintf(' ~ <info>%sRepository</info>', $name)); } else { $output->writeln(sprintf(' + <info>%sRepository</info>', $name)); $string = Mustache::replace($this->getDocumentRepositoryTemplate(), array('extended_namespace' => $bundleMetadata->getExtendedNamespace(), 'name' => $name, 'namespace' => $bundleMetadata->getNamespace())); file_put_contents($dest_file, $string); } } }