public function hydrate($data, $entity)
{
$key = $this->mapping['fieldname'];
$vals = array_filter(explode(',', $data[$key]));
$values = [];
foreach ($vals as $fieldKey) {
$split = explode('_', $fieldKey);
$values[$split[0]][$split[1]][] = $split[2];
}
$collection = new RepeatingFieldCollection($this->em, $this->mapping);
$collection->setName($key);
if (isset($values[$key]) && count($values[$key])) {
foreach ($values[$key] as $group => $refs) {
$collection->addFromReferences($refs, $group);
}
}
$this->set($entity, $collection);
}