コード例 #1
0
 /**
  * @param $contactHandle
  * @return Contact proxy object
  */
 public function build($contactHandle)
 {
     $factory = new LazyLoadingValueHolderFactory();
     $initializer = function (&$wrappedObject, LazyLoadingInterface $proxy, $method, array $parameters, &$initializer) use($contactHandle) {
         $initializer = null;
         // disable further initialization
         $result = $this->contactAPI->get($contactHandle);
         $wrappedObject = (new Contact($contactHandle))->setId($result['id'])->setCompany($result['orgname'])->setType($result['type'])->setVatNumber($result['vat_number'])->setFirstName($result['given'])->setLastName($result['family'])->setStreet($result['streetaddr'])->setZip($result['zip'])->setCity($result['city'])->setCountry($result['country'])->setEmail($result['email'])->setPhone($result['phone'])->setMobile($result['mobile'])->setFax($result['fax'])->setLanguage($result['lang'])->setHideAddress($result['data_obfuscated'])->setHideEmail($result['mail_obfuscated']);
         return true;
         // confirm that initialization occurred correctly
     };
     return $factory->createProxy('EdsiTech\\GandiBundle\\Model\\Contact', $initializer);
 }
コード例 #2
0
 /**
  * Commit a Contact changes
  *
  * @param Contact $contact
  * @return int number of changes
  */
 public function persist(Contact $contact)
 {
     return $this->api->persist($contact);
 }