/** * {@inheritdoc} */ public function hydrate(array $data) { // TODO: make a factory $experience = new Experience(); $experience->setId(isset($data['id']) ? $data['id'] : null); $experience->setType(isset($data['type']) ? $data['type'] : null); $experience->setStartDate(isset($data['startDate']) ? $data['startDate'] : null); $experience->setEndDate(isset($data['endDate']) ? $data['endDate'] : null); if (isset($data['organization'])) { $experience->setOrganization($this->organizationHydrator->hydrate($data['organization'])); } if (isset($data['missions'])) { foreach ($data['missions'] as $missionData) { $experience->addMission($this->missionHydrator->hydrate($missionData)); } } return $experience; }