public function parse(array $questionJson) { // TODO: Some validation to check all the required keys exists // TODO: Type and data should definitely exists // Map the `data` attribute $questionTypeClassName = 'LearnosityQti\\Entities\\QuestionTypes\\' . $questionJson['data']['type']; /** @var BaseQuestionType $questionType */ $questionType = EntityBuilder::build($questionTypeClassName, $questionJson['data']); return new Question($questionJson['data']['type'], $questionJson['reference'], $questionType); }
/** * @return item * @throws \LearnosityQti\Exceptions\MappingException */ public function parse(array $itemJson) { $item = EntityBuilder::build('LearnosityQti\\Entities\\Item\\item', $itemJson); return $item; }