19 declare(strict_types=1);
38 protected int $test_id,
39 protected int $obj_id,
51 $settings_introduction,
53 $settings_test_behaviour,
54 $settings_question_behaviour,
55 $settings_participant_functionality,
75 throw new \LogicException(
'TestId mismatch in ' . get_class($setting));
81 return $this->test_id;
86 $clone->test_id = $test_id;
87 $clone->settings_general = $clone->settings_general->withTestId($test_id);
88 $clone->settings_introduction = $clone->settings_introduction->withTestId($test_id);
89 $clone->settings_access = $clone->settings_access->withTestId($test_id);
90 $clone->settings_test_behaviour = $clone->settings_test_behaviour->withTestId($test_id);
91 $clone->settings_question_behaviour = $clone->settings_question_behaviour->withTestId($test_id);
92 $clone->settings_participant_functionality = $clone->settings_participant_functionality->withTestId($test_id);
93 $clone->settings_finishing = $clone->settings_finishing->withTestId($test_id);
94 $clone->settings_additional = $clone->settings_additional->withTestId($test_id);
100 return $this->obj_id;
105 $clone = clone $this;
106 $clone->obj_id = $obj_id;
117 $clone = clone $this;
118 $clone->settings_general = $settings;
129 $clone = clone $this;
130 $clone->settings_introduction = $settings;
141 $clone = clone $this;
142 $clone->settings_access = $settings;
153 $clone = clone $this;
154 $clone->settings_test_behaviour = $settings;
165 $clone = clone $this;
166 $clone->settings_question_behaviour = $settings;
177 $clone = clone $this;
178 $clone->settings_participant_functionality = $settings;
189 $clone = clone $this;
190 $clone->settings_finishing = $settings;
201 $clone = clone $this;
202 $clone->settings_additional = $settings;
209 return $this->settings_general->toLog($additional_info)
210 + $this->settings_introduction->toLog($additional_info)
211 + $this->settings_access->toLog($additional_info)
212 + $this->settings_test_behaviour->toLog($additional_info)
213 + $this->settings_question_behaviour->toLog($additional_info)
214 + $this->settings_participant_functionality->toLog($additional_info)
215 + $this->settings_finishing->toLog($additional_info)
216 + $this->settings_additional->toLog($additional_info);
SettingsFinishing $settings_finishing
withParticipantFunctionalitySettings(SettingsParticipantFunctionality $settings)
getTestBehaviourSettings()
SettingsGeneral $settings_general
SettingsQuestionBehaviour $settings_question_behaviour
withGeneralSettings(SettingsGeneral $settings)
SettingsTestBehaviour $settings_test_behaviour
SettingsAdditional $settings_additional
SettingsIntroduction $settings_introduction
withAdditionalSettings(SettingsAdditional $settings)
SettingsParticipantFunctionality $settings_participant_functionality
getArrayForLog(AdditionalInformationGenerator $additional_info)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
withTestBehaviourSettings(SettingsTestBehaviour $settings)
withFinishingSettings(SettingsFinishing $settings)
getParticipantFunctionalitySettings()
withQuestionBehaviourSettings(SettingsQuestionBehaviour $settings)
getIntroductionSettings()
throwOnDifferentTestId(TestSettings $setting)
getQuestionBehaviourSettings()
withAccessSettings(SettingsAccess $settings)
withIntroductionSettings(SettingsIntroduction $settings)
__construct(protected int $test_id, protected int $obj_id, SettingsGeneral $settings_general, SettingsIntroduction $settings_introduction, SettingsAccess $settings_access, SettingsTestBehaviour $settings_test_behaviour, SettingsQuestionBehaviour $settings_question_behaviour, SettingsParticipantFunctionality $settings_participant_functionality, SettingsFinishing $settings_finishing, SettingsAdditional $settings_additional)
SettingsAccess $settings_access