getFeatureFlagFormPropertyMapper()->getExcludedProperties(); } private function getFeatureFlagFormPropertyMapper(): FeatureFlagFormPropertyMapper { return $this->getServiceLocator()->get(FeatureFlagFormPropertyMapper::class); } /** * (non-PHPdoc) * * @see \tao_actions_RdfController::getClassService() * @security("hide"); */ public function getClassService() { return $this->getServiceLocator()->get(RdfLtiProviderRepository::class); } protected function getExtraValidationRules(): array { return $this->getValidationFactory()->createFormValidators($this->getLtiVersion()); } private function getLtiVersion(): string { $body = $this->getPsrRequest()->getParsedBody(); $rawLtiVersion = trim($body[tao_helpers_Uri::encode(RdfLtiProviderRepository::LTI_VERSION)] ?? ''); $ltiVersion = empty($rawLtiVersion) ? RdfLtiProviderRepository::DEFAULT_LTI_VERSION : tao_helpers_Uri::decode($rawLtiVersion); return $this->getConfigurationMapper()->map($ltiVersion); } private function getValidationFactory(): ValidatorsFactory { /** @noinspection PhpIncompatibleReturnTypeInspection */ return $this->getServiceLocator()->get(ValidatorsFactory::class); } private function getConfigurationMapper(): LtiProviderFieldsMapper { /** @noinspection PhpIncompatibleReturnTypeInspection */ return $this->getServiceLocator()->get(LtiProviderFieldsMapper::class); } }