package com.airlock.iam.techclientreg.application.service.oauth2.clientid;

import com.airlock.iam.base.api.domain.model.plugin.LogicForConfig;
import com.airlock.iam.oauth2.api.domain.model.OAuth2ClientId;
import com.airlock.iam.techclientreg.api.domain.model.oauth2.OAuth2ClientRegistrationRequest;
import com.airlock.iam.techclientreg.application.configuration.registration.clientid.UuidClientIdConfig;
import jakarta.inject.Inject;
import java.util.Optional;
import java.util.UUID;

@LogicForConfig(UuidClientIdConfig.class)
public class UuidClientIdLogic implements DcrClientIdGenerator {
   @Override
   public Optional<OAuth2ClientId> generateClientId(OAuth2ClientRegistrationRequest request) {
      return Optional.of(OAuth2ClientId.oAuth2ClientId(UUID.randomUUID().toString()));
   }
}
