package com.airlock.iam.common.application.configuration.mtan;

import com.airlock.iam.common.domain.service.sms.DefaultSmsValidator;
import com.airlock.iam.common.domain.service.sms.MtanSmsFactory;
import com.airlock.iam.common.domain.service.sms.SmsService;

public final class MtanSettingsFactory {
   public static MtanSmsFactory.MtanSmsFactorySettings createMtanSmsFactorySettings(BasicMtanSettings settings) {
      return MtanSmsFactory.MtanSmsFactorySettings.builder()
         .originatorName(settings.getOriginator())
         .flashMessageEnabled(settings.isUseFlashMessages())
         .defaultCountryCode(settings.getDefaultCountryCode())
         .build();
   }

   public static SmsService.SmsServiceSettings createSmsServiceSettings(BasicMtanSettings settings) {
      return SmsService.SmsServiceSettings.builder()
         .smsGateway(settings.getSmsGateway())
         .smsValidator(new DefaultSmsValidator(settings.getSmsGateway()))
         .configuredOriginator(settings.getOriginator())
         .build();
   }

   private MtanSettingsFactory() {
   }
}
