diff --git a/token-checker-server/src/main/java/de/ozgcloud/token/saml/SamlSettingsRegistry.java b/token-checker-server/src/main/java/de/ozgcloud/token/saml/SamlServiceRegistry.java similarity index 55% rename from token-checker-server/src/main/java/de/ozgcloud/token/saml/SamlSettingsRegistry.java rename to token-checker-server/src/main/java/de/ozgcloud/token/saml/SamlServiceRegistry.java index d5ff6700fa66c80bdcec33ac0dada75a2b9e1b35..3bf3defd0ed90414022aa3b3b1071c1b8d510a0d 100644 --- a/token-checker-server/src/main/java/de/ozgcloud/token/saml/SamlSettingsRegistry.java +++ b/token-checker-server/src/main/java/de/ozgcloud/token/saml/SamlServiceRegistry.java @@ -20,27 +20,19 @@ package de.ozgcloud.token.saml; -import java.util.HashMap; import java.util.Map; +import java.util.Optional; -import org.springframework.stereotype.Service; -import org.springframework.util.Assert; +import lombok.Builder; +import lombok.Singular; -@Service -public class SamlSettingsRegistry { - private final Map<String, SamlSetting> samlSettings = new HashMap<>(); +@Builder +public class SamlServiceRegistry { - public void addSetting(String idpEntityId, SamlSetting samlSetting) { - samlSettings.put(idpEntityId, samlSetting); - } - - public SamlSetting getSetting(String idpEntityId) { - var samlSetting = samlSettings.get(idpEntityId); - - Assert.state(samlSetting != null, - "Saml2 Configuration for " + idpEntityId - + " is empty. SamlSettingsRegistry not proper initialized or no SAML2 Identity Provider configured"); + @Singular + private final Map<String, SamlTokenService> samlServices; - return samlSetting; + public Optional<SamlTokenService> getSetting(String idpEntityId) { + return Optional.ofNullable(samlServices.get(idpEntityId)); } }