public function saveInto(DataObjectInterface $record)
{
$child = clone $this->child;
$child->setName($this->name);
if (!$this->child instanceof ReadonlyField) {
$child->saveInto($record);
}
$public = $record->getPublicFields();
if ($this->checkbox->dataValue()) {
$public = array_merge($public, array($this->name));
} else {
$public = array_diff($public, array($this->name));
}
$record->setPublicFields($public);
}