classIsNotAValidXmlEntityOrXmlMappedSuperClass() публичный статический Метод

public static classIsNotAValidXmlEntityOrXmlMappedSuperClass ( $className )
Пример #1
0
 /**
  * Loads the metadata for the specified class into the provided container.
  *
  * @param string $className
  * @param ClassMetadataInfo $metadata
  */
 public function loadMetadataForClass($className, ClassMetadataInfo $metadata)
 {
     foreach ($this->drivers as $namespace => $driver) {
         if (strpos($className, $namespace) === 0) {
             $driver->loadMetadataForClass($className, $metadata);
             return;
         }
     }
     throw MappingException::classIsNotAValidXmlEntityOrXmlMappedSuperClass($className);
 }
Пример #2
0
 /**
  * {@inheritdoc}
  */
 public function loadMetadataForClass($className, ClassMetadataInfo $metadata)
 {
     $xmlRoot = $this->getElement($className);
     if ($xmlRoot->getName() == 'entity') {
         if (isset($xmlRoot['root']) && $xmlRoot['root'] == "true") {
             $metadata->isRoot = true;
             $metadata->setCustomRepositoryClass(isset($xmlRoot['repository-class']) ? (string) $xmlRoot['repository-class'] : null);
         }
     } else {
         if ($xmlRoot->getName() == 'mapped-superclass') {
             $metadata->isMappedSuperclass = true;
         } else {
             throw MappingException::classIsNotAValidXmlEntityOrXmlMappedSuperClass($className);
         }
     }
     $metadata->setName($className);
     // Evalute xml-name attribute
     if (isset($xmlRoot['xml-name'])) {
         $metadata->setXmlName((string) $xmlRoot['xml-name']);
     } else {
         $metadata->setXmlName(Inflector::xmlize($className));
     }
     // Evaluate change-tracking-policy attribute
     if (isset($xmlRoot['change-tracking-policy'])) {
         $metadata->setChangeTrackingPolicy(constant('Doctrine\\OXM\\Mapping\\ClassMetadata::CHANGETRACKING_' . strtoupper((string) $xmlRoot['change-tracking-policy'])));
     }
     // Evaluate <namespaces...>
     if (isset($xmlRoot->namespaces)) {
         $namespaces = array();
         foreach ($xmlRoot->namespaces->namespace as $namespace) {
             $namespaces[] = array('url' => (string) $namespace['url'], 'prefix' => (string) $namespace['prefix']);
         }
         $metadata->setXmlNamespaces($namespaces);
     }
     // Evaluate <field ...> mappings
     if (isset($xmlRoot->field)) {
         foreach ($xmlRoot->field as $fieldMapping) {
             $mapping = array('fieldName' => (string) $fieldMapping['name'], 'type' => (string) $fieldMapping['type'], 'node' => constant('Doctrine\\OXM\\Mapping\\ClassMetadata::XML_' . strtoupper((string) $fieldMapping['node'])));
             if (isset($fieldMapping['xml-name'])) {
                 $mapping['name'] = (string) $fieldMapping['xml-name'];
             }
             if (isset($fieldMapping['identifier'])) {
                 $mapping['id'] = (bool) $fieldMapping['identifier'];
             }
             if (isset($fieldMapping['direct'])) {
                 $mapping['direct'] = (bool) $fieldMapping['direct'];
             }
             if (isset($fieldMapping['nulable'])) {
                 $mapping['nullable'] = (bool) $fieldMapping['nullable'];
             }
             if (isset($fieldMapping['required'])) {
                 $mapping['required'] = (bool) $fieldMapping['required'];
             }
             if (isset($fieldMapping['collection'])) {
                 $mapping['collection'] = (bool) $fieldMapping['collection'];
             }
             if (isset($fieldMapping['get-method'])) {
                 $mapping['getMethod'] = (string) $fieldMapping['get-method'];
             }
             if (isset($fieldMapping['set-method'])) {
                 $mapping['setMethod'] = (string) $fieldMapping['set-method'];
             }
             if (isset($fieldMapping['prefix'])) {
                 $mapping['prefix'] = (string) $fieldMapping['prefix'];
             }
             if (isset($fieldMapping['wrapper'])) {
                 $mapping['wrapper'] = (string) $fieldMapping['wrapper'];
             }
             $metadata->mapField($mapping);
         }
     }
     // Evaluate <lifecycle-callbacks...>
     if (isset($xmlRoot->{'lifecycle-callbacks'})) {
         foreach ($xmlRoot->{'lifecycle-callbacks'}->{'lifecycle-callback'} as $lifecycleCallback) {
             $metadata->addLifecycleCallback((string) $lifecycleCallback['method'], constant('Doctrine\\OXM\\Events::' . (string) $lifecycleCallback['type']));
         }
     }
 }