public function createCompany(array $data)
 {
     if (empty($data)) {
         return \Exception('data array cannot be empty');
     }
     $em = $this->em;
     $owner = new Owner($data['owner']);
     unset($data['owner']);
     $company = new Company($data);
     $owner->setCompany($company);
     $company->setOwner($owner);
     $em->persist($company);
     $em->flush();
     return $company;
 }
 /**
  * {@inheritDoc}
  */
 public function getArrayCopy()
 {
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'getArrayCopy', array());
     return parent::getArrayCopy();
 }