entityMissingAssignedId() public static method

public static entityMissingAssignedId ( $entity )
Beispiel #1
0
 /**
  * Returns the identifier assigned to the given entity.
  *
  * @param object $xmlEntity
  * @return mixed
  * @override
  */
 public function generate(XmlEntityManager $xem, $xmlEntity)
 {
     $class = $xem->getClassMetadata(get_class($xmlEntity));
     $idField = $class->identifier;
     $value = $class->reflFields[$idField]->getValue($xmlEntity);
     if (isset($value)) {
         if (is_object($value)) {
             // NOTE: Single Columns as associated identifiers only allowed - this constraint it is enforced.
             $identifier = current($xem->getUnitOfWork()->getEntityIdentifier($value));
         } else {
             $identifier = $value;
         }
     } else {
         throw OXMException::entityMissingAssignedId($xmlEntity);
     }
     return $identifier;
 }