/** * Sets value for element * * @param ElementInterface $element */ protected function setDefaultElementValue(ElementInterface $element) { $propertyPath = $element->getPropertyPath(); if ($propertyPath instanceof PropertyPathInterface) { if ($this->propertyAccessor->isReadable($this->data, $propertyPath)) { $value = $this->propertyAccessor->getValue($this->data, $propertyPath); if (0 !== $value && empty($value)) { $value = $element->getDefaultValue(); } if ($element->hasTransformer() && is_object($value)) { $transformer = $element->getTransformer(); $value = $transformer->transform($value); } $element->setValue($value); } } }