/** * @param Type\Collection\Object $objectType * @param object $object * @param array $values * * @return Deserialize */ private function processDeserializeTypeCollectionObject(Type\Collection\Object $objectType, $object, array $values) { $objects = []; foreach ($values as $key => $objectFromValue) { $objects[$key] = $this->setObjectForClass($objectType->className(), $objectFromValue); } $object->{$objectType->setter()}($objects); return $this; }
/** * @param Type\Collection\Object|Type\Collection\IdentifiedObject $objectType * @param object $object * @param mixed[] $data * @param string $attribute * * @return mixed[] */ private function processSerializeTypeCollectionObject($objectType, $object, array $data, string $attribute) : array { $subData = $object->{$objectType->getter()}(); if ($this->checkNullForAttribute($subData, $attribute) === true) { return $data; } foreach ($subData as $key => $subObject) { $data = $this->setArrayAndCheckNullWithKey($data, $subObject, $key, $attribute); } return $data; }