Автор: Elliot Levin (elliot@aanet.com.au)
Наследование: extends Storm\Core\Mapping\IPropertyMapping
Пример #1
0
 private function AddIdentityPrimaryKeyMapping(IDataPropertyColumnMapping $PropertyMapping)
 {
     //Infer primary key table
     $AllColumns = array_merge($PropertyMapping->GetPersistColumns(), $PropertyMapping->GetReviveColumns());
     if ($this->PrimaryKeyTable === null) {
         $this->PrimaryKeyTable = reset($AllColumns)->GetTable();
     }
     foreach ($AllColumns as $Column) {
         if (!$Column->GetTable()->Is($this->PrimaryKeyTable)) {
             throw new MappingException('Identity properties of %s cannot map across multiple tables: %s.%s does not belong to %s', $this->EntityType, $Column->GetTable()->GetName(), $Column->GetName(), $this->PrimaryKeyTable->GetName());
         }
     }
     $this->IdentityPropertyPrimaryKeyMappings[] = $PropertyMapping;
 }