package com.airlock.iam.authentication.domain.service.secretquestions;

import com.airlock.iam.common.application.configuration.secretquestion.GeneralSecretQuestionsSettings;
import com.airlock.iam.common.domain.model.token.secretquestions.SecretQuestion;
import com.airlock.iam.common.domain.model.token.secretquestions.SecretQuestionAnswer;
import jakarta.inject.Inject;

public class SecretQuestionHashService {
   private final GeneralSecretQuestionsSettings settings;

   @Inject
   public SecretQuestionHashService(GeneralSecretQuestionsSettings settings) {
      this.settings = settings;
   }

   public SecretQuestion convertToSecretQuestion(SecretQuestionAnswer answer) {
      return answer.toSecretQuestion().normalization(this.settings.getNormalization()).build().updateAnswerHash(answer, this.settings.getHashFunctionPlugin());
   }
}
